我花了几个小时试图让 .NET FtpWebRequest 库通过 SSL 使用 vsftpd 与我的 Ubuntu 16.04 FTP 服务器通信。
无论我尝试什么,我总是以异常结束“对 SSPI 的调用失败。收到的消息是意外的或格式错误。”
我已经尝试生成客户端和服务器证书,将它们安装在 Windows 中,使用 .NET 中的 X509 类加载它们,切换各种客户端和服务器端选项。无论我做什么,它总是同样的错误。我相信这与我的证书未经权威机构验证有关。这是我的基本问题:
1) .NET 可以只接受可疑的证书吗?!安装30种不同的方式似乎没有影响?
2) “调用 SSPI 失败”的真正含义是什么?我读过相互矛盾的答案。我在通过 FileZilla 连接 TLS/SSL 时没有问题,但 .NET 4.5 没有。
3) 有人可以提供最少的步骤,让使用 .NET 框架的 Windows 7 客户端通过 SSL 使用 vsftpd 连接到 Linux 服务器吗?我坚信问题出在我的 Windows/.NET 设置上,因为我的 Windows 机器上的 FileZilla 没有连接问题。
提前谢谢你。
最佳答案
在您的 vsftpd.conf 中插入以下行:
ssl_ciphers=AES128-SHA
关于带有 SSL 到 Ubuntu VSFTPD 的 C# FtpWebRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39523801/