背景
herokuアプリでサブドメインについてもssl通信を利用するため、
ルートからワイルドカードに差し替えを行った。
前のが結構残ってて、もったいないけど。。。
メモ
1. 証明書のコピー
まずは認証会社から送られてきたssl証明書をcrtファイルに保存する。
確認コマンドは次のとおり。
- 期限の確認
openssl x509 -in site.crt -noout -dates
- 中身の確認
openssl x509 -text -noout -in site.crt
2. (RapidSSLの場合)
RaidSSL自体のクロスルート仕様の中間証明書も必要。
次のコマンドで自分のサイト証明書と合体させる。
curl https://knowledge.rapidssl.com/library/VERISIGN/ALL_OTHER/RapidSSL%20Intermediate/RapidSSL_CA_bundle.pem > rapidssl_bundle.pem
cat site.crt rapidssl_bundle.pem > server.key
** server.key
ssl通信をするための秘密鍵(rsa)
openssl rsa -in ssl_example_jp.key -check -noout
** site.csr : ssl通信の為の公開鍵 fqdn(httpsの後に続くドメイン名)がはいってる
openssl req -in site.csr -verify -noout
3. サーバに設置する秘密鍵の準備
証明書申請時に作成した秘密鍵のパスフレーズを解除する
openssl rsa -in site.key -out server.key
4. herokuにpush
heroku certs:update server.crt server.key --app <your app>
5. ssl通信の確認
curl -kvI https://hogehoge.xxxx.com
おまけ
- 鍵ファイル確認方法 次のmodulasキーが同じであればペアが確認できる。
$ openssl rsa -in site.key -text -noout -modulus
$ openssl req -in site.csr -text -noout -modulus
$ openssl x509 -text -noout -in site.crt -modulus
- 現在のheroku設定状況
heroku certs