好吧,我已经为此工作了好几天,我开始抓狂了:
我在 CentOS 5.4 上运行 vsftpd 服务器 v2.0.6 (+SSL、+TCP 包装器),但 Windows 客户端似乎无法对其进行身份验证 (lftp/cygwin、SmartFTP 和 FileZilla)。Snow Leopard 和 Ubuntu 9.04 客户端似乎可以使用lftp
或正常连接curl
。
在 OS X 和 Ubuntu 客户端上,对话如下所示:
SERVER <-> CLIENT
<- AUTH TLS
-> 234 Proceed with negotiation.
<- [some data that looks encrypted]
-> [some data that looks like a certificate]
一切正常。
然而,在 Windows XP 客户端上,对话如下所示:
SERVER <-> CLIENT
<- AUTH TLS
-> 234 Proceed with negotiation.
<- [some data that looks encrypted]
-> [server does not respond, client times out]
使用 Windows 客户端时,vsftpd 日志显示此消息:
SSL_accept failed: error:00000000:lib(0):func(0):reason(0)
这是我尝试过的方法,但出现了相同的症状:
- 在 OS X 10.6 和 Ubuntu 9.0.4 上运行 vsftpd
- 通过 SSL 启用匿名登录
- 不同版本的 vsftpd(2.0.7、2.1.2、2.2.2)
- 已禁用 SSL(没有 SSL 一切正常)
由于项目要求,我无法切换到 SFTP。
答案1
这似乎是我们公司内部某些机器的软件防火墙问题,而不是 VSFTPD 问题。