我有问题。当我尝试使用ftp连接时,会出现此错误。
/etc/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=022
anon_upload_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
dual_log_enable=YES
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=NO
tcp_wrappers=YES
force_dot_files=YES
ascii_upload_enable=YES
ascii_download_enable=YES
allow_writeable_chroot=YES
seccomp_sandbox=NO
pasv_enable=YES
pasv_min_port=12000
pasv_max_port=12100
max_per_ip=10
max_clients=100
use_localtime=YES
pasv_address='35.195.69.80'
FTP输出
Status: Connecting to 35.233.4.11:21...
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Status: Server does not support non-ASCII characters.
Status: Logged in
Status: Retrieving directory listing...
Command: PWD
Response: 257 "/" is the current directory
Command: TYPE I
Response: 200 Switching to Binary mode.
Command: PASV
Response: 500 OOPS: invalid pasv_address
Command: PORT 192,168,1,34,199,3
Response: 500 OOPS: priv_sock_get_cmd
Error: Failed to retrieve directory listing
Error: Connection closed by server
FTP连接配置字段
host => packages.pastheme.com
Username => *****
Pass => *****
我所做的是我无法处理此问题。我在执行此操作后重置了VEST,但结果还是一样。我的操作系统ubuntu 16.04
答案 0 :(得分:1)
该问题可能与防火墙问题有关:命令端口 (21) 对业务开放,但 PASSIVE 传输模式端口被阻止。可以找到一个很好的解释here
就我而言,服务器位于 ISP 提供的额外“防火墙层”后面(例如 AWS 中的安全组)。所以首先观察Vesta CP中被动传输模式的最小和最大端口:
pasv_enable=YES
pasv_max_port=12100
pasv_min_port=12000
答案 1 :(得分:0)
服务器防火墙不允许向客户端发送数据,请通过以下代码进行连接:
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
检查是否在/ etc / shells中注册了新用户路径。
nano /etc/shells
,如果没有,我很容易添加此行:
/usr/sbin/nologin
在所有重新启动相关服务之后,请确保:
service iptables restart
service vsftpd restart