FTPS サーバー (SFTP ではない) に接続しようとしています。Linux システムから接続しているので、lftp、ftp-ssl、さらには php の ftp_ssl_connect を使用してみましたが、どれも機能しません。(上記の方法のすべてまたは少なくとも一部を使用して、他の FTPS サーバーに接続できました)。
私が持っている最も説明的なエラーは、11までのデバッグを使用したlftpからのものです。
$ ftp lftp :~> open -u my-username ftps://server.net パスワード: lftp my-username@server.net:~> デバッグ 99999999999 lftp my-username@server.net:~> ls FileCopy(0x717bf0) が INITIAL 状態に入る FileCopy(0x717bf0) が状態 DO_COPY に入る ---- DNS キャッシュ ヒット ---- server.net (IP ADDRESS) ポート 990 への接続 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_RSA_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_RSA_CAMELLIA_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_RSA_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_RSA_CAMELLIA_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_RSA_3DES_EDE_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_DSS_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_DSS_CAMELLIA_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_DSS_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_DSS_CAMELLIA_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_DSS_3DES_EDE_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: DHE_DSS_ARCFOUR_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: DHE_PSK_SHA_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: DHE_PSK_SHA_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: DHE_PSK_SHA_3DES_EDE_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: DHE_PSK_SHA_ARCFOUR_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_RSA_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_RSA_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_RSA_3DES_EDE_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_DSS_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_DSS_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_DSS_3DES_EDE_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: RSA_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: RSA_CAMELLIA_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: RSA_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: RSA_CAMELLIA_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: RSA_3DES_EDE_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: RSA_ARCFOUR_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートを保持: RSA_ARCFOUR_MD5 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: PSK_SHA_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: PSK_SHA_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: PSK_SHA_3DES_EDE_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: PSK_SHA_ARCFOUR_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_AES_128_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_AES_256_CBC_SHA1 GNUTLS: HSK[acfbb0]: 暗号スイートの削除: SRP_SHA_3DES_EDE_CBC_SHA1 GNUTLS: EXT[acfbb0]: 送信拡張機能 CERT_TYPE GNUTLS: HSK[acfbb0]: CLIENT HELLO が送信されました [88 バイト] GNUTLS: REC[acfbb0]: 送信パケット [0] ハンドシェイク (22) の長さ: 88 GNUTLS: アサート: gnutls_cipher.c:205 GNUTLS: REC[acfbb0]: 送信されたパケット [1] ハンドシェイク (22) の長さ: 93 GNUTLS: アサート: gnutls_buffers.c:638 GNUTLS: アサート: gnutls_record.c:909 GNUTLS: アサート: gnutls_buffers.c:1152 GNUTLS: アサート: gnutls_handshake.c:1032 GNUTLS: アサート: gnutls_handshake.c:2331 **** gnutls_handshake: 予期しない長さの TLS パケットを受信しました。 ---- 制御ソケットを閉じる ls: 致命的なエラー: gnutls_handshake: 予期しない長さの TLS パケットを受信しました。
PHPを使用すると、次のようになります。
警告: ftp_login(): SSL/TLS ハンドシェイクが /home/user/ftp.php の 7 行目で失敗しました 警告: ftp_login(): SSL が有効で、7 行目の /home/user/ftp.php でネゴシエーションを開始します ログインできませんか
6 行目:$connect = ftp_ssl_connect("server.net") or die("cannot connect");
7 行目:$result = ftp_login($connect,"my-username","my-password") or die("cannot login");
ftp-ssl の場合:
$ ftp-ssl -d -z デバッグ server.net SSL_DEBUG_FLAG オン server.net に接続しました。 220-セキュリティ通知 220-すべての活動が監視される可能性があります。システムの使用は、 220監視。法執行機関に情報が提供される場合があります。 ftp: setsockopt: ファイル記述子が正しくありません 名前 (server.net:user): my-username ---> 認証 SSL 234 SSL が有効になっているため、ネゴシエーションを開始します 0x68c190 に書き込む (102 バイト => 102 (66)) 0000 - 80 64 01 03 01 00 4b 00-00 00 10 00 00 39 00 00 .d....K......9.. 0010 - 38 00 00 35 00 00 16 00-00 13 00 00 0a 07 00 c0 8..5........ 0020 - 00 00 33 00 00 32 00 00-2f 03 00 80 00 00 05 00 ..3..2../....... 0030 - 00 04 01 00 80 00 00 15-00 00 12 00 00 09 06 00 ...... 0040 - 40 00 00 14 00 00 11 00-00 08 00 00 06 04 00 80 @....... 0050 - 00 00 03 02 00 80 e9 28-25 ed ea 2d e4 d2 f2 25 .......(%..-...% 0060 - 80 e1 2e f1 c3 71 .....q 0x68c190 から読み取る (7 バイト => -1 (FFFFFFFFFFFFFFFF)) ftp: SSL_connect エラー error:00000000:lib(0):func(0):reason(0) : ピアによって接続がリセットされました
この投稿が長い場合は申し訳ありませんが、答えが見えないまま何日もグーグルで検索しています。私が見逃したデバッグ情報が誰かに役立つことを願っています。