#環境
##OS
CentOS 6.7
##OpenSSL
OpenSSLをアップデートする。
# アップデート
$ sudo yum install openssl
# バージョン確認
$ openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013
#認証局(CA)の構築
# CA作成用のスクリプトと設定ファイルがあるので、/etc/pki/CAにコピーして使用
$ sudo cp -p /etc/pki/tls/misc/CA /etc/pki/CA/
$ sudo cp -p /etc/pki/tls/openssl.cnf /etc/pki/CA/
# スクリプトを修正
$ sudo vi /etc/pki/CA/CA
== 以下を修正 ==
CADAYS="-days 3650" # 10 years
SSLEAY_CONFIG="-config /etc/pki/CA/openssl.cnf"
# openssl.cnfを修正
$ sudo vi /etc/pki/CA/openssl.cnf
== 以下を修正 ==
countryName_default
stateOrProvinceName_default
localityName_default
0.organizationName_default
# CA秘密鍵とCA証明書の作成
$ sudo /etc/pki/CA/CA -newca
== 生成物 ==
/etc/pki/CA/cacert.pem・・・CA証明書
/etc/pki/CA/private/cakey.pem・・・CA秘密鍵
/etc/pki/CA/careq.pem・・・CA証明書の作成に使ったCSR
# CA秘密鍵のアクセス制限 (rootのみアクセス可能)
$ sudo chmod 600 /etc/pki/CA/private/cakey.pem
#SSL証明書の作成
# サーバー用SSL証明書のためのCSRと秘密鍵を生成
$ sudo /etc/pki/CA/CA -newreq
== 生成物 ==
./newreq.pem・・・サーバー証明書の作成に使用するCSR
./newkey.pem・・・サーバー秘密鍵
# 作成したCSRに署名する
$ sudo /etc/pki/CA/CA -sign
== 生成物 ==
./newcert.pem・・・サーバー証明書
# 秘密鍵のパスワードを解除する(必須ではない)
$ sudo openssl rsa -in newkey.pem -out cert.key
== 生成物 ==
./cert.key・・・パスワードを解除したサーバー秘密鍵
あとは、cert.keyとnewcert.pemを適当な場所に置いて使用する。
#参考資料
- https://www.qoosky.io/techs/c41cdb3b7f
- https://rms-digicert.ne.jp/howto/basis/decrypt_key.html
- http://www.asobou.co.jp/blog/web/ssl
- http://gihyo.jp/design/serial/01/server-knowledge/0003?page=1
- http://qiita.com/numa_numa/items/c53d137f06fe6266df03
- http://qiita.com/Ka2ya30201/items/0d4ae08e1eda5fa6c821