cURL "Antwort lesen ist fehlgeschlagen" bei der FTPS-Dateiübertragung

4017
user35581

Ich versuche, ein Verzeichnis und seine Dateien mit cURL über FTPS herunterzuladen.

Der folgende Befehl bringt mich sehr nahe - ich habe mich erfolgreich angemeldet und den Befehlskanal gesetzt, aber dann schlägt er fehl curl: (56) response reading failed

curl -v --ftp-ssl --data-ascii --ftp-pasv --no-epsv --user myusername:XXXXXXXX ftp://ftp.server.com:21 -Q "CCC" * About to connect() to ftp.server.com port 21 (#0)* Trying 55.55.55.55... connected < 220-This System Is For Authorized Users Only. < 220- < 220 Secure FTP Server - SecureTransport ready. > AUTH SSL < 234 SSLv23/TLSv1 * successfully set certificate verify locations: * CAfile: none CApath: /etc/ssl/certs * SSLv3, TLS handshake, Client hello (1): * SSLv3, TLS handshake, Server hello (2): * SSLv3, TLS handshake, CERT (11): * SSLv3, TLS handshake, Server finished (14): * SSLv3, TLS handshake, Client key exchange (16): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSL connection using AES256-SHA * Server certificate: * subject: DC=local; DC=ftp_host_company; DC=us; OU=Accounts; OU=SSL Accounts; CN=ftp.server.com * start date: 2012-02-14 16:29:37 GMT * expire date: 2015-02-14 16:59:37 GMT * common name: ftp.server.com (matched) * issuer: DC=local; DC=ftp_host_company; CN=Configuration; CN=Services; CN=Public Key Services; CN=AIA; CN=FTP_hosting_company Issuing CA 1 * SSL certificate verify ok. > USER myusername < 331 Password required for myusername. > PASS XXXXXXXX < 230 Virtual user myusername logged in. > PBSZ 0 < 200 PBSZ=0 > PROT P < 200 PROT command successful > PWD < 257 "/" is current directory. * Entry path is '/' > CCC < 200 command channel cleared. > PASV * Connect data stream passively * SSLv3, TLS alert, Client hello (1): * response reading failed * Closing connection #0 * SSLv3, TLS alert, Client hello (1): curl: (56) response reading failed 

Der FTP-Host sagte ausdrücklich, dass ich mich mit FTPS mit Clear Command Channel auf Port 21 verbinden muss - fehlt mir irgendetwas?

0

1 Antwort auf die Frage

1
Steffen Ullrich

CCC wird verwendet, um den Befehlskanal zurück von SSL zu Klartext zurückzustufen, dh nachdem die erfolgreiche Antwort auf CCC empfangen wurde, müssen beide Seiten ein SSL-Shutdown für den Socket durchführen. Curl muss sich also mit dieser inhärenten Semantik des Befehls befassen, und es reicht nicht aus, dass curl diesen Befehl nur so sendet, wie dies bei jedem anderen beliebigen Befehl der Fall wäre. Stattdessen müssen Sie die --ftp-ssl-cccOption verwenden.

Hinzufügen der Option --ftp-ssl-ccc Dejel vor 9 Jahren 0
@Odelya: "Hinzufügen der Option --ftp-ssl-ccc" - funktioniert nicht, gibt en Fehlermeldungen, es gibt keine solche Option ..... Bitte geben Sie eine ausführliche Fehlermeldung an, wenn Sie Hilfe benötigen. Wenn Sie immer noch nur kleine Fragmente des Problems hinzufügen, werden zukünftige Kommentare ignoriert. Steffen Ullrich vor 9 Jahren 1