Linux下使用vsftp搭建FTP服務器(附參數說明)
介紹
本章主要介紹在Linux中搭建FTP服務器的過程,需要掌握的要點是配置文件的合理配置。
知識點
在linux中使用的FTP是vsftp
FTP可以有三種登入方式分別是:
- 匿名登錄方式:不需要用戶密碼
- 本地用戶登入:使用本地用戶和密碼登入
- 虛擬用戶方式:也是使用用戶和密碼登入,但是該用戶不是linux中創(chuàng)建的用戶
安裝FTP
使用YUM安裝
yum -y install vsftpd
文件配置
安裝完之后在/etc/vsftpd/路徑下會存在三個配置文件。
vsftpd.conf: 主配置文件
ftpusers: 指定哪些用戶不能訪問FTP服務器,這里的用戶包括root在內的一些重要用戶。
user_list: 指定的用戶是否可以訪問ftp服務器,通過vsftpd.conf文件中的userlist_deny的配置來決定配置中的用戶是否可以訪問,userlist_enable=YES ,userlist_deny=YES ,userlist_file=/etc/vsftpd/user_list 這三個配置允許文件中的用戶訪問FTP。
查看主配置文件的默認配置
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=YESpam_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 指明服務器總的客戶并發(fā)連接數為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服務來監(jiān)聽的地址,客戶端可以用哪個地址來連接;
listen_port=端口號 設置FTP工作的端口號,默認的為21
local_root=path 無論哪個用戶都能登錄的用戶,定義登錄帳號的主目錄, 若沒有指定,則每一個用戶則進入到個人用戶主目錄;
chroot_local_user=yes/no 是否鎖定本地系統(tǒng)帳號用戶主目錄(所有);鎖定后,用戶只能訪問用戶的主目錄/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 指定列表文件
創(chuàng)建FTP連接用戶
創(chuàng)建用戶ftpuser
useradd ftpusr設置用戶只能ftp不能登入
usermod -s /sbin/nologin ftpuser設置用戶密碼
passwd ftpusr
用戶的默認的家目錄在/home下,當前用戶就只能訪問家目錄。
修改用戶的家目錄位/mnt
usermod -d /mnt ftpuser
啟動FTP服務
service vsftpd start
測試
在/mnt目錄下創(chuàng)建一個測試文件
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狀態(tài)
/usr/sbin/sestatus -v
總結
還有其他的一些配置方法在這里就暫時不列舉,有興趣的可以去深入研究一下。
版權聲明:本站文章來源標注為YINGSOO的內容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內容來源于網友推薦、互聯網收集整理而來,僅供學習參考,不代表本站立場,如有內容涉嫌侵權,請聯系alex-e#qq.com處理。