IdP/SPで用いる自己署名証明書の作成方法例
IdP/SPで用いる自己署名証明書のOpenSSLによる作成例を示します。
(補足) この例では下記の鍵ペア及び証明書が作成されます。
鍵アルゴリズム: RSA
鍵長: 3072bit
主体者DN:
CN = idp.example.ac.jp有効期限: 1185日 (3年3ヶ月)
まず、下記内容でOpenSSLの設定ファイル(openssl.cnf)を作成します。
[ req ]
prompt = no
encrypt_key = no
default_bits = 3072
default_md = sha256
distinguished_name = dn
x509_extensions = ext
string_mask = utf8only
[ dn ]
commonName = ${ENV::CN}
[ ext ]
basicConstraints = critical, CA:true
keyUsage = critical, digitalSignature, keyEncipherment, keyCertSign
extendedKeyUsage = serverAuth, clientAuth
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always, issuer
subjectAltName = DNS:${ENV::CN}openssl reqコマンドにより鍵ペア及び証明書を作成します。
$ export CN=idp.example.ac.jp DATE=$(date +%Y%m%d)
$ openssl req -new -x509 -newkey rsa -keyout $CN-$DATE-selfsigned.key -days 1185 -out $CN-$DATE-selfsigned.cer -config openssl.cnfopensslコマンドの実体がLibreSSLの場合、${ENV::CN}の部分でエラーが発生する可能性があります。その場合はopenssl.cnfの${ENV::CN}の部分(2か所)をホスト名で置き換えてください。
最後に、作成した証明書を確認します。
$ openssl x509 -in $CN-$DATE-selfsigned.cer -noout -text