CA構築(2) ー 証明書の発行
CAを作ったら必要に応じて,証明書を発行します。PEM証明書を出す場合と秘密鍵,公開鍵の対であるPKCS#12を出す場合の手順をここで書きます。
1. サーバ証明書(PEM)を作る場合
手順は,(1)秘密鍵を作る,(2)CSRを作る,(3)CA署名をし証明書を発行する,となります。また,Webサービス用の場合,起動時に毎回秘密鍵のパスワードを聞かれるのを防ぐために,秘密鍵のパスワードをはずす場合があります。コマンドベースでの手順は次の通りです。
>openssl genrsa -aes256 -out Server.key 2048
> openssl req -new -key Server.key -out Server.req
> openssl ca -in Server.req -keyfile CA/private/cakey.pem -cert CA/cacert.pem -out Server.pem -startdate YYMMDDHHMMSSZ -enddate YYMMDDHHMMSSZ
> openssl rsa -in Server.key -out Server.key.nopass (Optional)
証明書を使う対象がApache Web Serverの場合,Server.key.nopass(パスワードなしの秘密鍵)およびServer.pem(PEM形式証明書)です。
2. 個人用証明書(PKCS#12)を作る場合
手順は,(1)秘密鍵を作る,(2)CSRを作る,(3)CA署名をし証明書を発行する,(4)秘密鍵と証明書からPKCS#12ファイルを作る,となります。コマンドベースでの手順は次の通りです。
> openssl genrsa -aes256 -out Person.key 2048
> openssl req -new -key Person.key -out Person.req
> openssl ca -in Person.req -keyfile CA/private/cakey.pem -cert CA/cacert.pem -out Person.pem -startdate YYMMDDHHMMSSZ -enddate YYMMDDHHMMSSZ
> openssl pkcs12 -export -inkey Person.key -in Person.pem -out Person.p12 -certfile ShidenCA.cer -aes256
ちなみに,どちらの手順も秘密鍵の鍵長を2048にしていること,有効期限の時刻を明示的に指定していること,秘密鍵とPKCS#12の暗号をAESにしているのは私の趣味(?)です。
いじょ。

コメントする