1、介绍
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,是“very secure FTP daemon”的缩写,安全性是它的一个最大的特色。
2、部署
1.安装软件包
yum install -y vsftpd
2.修改配置
vim /etc/vsftpd/vsftpd.confvim
#是否容许匿名用户访问 anonymous_enable=NO #是否容许本地用户访问 local_enable=YES #容许本地用户上传 write_enable=YES #上传的umask权限 local_umask=022 #开启目录欢迎消息,通常对命令行登陆有效 dirmessage_enable=YES #开启上传和下载日志记录功能 xferlog_enable=YES #使用标准模式 connect_from_port_20=YES #日志路径 xferlog_file=/var/log/xferlog #日志使用标准格式 xferlog_std_format=YES #是否上传时使用ASCII模式传输数据 ascii_upload_enable=YES #是否下载时使用ASCII模式传输数据 ascii_download_enable=YES #是否对本地用户启用chroot限制 chroot_local_user=YES #开启特例列表 chroot_list_enable=YES #指定列表文件 chroot_list_file=/etc/vsftpd/chroot_list #容许虚拟用户写 allow_writeable_chroot=YES #是否开启FTP独立模式在IPV4 listen=YES #是否开启FTP独立模式在IPV6 listen_ipv6=NO #会话超时时间 idle_session_timeout=300 #数据传输超时时间 data_connection_timeout=120 #启用pam模块验证 pam_service_name=vsftpd #是否启用userlist功能 userlist_enable=YES #容许虚拟用户登陆 guest_enable=YES #虚拟用户映射到本地用户vsftp guest_username=vsftp #虚拟用户配置文件目录 user_config_dir=/etc/vsftpd/vuser_conf
3.建立匿名用户(第一行帐号,第二行密码)
vim /etc/vsftp/vuser安全
dev 123456
4.生成数据文件
db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser_passwd.db
chmod 600 /etc/vsftpd/vuser_passwd.db
5.建立用户配置
mkdir /etc/vsftpd/vuser_conf
touch /etc/vsftpd/vuser_conf/dev
vim /etc/vsftpd/vuser_conf/dev服务器
#用户家目录 local_root=/data/vsftp/dev #虚拟用户与本地用户有相同权限 virtual_use_local_privs=YES #匿名上传文件 anon_upload_enable=YES #匿名建立文件夹 anon_mkdir_write_enable=YES #匿名其余写操做,如重命名,删除 anon_other_write_enable=YES #用户能够浏览FTP目录和下载文件 anon_world_readable_only=YES #拥有写的权限 write_enable=YES
6.建立目录
mkdir /data/vsftp/dev
chown -R vsftp.vsftp /data/vsftp/dev
7.修改验证文件
vim /etc/pam.d/vsftpdsession
#新增以下两行 auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
8.启动服务
systemctl start vsftpd
systemctl enable vsftpd
9.验证
3、匿名用户权限说明
1.虚拟用户和本地用户有相同的权限
virtual_use_local_privs=YES
2.虚拟用户和匿名用户有相同的权限
virtual_use_local_privs=NO
3.虚拟用户具备写权限(上传、下载、删除、重命名)
virtual_use_local_privs=YES
write_enable=YES
4.虚拟用户只能上传文件,无其它权限
virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
5.虚拟用户只能下载文件,无其它权限
virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=NO
6.虚拟用户只能上传下载,无其它权限
virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
7.虚拟用户只能下载、建立目录,无其它权限
virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_mkdir_write_enable=YES
8.虚拟用户只能下载、删除和重命名文件,无其它权限
virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_other_write_enable=YESide