2017-07-13 22 views
0

以前と同じエイリアスを維持してサーバー側のキーストアの証明書を更新しようとしています。このエイリアスの下には実際には3つの異なる証明書がありますそれらのうちの1つだけを更新する。ssl - エイリアスで証明書の1つを更新する

:その後、私は使用して古いエイリアスを削除

keytool error: java.lang.Exception: Failed to establish chain from reply 

keytool -import -trustcacerts -alias <same_as_before> -file new.cer -keystore <same_as_before>.jks 

が、例外を取得:私はこれを最初に試みた

Alias name: alias 
Creation date: 
Certificate chain length: 3 
Certificate[1]: 
Owner:...... 
... 
Certificate[2]: 
... 

:彼らは似ている

keytool -delete -alias <same_as_before> -keystore <same_as_before> 

を入力して、再度インポートします。今回はうまくいきましたが、2つの証明書も削除されました。 私は直接(削除せずに)インポートしようとしましたが、新しいエイリアス名で動作しましたが、古い証明書の有効期限が切れているサーバーの動作についてはわかりません。何か提案してください?

答えて

0

問題を解決しました。つまり、チェーン内の1つの証明書だけを更新することはできません。私の場合、3つの連鎖証明書は、使用する証明書、この証明書に関連付けられたルートCAおよび中間CAです。

私が行ったことは、更新された証明書からルートCA証明書と中間CA証明書をエクスポートし、ルート→中間→更新という順序でkeytoolを使用してそれらをインポートすることです。次に.jksファイルの内容を確認すると、対応する証明書が更新されました。