2017-02-09 27 views
3

Я использую IIS на своей локальной машине для тестирования FTP с помощью SSL-соединения. Я использую библиотеку FluentFTP для подключения к FTP. Для подключения к Серверу я использую следующий код.Подключение к FTPS (FTP через SSL) с FluentFTP

FtpClient conn = new FtpClient(); 
conn.Host = firewallSslDetails.Address; 
conn.Credentials = new NetworkCredential(firewallSslDetails.UserName, firewallSslDetails.Password); 
conn.SslProtocols = System.Security.Authentication.SslProtocols.Default; 

X509Certificate2 cert = new X509Certificate2(@"C:\Users\BizTalk360\Desktop\FtpSites\ServerCert.cer"); 
conn.EncryptionMode = FtpEncryptionMode.Implicit; 
conn.DataConnectionType = FtpDataConnectionType.AutoActive; 
conn.DataConnectionEncryption = true; 
conn.EnableThreadSafeDataConnections = false; 
conn.ClientCertificates.Add(cert); 
conn.ValidateCertificate += new FtpSslValidation(OnValidateCertificate); 

conn.Connect(); 

Сервер возвращает меня со следующей ошибкой.

FluentFTP.FtpCommandException: Policy requires SSL.; Win32 error: Access is denied.; Error details: SSL policy requires SSL for control channel.;

Для подключения по FTP приведенный выше код работает нормально, а для FTP с SSL он не работает.

ответ

5

Как вы, кажется, подключение к порту по умолчанию 21 (без явного порта не указан в любом месте), вы должны использовать «Явный» режим:

conn.EncryptionMode = FtpEncryptionMode.Explicit; 
+0

После изменения его Явной сервер бросает эту ошибку .. _AUTH TLS command failed._ –

+0

Включить ведение журнала ('FtpTrace.AddListener') и показать нам журнал +. Могли ли вы подключиться к вашему серверу с помощью автономного FTP-клиента (WinSCP или FileZilla)? Покажите нам свой журнал. –

+0

Я попытался войти в систему, используя FileZilla, и следующим был журнал. 'Статус: \t Небезопасный сервер, он не поддерживает FTP через TLS.' 'Ответ: \t 534-Политика требует SSL.' 'Ответ: \t Сведения об ошибке: для политики SSL требуется SSL для канала управления.' 'Статус: \t Небезопасный сервер, он не поддерживает FTP через TLS. Ответ: \t 534-Политика требует SSL. Ответ: \t Ошибка Win32: доступ запрещен. Ответ: \t Сведения об ошибке: для политики SSL требуется SSL для канала управления. Ответ: \t 534 Конец Ошибка: \t Не удалось подключиться к серверу –