FTPS 証明書チェッカー
FTPS サーバーの TLS 証明書を調べます。有効期限、発行者、サブジェクト、自己署名かどうかを確認できます。
よくあるエラーの解説
550
SSL/TLS required on the control channel. 暗黙的モード(ポート 990)を使っていますが、サーバーは明示的 FTPS(ポート 21 で AUTH TLS)を使っています。暗号化モードを明示的(Explicit)/STARTTLS に切り替え、ポートを 21 にしてください。
TLS
TLS ハンドシェイクの失敗、またはポート 990 での接続拒否。サーバーはポート 990 の暗黙的 FTPS ではなく、ポート 21 の明示的 FTPS を使っています。モードを明示的(Explicit)/STARTTLS に切り替えてください。
534
Request denied for policy reasons. 上の 550 と同じです。ポート 21 の明示的モードに切り替えてみてください。
サーバーがどちらのモードか分からないときは、FTP ポートチェッカーでどのポートが開いているかを確かめるか、サーバーの管理画面を確認してください。
このツールで確認できる項目
- 証明書のサブジェクト:証明書の発行対象のドメインまたはホスト名。
- Subject Alternative Names:証明書がカバーするほかのホスト名や IP アドレス。
- 発行者と CA チェーン:証明書が信頼できる認証局によって署名されているか。
- 有効期限:証明書が切れるまでの残り日数。
- 鍵のアルゴリズムと長さ:証明書の公開鍵の種類(例:RSA)とビット長。
- 署名アルゴリズム:証明書の署名に使われたハッシュアルゴリズム(例:sha256RSA)。
- シリアル番号:認証局が割り当てた一意の識別子。
- 自己署名フラグ:証明書が自己署名かどうか(プライベートな FTP 環境でよく見られます)。
- 拇印(Thumbprint):ピン留めや手動での照合に使う SHA-1 フィンガープリント。
- 証明書のバージョン:証明書の X.509 バージョン(最近の証明書の多くは v3)。
コマンドラインで確認する
OpenSSL でも同じ証明書を読めます。Git for Windows(Git Bash)に含まれているほか、多くの Linux や macOS にも入っています。ポート 21 の明示的 FTPS と、ポート 990 の暗黙的 FTPS は、それぞれ次のとおりです。
openssl s_client -connect ftp.example.com:21 -starttls ftp </dev/null | openssl x509 -noout -subject -issuer -dates
openssl s_client -connect ftp.example.com:990 </dev/null | openssl x509 -noout -subject -issuer -dates
出力には、証明書の発行先、発行者、有効期間が表示されます。比較用のフィンガープリントがほしい場合は、openssl x509 の部分に -fingerprint -sha256 を追加してください。
自己署名の証明書だからといって、それ自体が問題なわけではありません。プライベートなサーバーの多くが使っています。大切なのは、そのフィンガープリントを一度サーバーの管理者と照合しておくことと、変わったときにクライアントが知らせてくれることです。FTPie は FTPS の証明書を初めて見たときに表示し、変わったときにも再び表示します。