オレオレにしろちゃんとしたものにしろ、証明書の作成は毎回ググるし、その割には必要なコマンド群にありつけるまでに微妙に目的と違うことを書いているサイトをめぐるのに時間がかかるので、最低限のコマンドだけメモ。気が向いたら更新予定。だいたい何をしているかはわかっているけどコマンドオプションなどは覚えていられないから手っ取り早くコピペしたい人/時向け。
拡張子は、形式を尊重して key, crt の代わりに両方 pem にすることも。
秘密鍵作成
openssl genrsa -out hoge.key 4096
秘密鍵を暗号化保存したい場合は -des や -aes などのオプションを付与し、パスフレーズを入力する。
CSR 作成
openssl req -new -key hoge.key -out hoge.csr
外部の CA に署名してもらう場合(例えばブラウザでそのまま使えるちゃんとした証明書が必要な場合)はこの CSR を渡して証明書を受け取る。
このファイルは署名を受けとることができたらあとは削除して問題ない。
自己署名
openssl x509 -in hoge.csr -days 3650 -req -signkey hoge.key -out hoge.crt
自己署名でない場合、 -signkey ではなく -CA オプションを使用する。