OpenSSLの証明書作成スクリプト(CA.sh)を理解する
サーバ証明書はOpenSSLに付属のスクリプトで簡単に作れますが、中で何をやってるのか分かりません。ここではopensslのコマンドを調べながら、一つ一つのステップを調べていきます。
/etc/ssl/openssl.cnfは適当に設定しておいてください。ファイルパスが合っていればOKかと思います。
新しい認証局を作る
スクリプトだと./CA.sh -newcaに相当する手順です。
認証局のファイルは/etc/ssl/CAに入れるものとします。
mkdir /etc/ssl/CA chmod 700 /etc/ssl/CA cd /etc/ssl/CA
認証局の秘密鍵を生成します。ここでは2048bitを指定しています。
openssl genrsa -out ca.key 2048
CSRを作成します。
openssl req -new -days 3650 -key ca.key -out ca.csr
/etc/ssl/openssl.cnfを編集し、CA証明書を作成する設定に変更します。
#x509_extensions = usr_cert # The extentions to add to the cert
x509_extensions = v3_ca
自己署名して証明書を作成します。
mkdir newcerts certs crl private touch index.txt echo 00 > serial openssl ca -in ca.csr -out ca.crt -keyfile ca.key -selfsign -days 3650