关于vsftp全部文章:
1、vsftp服务搭建(虚拟账号+被动访问)
2、通过公网登录vsftp服务
3、vsftp容器搭建+go开发web用户管理界面(更新于2022.02.23)
vsftp搭建在阿里云服务器上,有内网和外网两个ip,这时候会遇到一个问题,外网IP登录服务可以登录成功,但是不显示账户内的文件,这问题只会出现在vsftp是被动模式情况下。
由于vsftp服务默认开启listen_ipv6=YES
,导致解析不到ipv4的地址,我们想要达到外网正常访问,只需要更改配置文件成listen=YES
,listen_ipv6=NO
,pasv_address=x.x.x.x
,pasv_addr_resolve=yes
实例全部参数,仅供参考:
vsftp全部配置参数:http://vsftpd.beasts.org/vsftpd_conf.html
cat /etc/vsftpd/vsftpd.conf |grep ^[^#]
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=007
dirmessage_enable=YES
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
connect_from_port_20=NO
xferlog_std_format=YES
listen=YES
listen_ipv6=NO #设置成NO
listen_port=10033 #端口号
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=yes
pasv_max_port=50000
pasv_min_port=60000
user_config_dir=/etc/vsftpd/vuserconfig
pasv_address=x.x.x.x #修改成自己的公网IP
pasv_addr_resolve=yes
这时候会出现内网登录不了服务,如果需要内外网都要登录服务,在配置文件最后添加pasv_promiscuous=YES
参数,禁用安全核对
cat /etc/vsftpd/vsftpd.conf |grep ^[^#]
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=007
dirmessage_enable=YES
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
listen_ipv6=NO
listen_port=10021
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=YES
pasv_max_port=10580
pasv_min_port=10180
user_config_dir=/etc/vsftpd/vuserconfig
pasv_address=x.x.x.x #修改成自己的公网IP
pasv_addr_resolve=YES
pasv_promiscuous=YES