Wie eine Verbindung zu FTP über TLS/SSL (FTPS) - server in Java
Suchte ich ALSO nach mehr als 2 Tagen und habe nicht gefunden, eine Antwort, die mir hilft.
Ich bin stecken in der Verbindung zu FTP über TLS/SSL (FTPS) - server. Ich bin mit SimpleFTP Bibliothek durch bin in der Lage, eine Verbindung FTP server ohne SSL, konnte aber keine Verbindung FTPS.
Es ist mir dieser Fehler in Zeile 2 (ftp.connect),
SimpleFTP erhielt eine unbekannte Antwort bei der Verbindung zum FTP-server:
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
und bin mit folgenden code
SimpleFTP ftp = new SimpleFTP();
//Connect to an FTP server on port 21.
ftp.connect("xxx.xxx.xxx.xxx", 21, "username", "pwd");
//getting error at (ftp.connect) above line
//Set binary mode.
ftp.bin();
//Change to a new working directory on the FTP server.
ftp.cwd("web");
ftp.disconnect();
Wie verbinden Sie "ohne SSL"? Warum verwenden Sie SimpleFTP und nicht die Apache Commons Net
Ich weiß nicht, wie zu verbinden, Apache-Commons-Net FTPClient, wird es eine große Hilfe, wenn Sie nach ein paar Beispiel-code.
Vielen Dank Ihre Antwort bitte teilen Sie Beispiel der Verbindung FTPS-server mithilfe von Apache Commons-Net FTPClient
War das nicht ein Angebot, schreiben Sie den code für Sie. Ich Frage mich nur, warum du diese Wahl getroffen. Wenn Sie sich entscheiden, zu wechseln, um die Apache Common Net, eine neue Frage stellen.
können Sie sagen, was falsch ist im code oben, warum es ist, dass Fehler?
FTPClient
?Ich weiß nicht, wie zu verbinden, Apache-Commons-Net FTPClient, wird es eine große Hilfe, wenn Sie nach ein paar Beispiel-code.
Vielen Dank Ihre Antwort bitte teilen Sie Beispiel der Verbindung FTPS-server mithilfe von Apache Commons-Net FTPClient
War das nicht ein Angebot, schreiben Sie den code für Sie. Ich Frage mich nur, warum du diese Wahl getroffen. Wenn Sie sich entscheiden, zu wechseln, um die Apache Common Net, eine neue Frage stellen.
können Sie sagen, was falsch ist im code oben, warum es ist, dass Fehler?
InformationsquelleAutor Abdul Rafay | 2016-03-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
SimpleFTP
Klasse/Bibliothek nicht die Unterstützung von TLS/SSL in allen.Verwenden Sie die
FTPSClient
Klasse aus der Apache Commons Net Bibliothek statt.Sehen die offiziellen Beispiel für das
FTPClient
Klasse und ersetzen Sie einfach denFTPClient
mit derFTPSClient
.Den
FTPSClient
Klasse standardmäßig ein explizites TLS/SSL (empfohlen). In einem seltenen Fall, müssen Sie eine implizite TLS/SSL verwendennew FTPSClient(true)
.ich versuchte oben-Methode, wie Sie sagte FTPSClient con = new FTPSClient(true); con.connect("ftp.domain.com"); //es gibt diese Fehlermeldung "failed to connect to http://ftp.domain.com/xxx.xxx.xx.xx (port 990): connect failed: ECONNREFUSED (Connection refused)
Warum sind Sie versuchen, die impliziten Modus? Haben Sie versuchen, die empfohlene explicit-Modus?
ich habe versucht, wie diese auch, FTPSClient con = new FTPSClient(true); con.connect("ftp.domain.com",21); dann ist die Angabe dieser Fehlermeldung, "FEHLGESCHLAGEN ZU TUN HANDSHAKE Ursache = {javax.net.ssl.SSLProtocolException@20290}"javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x9c937800: Failure in SSL library, in der Regel ein Protokoll-Fehler\nerror:140770FC:SSL-Routinen:SSL23_GET_SERVER_HELLO:unknown protocol (external/openssl/ssl/s23_clnt.c:795 0xaec87679:0 x 00000000)"
Die
new FTPSClient(true); con.connect("ftp.domain.com",21)
ist Unsinn. Sie können keine Verbindung mit impliziten Modus auf port 21.InformationsquelleAutor Martin Prikryl