一 安裝FTP 1 檢測是否已經安裝FTP 2 若沒有,則進行安裝 二 設置vsftpd開機啟動 三 配置FTP伺服器(開啟基於用戶的訪問控制) 1 配置文件的修改 2 修改selinux 若報錯,getsebool: SELinux is disabled。則 修改 SELINUX=1。 然後重啟 ...
一 安裝FTP
1 檢測是否已經安裝FTP
rpm -qa | grep vsftpd
2 若沒有,則進行安裝
yum install vsftpd
二 設置vsftpd開機啟動
chkconfig --level 35 vsftpd on
三 配置FTP伺服器(開啟基於用戶的訪問控制)
1 配置文件的修改
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO # 是否開啟匿名登錄 local_enable=YES # 是否允許本地用戶登錄 write_enable=YES # 是否允許上傳 local_umask=022 # 預設的umask碼 diremssage_enable=YES # 是否顯示目錄說明文件 xferlog_enable=YES # 是否記錄ftp傳輸過程 connect_from_prot_20=YES # 是否確定埠傳輸來自20 xferlog_ftd_format=YES # 是否使用標準的ftp xferlog模式 chroot_list_enable=YES # 是否將系統用戶限制在自己的home目錄下 chroot_list_file=/etc/vsftpd/chroot_list # 列表不受限制的用戶 listen=YES # 是否開啟監聽 pam_service_name=vsftpd # 服務名稱 userlist_enable=YES tcp_wrappers=YES
2 修改selinux
getsebool -a | grep ftp
若報錯,getsebool: SELinux is disabled。則
vim /etc/selinux/config
修改 SELINUX=1。
然後重啟LINUX,"shutdown -r now" 立刻重啟(root用戶使用)。
重新執行 "getsebool -a | grep ftp"。
修改selinux,允許用戶在家目錄寫入數據
setsebool -P allow_ftpd_anon_write off
setsebool -P ftp_home_dir on
四 創建虛擬用戶
1 創建一個用戶,然後修改用戶的登陸shell為nologin,讓用戶不能登陸系統,只能使用ftp之內的服務
useradd -d /home/www/test -g ftp -s /sbin/nologin test # 指定用戶 test 屬於組 ftp,只能訪問的目錄是 /home/www/test,不能登陸系統 passwd test # 設置該用戶的密碼
2 把用戶 test 添加到chroot_list中
vim /etc/vsftpd/chroot_list # 把 test 加入該文件
五 測試虛擬用戶
在瀏覽器的地址欄輸入 "ftp://你的ip",在彈出的對話框中輸入賬號、密碼,即可連接成功。
六 其他配置
打開配置文件 vsftpd.conf
max_client=100 # vsftpd最大支持鏈接數100個IP
max_per=5 # 每個IP能支持5個鏈接
local_max_rate=81920 # 限制傳輸速度
listen_address=某個IP # 綁定某個IP到vsftpd,只允許該IP訪問
xferlog_file=/var/log/vsftpd.log # 日誌存放位置