Linux 搭建FTP服務器

介紹

本章主要介紹在Linux中搭建FTP服務器的過程,須要掌握的要點是配置文件的合理配置。linux

 

 

知識點vim

  • 在linux中使用的FTP是vsftp
  • FTP能夠有三種登入方式分別是:
  1. 匿名登陸方式:不須要用戶密碼
  2. 本地用戶登入:使用本地用戶和密碼登入
  3. 虛擬用戶方式:也是使用用戶和密碼登入,可是該用戶不是linux中建立的用戶

 

安裝FTP安全

使用YUM安裝服務器

yum -y install vsftpd

 

文件配置session

安裝完以後在/etc/vsftpd/路徑下會存在三個配置文件。併發

vsftpd.conf: 主配置文件app

ftpusers: 指定哪些用戶不能訪問FTP服務器,這裏的用戶包括root在內的一些重要用戶。tcp

user_list: 指定的用戶是否能夠訪問ftp服務器,經過vsftpd.conf文件中的userlist_deny的配置來決定配置中的用戶是否能夠訪問,userlist_enable=YES ,userlist_deny=YES ,userlist_file=/etc/vsftpd/user_list 這三個配置容許文件中的用戶訪問FTP。測試

 

查看主配置文件的默認配置spa

cat /etc/vsftpd/vsftpd.conf |grep -v '^#';

anonymous_enable=YES #容許匿名用戶

local_enable=YES #容許使用本地用戶帳號登錄

write_enable=YES #容許ftp用戶寫數據

connect_from_port_20=YES #經過20端口傳輸數據

anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES

pam_service_name=vsftpd
tcp_wrappers=YES
chroot_local_user=yes

 

其它的一些參數說明包括:

ftpd_banner=welcome to ftp service :設置鏈接服務器後的歡迎信息

idle_session_timeout=60 :限制遠程的客戶機鏈接後,所創建的控制鏈接,在多長時間沒有作任何的操做就會中斷(秒)

data_connection_timeout=120 :設置客戶機在進行數據傳輸時,設置空閒的數據中斷時間

accept_timeout=60 設置在多長時間後自動創建鏈接

connect_timeout=60 設置數據鏈接的最大激活時間,多長時間斷開,爲別人所使用;

max_clients=200 指明服務器總的客戶併發鏈接數爲200

max_per_ip=3 指明每一個客戶機的最大鏈接數爲3

local_max_rate=50000(50kbytes/sec)  本地用戶最大傳輸速率限制

anon_max_rate=30000匿名用戶的最大傳輸速率限制

pasv_min_port=端口

pasv-max-prot=端口號 定義最大與最小端口,爲0表示任意端口;爲客戶端鏈接指明端口;

listen_address=IP地址 設置ftp服務來監聽的地址,客戶端能夠用哪一個地址來鏈接;

listen_port=端口號 設置FTP工做的端口號,默認的爲21

local_root=path 不管哪一個用戶都能登陸的用戶,定義登陸賬號的主目錄, 若沒有指定,則每個用戶則進入到我的用戶主目錄;

chroot_local_user=yes/no 是否鎖定本地系統賬號用戶主目錄(全部);鎖定後,用戶只能訪問用戶的主目錄/home/user;
chroot_list_enable
=yes/no 啓用不鎖定用戶在主目錄的名單 chroot_list_file=/etc/vsftpd/chroot_list指定列表文件 userlist_enable=YES/NO 是否加載用戶列表文件; userlist_deny=YES 表示上面所加載的用戶容許登陸; userlist_file=/etc/vsftpd/user_list 指定列表文件

 

建立FTP鏈接用戶

建立用戶ftpuser
useradd ftpusr

設置用戶只能ftp不能登入
usermod -s /sbin/nologin ftpuser

設置用戶密碼
passwd ftpusr

用戶的默認的家目錄在/home下,當前用戶就只能訪問家目錄。

修改用戶的家目錄位/mnt

usermod -d /mnt ftpuser

 

啓動FTP服務

service vsftpd start

測試

在/mnt目錄下建立一個測試文件

touch /mnt/test

鏈接ftp

 

 

解決普通的FTP沒法登入問題

linux默認是帶安全機制,使用普通的ftp 21端口沒法鏈接到ftp服務器,使用sftp就能夠。這個時候須要關閉selinux,修改配置文件須要重啓服務器。

vim /etc/sysconfig/selinux

改爲selinux=disabled

 

不重啓服務器的方法:

setenforce 0

 

setenforce 1 :設置SELinux 成爲enforcing模式
setenforce 0 :設置SELinux 成爲permissive模式

 

查看SELinux狀態

/usr/sbin/sestatus -v

總結

 還有其餘的一些配置方法在這裏就暫時不列舉,有興趣的能夠去深刻研究一下。

 

 

備註:

    做者:pursuer.chen

    博客:http://www.cnblogs.com/chenmh

本站點全部隨筆都是原創,歡迎你們轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明連接。

《歡迎交流討論》

相關文章
相關標籤/搜索