質問: telnetまたはnetcatクライアントはsslを介して通信できますか? ssl、https、およびssl/tlsを介した他の安全なテキストベースのインターネットプロトコルによるクライアント接続をテストしたいのですが、安全なプロトコルを介してトンネリングされていない場合はtelnetまたはnetcatを使用します。 telnetやnetcatがsslやtlsを通過するようにする方法はありますか(パイプや他のプログラムを使用する場合など)。
回答: telnet/netcatクライアントはありません - それらは2つの別々のプログラムです、そして少なくとも10個の異なるtelnetクライアントと少なくとも6個の異なるnetcatバージョンがあります(オリジナルのnetcat、gnu netcat、openbsdのnetcat、nmapのncat;残りは忘れていました)推奨されるツールはtlsライブラリ自体から来ています。しかし、それらは少し冗長かもしれません。 gnutls linuxにtlsクライアントツールがあります。 gnutls-cli imap.gmail.com -p 993 starttlsには-sを使用してください。必要なプロトコルコマンドを手動で入力してを押す必要があります。 ctrld 準備ができたら。 ipv6をサポートし、デフォルトでサーバー証明書を検証します。 opensslにtlsクライアントツールがあります。 openssl s_client -connect imap.gmail.com:993 これはすべてのオペレーティングシステムで利用可能です。 starttlsは-starttls imapまたは-starttls smtpオプションでサポートされており、プログラムは自動的にそれをネゴシエートします。 (そうしてしまうと、最初のサーバーからの応答は捨てられますが、通常は問題ありません。) ipv6をサポートするのはバージョン≥1.1だけです。 デフォルトでバージョン1.0.2(iirc)のみがサーバー証明書を検証します。古いバージョンでは手動の-capath指定が必要です。 (nssとschannelをテストするためのツールも欲しいのですが、見つけることができませんでした。)プログラムも同じライブラリを使用しますが、設定ノブが少ないかもしれません。デフォルトでピア証明書チェックをスキップするものさえあります... socat: socat openssl:imap.gmail.com:993 stdio readlineモードは便利に使用できます。 socat ssl:imap.gmail.com:993 readline starttlsはサポートされていません。 ncat nmapからはtlsをサポートしています(ただしstarttlsはサポートしていません)。 ncat --ssl imap.gmail.com 993 debianのtelnet-sslパッケージなどのtelnetクライアントもtlsをサポートしています。 telnet-ssl -z ssl imap.gmail.com 993 starttlsは、からのstarttlsを使用してアクティブ化できます。 ctrl] エスケープメニュー。