OpenSSLのCAコマンドを使ったCA構築
CA構築の準備
mkdir /tmp/pki
cd /tmp/pki/
cp /etc/pki/tls/misc/CA .
cp /etc/pki/tls/openssl.cnf .
- CA(CA作成スクリプト)やopenssl.cnfの設置場所はOSによって異なるので、予め探しておく。
- 今回は作業を/tmp/pki以下で行う。
openssl.cnfの修正
vi openssl.cnf
[ CA_default ]
dir = /tmp/pki/myCA
- 今回はCAを/tmp/pki/myCAに作成する。
CA証明書・秘密鍵の作成
CA作成スクリプトの実行
SSLEAY_CONFIG="-config ./openssl.cnf" DAYS=3650 CATOP=./myCA ./CA -newca
- Organizational Unit NameやEmail Addressは未入力で良いが、他の項目は何か入力する
CA作成スクリプトによって作成されたファイル
- CA証明書 /tmp/pki/myCA/cacert.pem
- CA秘密鍵 /tmp/pki/myCA/private/cakey.pem
CA証明書の内容確認
openssl x509 -in ./myCA/cacert.pem -text
CA証明書をPEM形式からDER形式(IE等ブラウザ用)に変換
openssl x509 -in cacert.pem -outform der -out cacert.der
サーバ証明書の署名要求を作成
SSLEAY_CONFIG="-config ./openssl.cnf" ATOP=./myCA ./CA -newreq
- 以下のファイルが作成される。
- newkey.pem サーバ秘密鍵
- newreq.pem サーバ証明書の署名要求
サーバ署名要求(CSR)をCA証明書で署名してサーバ証明書を作成
SSLEAY_CONFIG="-config ./openssl.cnf" CATOP=./myCA ./CA -sign
参考