FTP服务器之vsftpd



1、ftp安装
[root@server ~]# yum -y install vsftpd
[root@server ~]# systemctl start vsftpd.service
[root@server ~]# systemctl stop vsftpd.service
[root@server ~]# systemctl status vsftpd.service

 

2、主配置文件
[root@server]# vim /etc/vsftpd/vsftpd.conf

#不允许匿名访问(不登录默认访问某目录/var/ftp),12行
anonymous_enable=NO

#允许ascii文件上传和下载。82-83行
ascii_upload_enable=YES
ascii_download_enable=YES

#将用户限制在为其配置的主目录,100行
chroot_local_user=YES

#启用IPv4监听,115行
listen=YES

#关闭IPv6监听,124行
listen_ipv6=NO

#设置启用虚拟用户功能
guest_enable=YES

#制定宿主用户名(手动添加该系统用户,所有虚拟用户都将映射为此用户身份)
guest_username=ftphost

#制定虚拟用户配置文件放置文件夹(手动创建)
user_config_dir=/etc/vsftpd/vuser_conf

#允许写
allow_writeable_chroot=YES


3、创建宿主账户

mkdir /var/www/ftphost
useradd -d /var/www/ftphost/ -s /bin/false ftphost
chown -R ftphost:ftphost /var/www/ftphost/
chmod u-w /var/www/ftphost

 

3、pam.d认证文件配置

虚拟用户认证需要借助pam.d模块,vuser_list为虚拟用的账户-密码配置文件,一般格式为:奇数行为用户名,偶数行为密码

cat /etc/pam.d/vsftpd
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_list
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_list

 

4、将密码文件进行db格式的转化

db_load -T -t hash -f /etc/vsftpd/vuser_list /etc/vsftpd/vuser_list.db
chmod 600 /etc/vsftpd/vuser_list

 

5、虚拟用户配置文件/etc/vsftpd/vuser_conf/scott

write_enable=YES
anon_world_readable_only=NO ##关闭只可读
anon_upload_enable=YES ##允许上传
anon_mkdir_write_enable=YES ##允许新建目录
anon_other_write_enable=YES ##允许修改目录/文件名称,删除
local_root=/var/www/ftphost/scott ##家目录映射

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM