vsftp-2.2.2.24搭建,工作在虚拟用户模式

孤街浪徒 提交于 2020-01-07 18:11:38

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

1.yum安装
>yum install vsftpd ftp -y

2.配置过程
#创建用于登录的账号密码
>cd /etc/vsftpd/
>vim vuser.list #单行用户名,双行密码
zhangsan
123
>db_load -T -t hash -f vuser.list vuser.db
>chmod 600 vuser.db
>rm -f vuser.list #为了安全,生成数据文件后删掉原文件

#创建用于虚拟用户映射到的本地用户
>useradd -d /var/ftproot -s /sbin/nologin virtual 
>chmod -Rf 755 /var/ftproot/

#配置pam认证机制
>vim /etc/pam.d/vsftpd.vu 
auth       required     pam_userdb.so db=/etc/vsftpd/vuser
account    required     pam_userdb.so db=/etc/vsftpd/vuser

#编辑主配置文件
>vim /etc/vsftpd/vsftpd.conf 
listen_port=2131 #连接端口,工作在主动模式时这里只能用默认的21
anonymous_enable=NO #不允许匿名登录
local_enable=YES #设定本地用户可以访问,工作在虚拟用户模式必须设置为YES
guest_enable=YES #启用虚拟用户功能
guest_username=virtual #将虚拟用户映射为本地virtual用户
#allow_writeable_chroot=YES #这个在v3中才有效,限制ftp用户在登录目录
chroot_local_user=YES #v2中用这个
write_enable=YES
local_umask=022 #虚拟用户文件权限,新建目录权限 777-022=755,新建文件权限 666-022=644
dirmessage_enable=YES
xferlog_enable=YES #启用上传下载日志记录
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
connect_from_port_20=YES
listen=YES #standalone方式来启动,默认工作模式为瞬时守护进程,由xinetd服务管理
#listen_ipv6=YES #standalone方式来启动,这个必须注释
pam_service_name=vsftpd.vu
userlist_enable=YES
tcp_wrappers=YES #支持TCP Wrappers 的防火墙机制
user_config_dir=/etc/vsftpd/vusers_dir
dual_log_enable=YES #启用登录日志
vsftpd_log_file=/var/log/vsftpd_access.log
use_localtime=YES
idle_session_timeout=600 #用户会话空闲后10分钟断开
data_connection_timeout=120 #将数据连接空闲2分钟断开
max_clients=10 #最大客户端连接
max_per_ip=5 #每个ip最大连接数
#local_max_rate=0 #限制上传速率,0为无限制
pasv_enable=YES #开启PASV模式(被动模式)
pasv_min_port=30000
pasv_max_port=31000

#为虚拟用户单独设置权限
>mkdir /etc/vsftpd/vusers_dir/
>cd /etc/vsftpd/vusers_dir/
>vim zhangsan
local_root=/data/wwwroot/www.zhenji.cn/www/apps
anon_umask=022
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
#download_enable=NO

#重启vsftp服务,测试
service vsftpd restart

3.配置iptables允许ftp端口
vim /etc/sysconfig/iptables加入
-A INPUT -p tcp -m multiport --dport 20,2131  -m state --state NEW -j ACCEPT
-A INPUT -p tcp --dport 30000:31000 -j ACCEPT

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!