2013-06-13 30 views
8

私はCAの公開証明書を持っています。この証明書を使用してJava SSL接続を作成します。私はHow can I use different certificates on specific connections?Java SSL connection with self-signed certificate without copying complete keystore to clientと言いました。これから私は証明書をキーストアにインポートする必要があることを理解しています。しかし、私はCAからキーストアを受け取っていません。私はキーストアを作成し、それに公開証明書をインポートしようとしました。一致していない回答とキーストアに公開鍵公開鍵証明書をキーストアにインポート中にエラーが発生しました

私はCAからキーストアを必要とするか、私は何か間違ったことをやっています:

のkeytoolエラー:java.lang.Exceptionをしかし、私は次のエラーを取得しますか?キーストアを作成するために使用さ


コマンド:

keytool -import -v -alias tomcat -file signed-cert.pem -keystore keystore.jks 
+0

少し具体的に教えてください。どのコマンドを使用してキーストアを作成し、証明書をどのようにインポートしますか? のkeytool -import -v -alias tomcatの-file署名-cert.pemを-keystoreキーストア:証明書をインポートする のkeytool -genkey -alias tomcatに-keyalg RSA -keystoreたkeystore.jks コマンド:キーストアを作成する –

+0

コマンド。 jks – DanMatlin

+0

@ Zeutheusあなたはこの仕事をする方法を見つけましたか?私は同様の問題に直面しており、上記の問題に対する解決策が役立つでしょう。 – themanwhosoldtheworld

答えて

5

私はあなたが適切にプロセスサインイン証明書を、次のされていないと思う:

keytool -genkey -alias tomcat -keyalg RSA -keystore keystore.jks 

コマンドは、証明書をインポートするために使用されます。チェックアウト手順の下に、以下のことにより、それらを適切に実施するために、この議論https://forums.oracle.com/thread/1533940を:

  1. ストア keytool -genkey -keyalg RSA -keystore test.keystore -validity 360 を作成します(これは「mykeyを」の別名を持つキーストアとキー(DC)を生成)

  2. 作成証明書署名要求(CSR)。 http://www.instantssl.com/ssl-certificate-support/csr_generation/ssl-certificate-index.html

  3. 輸入署名証明書 (ステップ3から署名付き証明書を貼り付けた場合のCRLFに注意) keytool -import -alias newkey -file <signed cert file> -keystore test.keystore (重要:? keytool -certreq -keyalg RSA -file test.csr -keystore test.keystore (これはテキストCSRファイルを生成します)

  4. は、生成された証明書に署名しましたこれにステップ1とは別のエイリアスがあります(デフォルトは「mykey」)。

  5. クライアント用の公開鍵をエクスポートします keytool -export -alias mykey -file test.publickey -keystore test.keystore

サーバーシステム上
  • トラスト keytool -genkey -keyalg RSA -keystore test.truststore -validity 360 を作成する(これは "にmykey" の別名とキーストアとキー(DC)を生成)

  • インポート公開鍵 - テスト用SSLのSOAPサービスのクライアントを経由して keytool -import -file test.publickey -keystore test.truststore

  • 問題は、ステップ1と6のエイリアスをデフォルトで "mykey"にすることでした。 私はステップ6に変更する場合:(I手順7で "-alias apublickey" を追加しましたが) keytool -genkey -alias testAlias -keyalg RSA -keystore test.truststore -validity 360

    上記の手順7を使用してインポートすることができます。 これは私のために働いた。

    3

    keyStore explorer guiツールを使用してキーストア/証明書を生成し、証明書をキーストアにインポート/エクスポートすることができます。

    0

    キーストアでSSL証明書をインポートするときに同じ問題が発生しました。私の場合、ルートCAの証明書はチェーンから抜けていました。ルート証明書をファイルにエクスポートし、キーストアに手動でインポートしました。

    関連する問題