1. 程式人生 > >搭建vsftp服務器生產環境配置

搭建vsftp服務器生產環境配置

Linux FTP VSFTPD WINSCP

生產環境:
操作系統:CentOS release 6.9 (Final)
軟件:vsftpd-2.2.2-24.el6.x86_64
實戰任務:給定賬號,讓開發商上傳站群代碼到服務器的指定目錄,可以讀寫;
操作過程如下:
一、配置防火墻,開啟FTP服務器需要的端口
[root@sky9890 /]# vi /etc/sysconfig/iptables #添加端口號
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10060:10090 -j ACCEPT
:wq! #保存退出
二、關閉SELINUX
[root@sky9890 /]#vi /etc/selinux/config
#SELINUX=enforcing #註釋掉
#SELINUXTYPE=targeted #註釋掉
SELINUX=disabled #增加
:wq! #保存退出
[root@sky9890 /]#setenforce 0 #使配置立即生效
三、安裝vsftpd
[root@sky9890 /]#yum install -y vsftpd #安裝vsftpd
[root@sky9890 /]#yum install -y psmisc net-tools systemd-devel libdb-devel perl-DBI #安裝vsftpd虛擬用戶配置依賴包
[root@sky9890 /]# service vsftpd restart #啟動
[root@sky9890 /]# chkconfig vsftpd on #設置vsftpd開機啟動
四、配置vsftp服務器
[root@sky9890 /]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf-bak #備份默認配置文件
sed -i "s/anonymous_enable=YES/anonymous_enable=NO/g" '/etc/vsftpd/vsftpd.conf'
sed -i "s/#anon_upload_enable=YES/anon_upload_enable=NO/g" '/etc/vsftpd/vsftpd.conf'
sed -i "s/#anon_mkdir_write_enable=YES/anon_mkdir_write_enable=YES/g" '/etc/vsftpd/vsftpd.conf'
sed -i "s/#chown_uploads=YES/chown_uploads=NO/g" '/etc/vsftpd/vsftpd.conf'
sed -i "s/#async_abor_enable=YES/async_abor_enable=YES/g" '/etc/vsftpd/vsftpd.conf'
sed -i "s/#ascii_upload_enable=YES/ascii_upload_enable=YES/g" '/etc/vsftpd/vsftpd.conf'
sed -i "s/#ascii_download_enable=YES/ascii_download_enable=YES/g" '/etc/vsftpd/vsftpd.conf'
sed -i "s/#ftpd_banner=Welcome to blah FTP service./ftpd_banner=Welcome to FTP service./g" '/etc/vsftpd/vsftpd.conf'
echo -e "use_localtime=YES\nlisten_port=21\nchroot_local_user=YES\nidle_session_timeout=300
\ndata_connection_timeout=1\nguest_enable=YES\nguest_username=vsftpd
\nuser_config_dir=/etc/vsftpd/vconf\nvirtual_use_local_privs=YES
\npasv_min_port=10060\npasv_max_port=10090
\naccept_timeout=5\nconnect_timeout=1" >> /etc/vsftpd/vsftpd.conf
五、生成虛擬用戶數據文件
[root@sky9890 ~]# db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
[rootsky9890 ~]# chmod 600 /etc/vsftpd/virtusers.db #設定PAM驗證文件,並指定對虛擬用戶數據庫文件進行讀取
六、在/etc/pam.d/vsftpd的文件頭部加入以下信息(註意:如果在後面加入無效)
[rootsky9890 ~]# vi /etc/pam.d/vsftpd
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
七、新建系統用戶vsftpd,用戶目錄為/home/wwwroot, 用戶登錄終端設為/bin/false(即使之不能登錄系統)
[root@sky9890 ~]# useradd vsftpd -d /home/wwwroot -s /bin/false
[root@sky9890 ~]# chown vsftpd:vsftpd /home/wwwroot -R
八、建立登錄用戶
[root@sky9890 /]#useradd gx
[root@sky9890 /]#passwd gx
[root@sky9890 /]#vim /etc/passwd
gx:x:503:506::/home/gx:/sbin/nologin #禁止遠程登錄
[root@sky9890 ~]# mkdir -p /home/wwwroot/ #遠程上傳數據存放的目錄
九、最後重啟vsftpd服務器
[root@sky9890 ~]# service vsftpd restart
十、建議使用的FTP工具:WinSCP、filezilla




搭建vsftp服務器生產環境配置