ftp安装部署
1、 下载安装包:yum –y install vsftpd
安装关于虚拟用户的依赖:yum install -y psmisc net-tools systemd-devel libdb-devel perl-DBI
2、 建立系统用户vsftpd
Useradd vsftpd –d /home/ftp –s /bin/false
#用户目录为/home/ftp,/bin/false 指用户不能登录终端。
3、 建立虚拟用户个人vsftp的配置文件和子账号ftp的权限
Mkdir /etc/vsftpd/vconf
创建虚拟用户的配置文件(在vconf下)
Touch ftp
Mkdir –p /home/ftp/dir/name
设置FTP上传文件新增权限。
Chmod –R xxx /home/ftp/dir
Chmod –R xxx /home/ftp/dir/name
4、 编辑/etc/vsftpd/vconf/ftp(编辑用户ftp配置文件)
local_root=/home/ftp/dir(根目录)
write_enable=YES(开放写权限)
anon_world_readable_only=NO (开放下载权限)
anon_upload_enable=YES(开放上传权限)anon_mkdir_write_enable=YES(开放创建目录权限)anon_other_write_enable=YES(开放删除和重命名权限)
5、 配置vsftpd的配置文件
Vi /etc/vsftpd/vsftpd.conf
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
6、 建立虚拟用户名单文件:/etc/vsftpd下
第一行是账号,第二行是密码
7、 生成虚拟用户数据文件:
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
8、 修改/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
9、 防火墙设置
Iptables -A INPUT -p tcp -m multiport --dport 20,21 -m state --state NEW -j ACCEPT
Iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
Iptables -A INPUT -p tcp --dport 10060:10090 -j ACCEPT
10、启动ftp服务器