ここでは、各証明書の証明書署名要求(CSR)と署名について記載します。 ※あらかじめ 環境構築を実施してください。 [注意] ルート認証局の環境とは別で作成してください。
次のコマンドで秘密鍵を生成します。
openssl genrsa -aes256 -out ca/private/cakey.pem 2048
※適宜パフレーズを入力してください。(パスフレーズは忘れないように!)
次のコマンドを実行します。 ★<>の部分は適宜変更のこと。
# # 1. 設定 # # CERT=<作成する証明書の種類> # ca : 中間認証局 # server : サーバー証明書 # client : クライアント証明書 # # HASH=<ハッシュアルゴリズム> # -newkey rsa:2048 : SHA-1 # -sha256 : SHA-2 ★推奨 # # DAYS=<証明書の有効期限日数> # # SUBJ=<識別情報> # 識別情報には、次のような情報を指定する。 # /C=国/ST=都道府県/L=市町村/O=組織/OU=部門/CN=コモンネーム # ★サーバー証明書の場合、/CNはドメイン名(またはIPアドレス) # とする必要があります。 CERT=ca HASH=-sha256 DAYS=720 SUBJ="/C=JP/ST=<都道府県>/O=<組織>/OU=<部門名>/CN=<コモンネーム(例:ドメイン名など)>" # # 2. 秘密鍵と証明書署名要求(CSR)を生成 openssl req -new \ ${HASH} \ -config ./openssl.cnf \ -out ca/${CERT}.pem \ -extensions cert_${CERT} \ -days ${DAYS} \ -key ca/private/cakey.pem \ -subj "${SUBJ}"