我的服务器配置正确,运行良好。我完全不知道发生了什么变化,但现在 vsftpd (2.2.2) 停止在被动模式下工作。
Response: 230 Login successful.
Command: OPTS UTF8 ON
Response: 200 Always in UTF8 mode.
Command: PBSZ 0
Response: 200 PBSZ set to 0.
Command: PROT P
Response: 200 PROT now Private.
Status: Connected
Status: Retrieving directory listing...
Command: PWD
Response: 257 "/"
Command: TYPE I
Response: 200 Switching to Binary mode.
Command: PASV
Error: GnuTLS error -15: An unexpected TLS packet was received.
Error: Disconnected from server: ECONNABORTED - Connection aborted
Error: Failed to retrieve directory listing
这是我得到的结果
Command: PASV
227 Entering Passive Mode (86,150,105,147,215,59)
因此,我发现出于某种原因,服务器在被动模式下遇到了麻烦。切换到主动模式有帮助,但这不是我想要的方法。
如果我禁用加密,我也无法收到对 PASV 命令的任何正确响应
Command: PASV
Response: 500 OOPS: vsf_sysutil_bind
Command: PORT 192,168,1,109,234,197
Response: 500 OOPS: priv_sock_get_int
Error: Failed to retrieve directory listing
Error: Connection closed by server
看起来所有端口都打开了,防火墙已禁用,其他设置也正常。一两周前它运行正常,现在发生了什么……?
答案1
我知道这个问题已经有一段时间没有被问过了。但对于遇到此问题的其他人来说,解决方案似乎是添加
seccomp_sandbox=NO
到你的vsftpd
配置文件。关于为什么需要配置调整的详细信息,请参阅RedHat 错误报告vsftpd
。由于使用了 Linux 的“安全计算沙箱”,因此它似乎是 中的一个错误。
希望这可以帮助!