TunnelBlick
証明書を使用して接続するために(正常に動作することがわかっているOS / X OpenVPN 2.2.1クライアント)を使用することに非常に失敗しています。ここに私が受け取る(無害化された)エラーメッセージがあります:
2012-01-11 11:18:26 TLS:**。**。**。**:1194からの初期パケット、sid = 17a4a801 5012e004 2012-01-11 11:18:26検証エラー:深さ= 1、エラー=証明書チェーン内の自己署名証明書: / C = US / ST = ** / L = ** / O = ** / CN = ** / emailAddress = ** 2012-01-11 11:18:26 TLS_ERROR:BIO読み取りtls_read_plaintextエラー:エラー:14090086:SSLルーチン:SSL3_GET_SERVER_CERTIFICATE:証明書の検証に失敗しました 2012-01-11 11:18:26 TLSエラー:TLSオブジェクト->受信プレーンテキスト読み取りエラー 2012-01-11 11:18:26 TLSエラー:TLSハンドシェイクが失敗しました 2012-01-11 11:18:26 TCP / UDP:ソケットを閉じています
さて、ここで問題があります。私は、反対側から提供されたca.crtファイルを使用して、この証明書を要求するために自分で CSRを生成しました(実際、彼らは確認のために2回実行しました)。
クライアント構成の関連エントリは次のとおりです。
ca ca.crt
cert my.crt
key my.key
さらに、この方法でキーを確認できます。
openssl verify -CAfile ca.crt my.crt
my.crt:OK
さて、今、私は完全に神秘的で困惑しています。この時点で、CSRとキーが適切なCSRを使用して生成されたことを知っています。実際には、ここでそれをやった非常にコマンド:
openssl req -newkey rsa:2048 -new -out my.csr -keyout my.key
私もこれをすることを知っていました:
openssl x509 -subject -issuer -noout -in ca.crt
...
(点滅!)
私はちょうどでした見つけ、それを?
このコマンドの出力は次のようになります:( 多少編集されています)
件名= / C = US / ST = VA / L = ** / O = ** / CN = ** CA / emailAddress = ** 発行者= (同じ)
一方、OpenVPNからのエラーメッセージでは、ST =はまったく同じではありません。
検証エラー:深度= 1、エラー=証明書チェーン内の自己署名証明書:/ C = US / ST = バージニア / L = ** / O = ** / CN = ** / emailAddress = **
「VA」は「バージニア」と完全に同じではありません。
openssl s_client -connect host:port -showcerts
、受け取った証明書の拇印をと比較してくださいopenssl x509 -noout -text -in ca.crt
。