Centos vsftpd服務器搭建
時間:2016-07-18
1.最為簡單的vsftpd服務器搭建
1.安裝vsftpd
1.yum 安裝
yum install vsftpd
2.rpm文件安裝(如果沒有rpm文件,可以到http://rpmfind.net/網站下載)
rpm -ivh vsftpd-2.2.2-11.el6_4.1.x86_64.rpm
2.防火牆(centos 6.5 使用的是iptables防火牆)
1.開放21端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
2.開放20端口
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
3.開放20主動端口
iptables -A INPUT -m state --state NEW -p tcp --dport 20 -j ACCEPT
4.開放21主動端口
iptables -A INPUT -m state --state NEW -p tcp --dport 21 -j ACCEPT
5.寫入被動模式端口
echo pasv_min_port=30000 >> /etc/vsftpd/vsftpd.conf echo_pasv_max_port=31000 >> /etc/vsftpd/vsftpd.conf
(注意:min 和 max 可以隨意填寫,但要遵守如下規則
max > min && min > 1000 && max < 65536)
6.寫入被動端口
iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT
7.保存配置
/etc/init.d/iptables iptables save
8.重啟iptables防火牆
/etc/init.d/iptables iptables restart
3.賦予權限
chmod -R 755 /var/ftp
4.測試
成功!!!
2.ftp匿名服務器
1.配置
在/etc/vsftpd/vsftpd.conf(此為vsftpd的主配置文件) 下:
打開以下配置即可(刪除前面的#號,如果沒有,可以自行添加,默認配置文件最好不要注釋掉)
anonymous_enable=YES #允許匿名訪問 local_enable=YES #支持本地端實體用戶登錄 write_enable=YES #如果要允許用戶上傳 local_umask=022 #限制上傳文件的權限 anon_upload_enable=YES #允許上傳文件 anon_mkdir_write_enable=YES #允許建立文件夾 anon_other_write_enable=YES #對文件有讀寫操作權限,意味著可以刪除文件 xferlog_enable=YES #記錄日志 xferlog_file=/var/log/xferlog #日志位置 pam_service_name=vsftpd #支持PAM模塊的管理 tcp_wrappers=YES #支持TCP Wrappers 的防火牆機制
2.測試
能夠訪問,並且能夠下載但是不能上傳
3.selinux的配置
查看selinux:
getsebool -a | grep ftp
設置
setsebool -P allow_ftpd_anon_write=1 && setsebool -P allow_ftpd_full_access=1 &
命令執行比較慢,可以放入後台執行
4.測試
成功
3.實體用戶配置
1.配置
anonymous_enable=no #禁止匿名用戶訪問 local_enable=yes #支持實體用戶登錄 write_enable=yes #擁有寫權限 local_umask=077 #默認目錄權限是755 默認文件權限是644 dirmessage_enable=yes #顯示文件內容 connect_from_port_20=YES #主動連接 xferlog_std_format=YES #記錄日志 listen=YES #使用stand alone 方式啟動 pam_service_name=vsftpd #支持pam模塊 tcp_wrappers=yes #支持tcp防火牆 userlist_enable=yes #不允許/etc/vsftpd/user_list內的用戶登錄vsftpd
2.selinux的設置
setsebool -P ftp_home_dir=1
3.測試
成功!!!
4.ftp服務器安全
1.chroot
目錄:/etc/vsftpd/chroot_list
使用:
1.將需要限制的用戶名寫入即可,一排一個用戶名,最好通過 >> 來寫入
2.設置vsftpd.conf
chroot_list_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot
目的:
在文件內的用戶名登錄ftp之後,只能在用戶主目錄下
2.userlist
目錄:/etc/vsftpd/user_list
使用:
1.將需要限制的用戶名寫入即可,一排一個用戶名,最好通過 >> 來寫入
2.設置vsftpd.conf
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
如果 [ userlist_deny=NO ];那麼
此時文件內的用戶才能訪問ftp
另外 [ userlist_deny=YES ];那麼
此時文件內的用戶不能訪問ftp
目的:
想讓某人使用或者不使用ftp都可以
5.總結
1.ftp 使用的端口為20,21 其中 21 為通道端口,20為連接端口
2.防火牆與selinux開發規則即可
http://xxxxxx/Linuxjc/1142909.html TechArticle