8

SSL を使用して Tomcat サーバーを構成しようとしています。私はこうしてキーペアを生成しました:

$ keytool -genkeypair -alias tomcat -keyalg RSA -keystore keys

次に、証明書署名要求を生成します。

$ keytool -certreq -keyalg RSA -alias tomcat -keystore keys -file tomcat.csr

次に、内容をコピーtomcat.csrして Thawte の Web サイトのフォームに貼り付け、試用版の SSL 証明書を要求します。その見返りに、 で区切られた 2 つの証明書を取得し、 と の下に-----BEGIN ... -----END保存します。(Thawte では、2 番目の証明書を「Thawte Test CA Root」証明書と呼んでいます)。tomcat.crtthawte.crt

どちらかをインポートしようとすると失敗します:

$ keytool -importcert -alias tomcat -file tomcat.crt -keystore keys
Enter keystore password:
keytool error: java.lang.Exception: Failed to establish chain from reply

$ keytool -importcert -alias thawte -file thawtetest.crt -keystore keys
Enter keystore password:
keytool error: java.lang.Exception: Input not an X.509 certificate

これらのコマンドのいずれかにオプションを追加し-trustcacertsても、何も変わりません。

私がここで間違っていることは何か分かりますか?

4

3 に答える 3

14

私はついにここで何が起こっているのかを理解しました。Thawteから取得した応答はPKCS#7としてフォーマットされているのに対しkeytool、X.509フォーマットで証明書が発行されていることが期待されます。

openssl証明書をある形式から別の形式に変換するために使用できます。

$ openssl pkcs7 -in thawtetest.crt -print_certs |
  openssl x509 > thawtetest.x509

thawtetest.x509これで、keytoolを使用して、そのtomcat.crtすぐ後ろにインポートできます。

于 2010-04-12T06:43:10.720 に答える
0

最新バージョンを使用している限り、keytoolを使用してPKCS#7チェーンをインポートできるはずです。証明書を個別のファイルにエクスポートすることもできますが、最新バージョンのkeytoolを実行している場合は、PKCS#7ファイル自体のインポートに問題はありません。

于 2010-06-28T19:53:25.553 に答える
0

同じ問題に遭遇したので、私を助けてくれたこの投稿を見つけました。受け取ったトライアル証明書を 1 つのファイルに入れ、キーツールを使用してインポートし、使用した ALIAS (keytool -alias param) が異なることを確認しました(つまり、要求の証明書を作成するときに使用したエイリアスとは異なります)。同じエイリアスにインポートしようとしているのが気に入らないだけなので、これは奇妙なエラー メッセージです。

于 2010-10-03T08:31:44.353 に答える