使用FTPS(安全)将文件发送到使用WinSCP(.NET程序集)的服务器需要什么?
我一直在查看他们的文档,对TlsHostCertificateFingerprint
或TlsClientCertificatePath
等某些方面并不十分清楚。
我已经能够通过FTP和SFTP发送文件没有任何问题,但这一切都让我不知所措。
答案 0 :(得分:6)
如果您有FTP代码,那么您需要添加以连接到行为良好的FTPS(FTP over TLS / SSL)服务器,只需设置SessionOptions.FtpSecure
:
// Set up session options
SessionOptions sessionOptions = new SessionOptions
{
Protocol = Protocol.Ftp,
HostName = "ftp.example.com",
UserName = "username",
Password = "password",
// Enable FTPS in explicit mode, aka FTPES
FtpSecure = FtpSecure.Explicit,
};
using (Session session = new Session())
{
// Connect
session.Open(sessionOptions);
// Your code
}
如果您的服务器证书未由受信任的机构签名,则仅需TlsHostCertificateFingerprint
。
如果您的服务器需要使用客户端证书进行身份验证,则仅需TlsClientCertificatePath
。
最简单的是configure your session in WinSCP GUI,并为您generate a code template。这实际上就是我如何获得上述代码。