1

keytool コマンドを使用して新しい自己署名証明書を作成するシェル スクリプトを実装しています。以下は、証明書を作成するために使用するコマンドです

    echo "# Creating key and Self Signed Certificate"
    keytool -genkey -alias cert -keyalg RSA -storepass "${KEYSTORE_PASS}" -keypass         "${KEY_PASS}" -keystore cert/keystore.jks -validity 3650 -keysize 1024 -dname "C=${CNTRY}, ST=${ST}, L=${LOC}, O=${ORG}, OU=Certificates, CN=${ORG} SEURAT Certificate Authority"

exit_on_error $?

パスワードおよびその他のサブジェクト情報については、ユーザーから入力を取得しています。エイリアス名がすでに存在する場合、このコマンドは失敗します。を使用してエイリアスを削除できます

    keytool -delete -alias 1 -keystore cert/keystore.jks

ただし、エイリアス名が存在しない場合、上記のコマンドは失敗します。では、エイリアス名が存在する場合にシェルスクリプトをチェックインしてから、証明書を削除してその名前で新しいものを作成するか、単に作成することはできますか?

4

1 に答える 1

3

おそらく、既存のエイリアスを最初にリストできます。

[ -z keytool -list -alias cert ] && keytool -genkey -alias cert -keyalg RSA -storepass "${KEYSTORE_PASS}" -keypass
于 2012-07-04T08:10:37.910 に答える