vsftpd
一、安装
yum -y install vsftpd
二、配置vsftpd
egrep -v "^#|^$" /etc/vsftpd/vsftpd.conf
# 允许匿名用户登录,默认NO
anonymous_enable=YES
# 指定匿名用户的根目录
anon_root=/mnt/rhd/ftp/ftpuser
# 允许本地用户登录
local_enable=YES
# 允许写入操作
write_enable=YES
# 设置本地用户上传文件的umask值
local_umask=022
# 允许匿名用户上传文件
anon_upload_enable=YES
# 允许匿名用户创建目录
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
# 允许从端口20进行连接
connect_from_port_20=YES
xferlog_std_format=YES
# 指定vsftpd监听模式
listen=YES
# 指定PAM服务名称
pam_service_name=vsftpd.pam
userlist_enable=YES
tcp_wrappers=YES
# 启用被动模式
pasv_enable=YES
# 设置被动模式最大最小端口号
pasv_min_port=30000
pasv_max_port=30999
# 指定用户配置文件目录
user_config_dir=/etc/vsftpd_user_conf
user_sub_token=$USER
# 启用来宾用户的支持
guest_enable=YES
guest_username=public
allow_writeable_chroot=YES
reverse_lookup_enable=NO
# cat /etc/vsftpd_user_conf/ftpuser
# 设置本地用户的根目录
local_root=/mnt/rhd/ftp/$USER
#write_enable=YES
anon_umask=022
#anon_world_readable_only=NO
#anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
# cat /etc/pam.d/vsftpd.pam
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin
启动
systemctl enable vsftpd --now
防火墙配置
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 30000:30999 -j ACCEPT
主被动模式
1、PORT(主动)模式
是FTP服务器“主动”去连接客户端的数据端口来传输数据,其过程具体来说就是:客户端通过访问服务端的21端口,然后客户端分配一个端口供ftp服务端获取数据,然后服务端通过20端口主动到客户端指定端口获取数据,20为服务器的出向端口
此模式,防火墙只需要开放21端口的对外访问策略
2、PASV(被动)模式
FTP服务器“被动”等待客户端来连接自己的数据端口,其过程具体是:客户端通过访问服务端的21端口,然后客户端提交PASV命令,让服务端分配一个用于传输数据的端口,此端口范围为vsftpd.conf配置的pasv_min_port-pasv_max_port,然后客户端通过分配的端口上传数据。(注意此模式下的FTP服务器不需要开启tcp 20端口)
此模式,防火墙需要开放21端口的对外访问策略和pasv_min_port - pasv_max_port端口范围内的访问策略
配置
pasv_enable=YES # 开启被动模式
pasv_min_port=30000 # pasv连接模式时的最小端口
pasv_max_port=30999 # pasv连接模式时的最大端口
pasv_enable=NO # 关闭被动模式
© 版权声明
特别提醒: 内容为用户自行发布,如有侵权,请联系我们管理员删除,邮箱:mail@xieniao.com ,在收到您的邮件后我们会在3个工作日内处理。
相关文章
暂无评论...