2016/11/15 by プロストサイト – Update 2

SSL証明書の設定と年度更新 – さくらVPS Apacheの事例
稼動中WebサイトでのSSL証明書の設定や年度更新では、サイト障害の可能性も皆無とはいえないだけに結構気を遣います。その対処法の1つは、さくさくと進めることができる、まとまった手順の完備です。本ページは、そのシンプル手順です。
目次
秘密鍵の作成 – 新規
前回設定のダウンドロード – 更新
証明書の購入 – 新規/更新
SSL証明書の設定 – 新規/更新
SSL証明書のテスト – 新規/更新

秘密鍵の作成 – 新規
本ページはSSL動作環境は整っている前提で、証明書回りの作業のみに特化しています。新規では、先ず秘密鍵作成を下記コマンドで行います。
# openssl genrsa -des3 -out ./ssl.key/prostsite.co.jp.key 2048
更新性優先のため、鍵作成は初回のみとし年度更新では使い回しとします。VPSの堅固な基本設定の前提によります。同じ条件下で、障害トラブル防止を優先しパスフレーズは設定パスの事例です。ドメイン名は、具体性を第一に弊社ドメインのprostsite.co.jpの事例によっています。

前回設定のダウンドロード – 更新
更新では、念のための前回設定をダウンドロードしておきます。もしもの時は、最短時間の復旧を可能とします。その、設定ファイル格納の親フォルダ例です。
/usr/local/apache/conf/
下表は、親フォルダ・・・conf/下のサブフォルダの格納状態です。格納先とファイル名は一例です。異なる場合は、以下の手順で読み替えます。
サブフォルダ | 設定ファイル | 備考 |
---|---|---|
ssl.key | prostsite.co.jp.key | 初回設定のまま使い回しが可能 |
ssl.csr | prostsite.co.jp.csr | 毎回設定: 証明書購入前 |
ssl.crt | prostsite.co.jp.crt | 毎回設定: 証明書購入後 |
intermediate_sha256_G2.cer | ||
mail.prostsite.co.jp.crt |
証明書の購入 – 新規/更新
一般に更新のつどcsrを作成の上で、SSL証明書の購入手続きを行います。以下の手順は、新規と更新で同じです。
csrの作成
CSRとは、ドメイン所有者が認証局に提出する署名リクエスト(Certificate Signing Request)です。作成済み秘密鍵をもとに、csrを作成する形です。
# cd /usr/local/apache/conf # openssl req -new -key ./ssl.key/prostsite.co.jp.key -out ./ssl.csr/prostsite.co.jp.csr
以下、表示される案内にしたがって入力を行います。
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [XX]:JP
上のメッセージは、下表の1行目です。案内にそって、順次入力を進めます。Common Name のところは、ワイルドカードドメインの事例によっています。
フィールド | 説明 | 入力例 |
Country Name | 国を示すISO2文字 | JP |
State or Province Name | 組織の都道府県 | kanagawa |
Locality Name | 組織の市区町村 | yokohama |
Organization Name | 組織の名称 | prostsite |
Organization Unit Name | 組織の部署名または-(ハイフン) | service |
Common Name | WebサーバのFQDN – ワイルドカード用 | *.prostsite.co.jp |
Email Addres | 入力不要 | 入力でも証明書は非反映 |
A challenge password | 入力不要 | |
An optional company name | 入力不要 |
入力が終わったら、CSRファイルを開きます。
# vi ssl.csr/prostsite.co.jp.csr
購入時のCSR貼付用に、メモ帳等へコピーしておきます。
-----BEGIN CERTIFICATE REQUEST----- MIICujCCAaICAQAwdTELMAkGA1UEBhMCSlAxETAPBgNVBAgMCGthbmFnYXdhMREw (中間省略) 6tN/qZVltBmUBtuoRe1EgIBqZH37u0BVB2kkWkxa -----END CERTIFICATE REQUEST-----
SSL証明書の購入
SSL証明書の購入を行います。更新のケースでは、一般に90日前から30日ごとに更新案内のメールが届きます。
証明書の受領
証明書受領は、一般にメール受信によります。メールの本文記載の「証明書、中間証明書、証明書+中間証明書」によります。その中の、証明書と中間証明書をサーバーへ記録します。

SSL証明書の設定 – 新規/更新
次の3ステップで、SSL証明書の設定を行います。
証明書
サーバー証明書を開きます(example.jp.crt)。新規の場合は、この時点では空です。年更新の場合は書き換えとなります。
# cd /usr/local/apache/conf # vi ssl.crt/prostsite.co.jp.crt
受信した証明書メールを開き、証明書の—–BEGIN CERTIFICATE—–から、—–END CERTIFICATE—–までの全行をコピペします。
-----BEGIN CERTIFICATE----- MIIEsDCCA5igAwIBAgISESEpcM/4rDzrI8yEW/EwGQJ4MA0GCSqGSIb3DQEBBQUA (中略) x0+QUBcNAS4+uXj9V8EJYNd/wm6pMKMu9LSDG9txwBTRalsVlwtsfVCBQegRaYC9 xgdB7w== -----END CERTIFICATE-----
中間証明書
サーバーの中間証明書を開きます(intermediate_sha256_G2.cer)。新規の場合は、この時点では空です。年更新の場合は書き換えとなります。
# vi ssl.crt/intermediate_sha256_G2.cer
受信した証明書メールを開き、中間証明書の—–BEGIN CERTIFICATE—–から、—–END CERTIFICATE—–までの全行をコピペします。
-----BEGIN CERTIFICATE----- MIIELzCCAxegAwIBAgILBAAAAAABL07hNwIwDQYJKoZIhvcNAQEFBQAwVzELMAkG (中略) +MPpZqmyIJ3E+LgDYqeF0RhjWw== -----END CERTIFICATE-----
結合証明書(証明書+中間証明書)
結合証明書書は、メールサーバー設定用です。
# vi ssl.crt/mail.prostsite.co.jp.crt
結合なので、前1+2項の2つの証明書を2つ続けてコピペします。
なお、受信メールには「証明書+中間証明書(PKCS7形式)」も含まれていますが、こちらはWindows用なので使用しません。

SSL証明書のテスト – 新規/更新
念のための、ステップバイステップのテストです。
opensslコマンドで証明書情報の確認
保存された証明書のテスト確認です。ここで、Apacheの再起動を行います。万が一障害が起こるとすれば、このタイミングです。その意味では、2行目のテストが重要です。
# cd / # service httpd configtest # service httpd restart
続けて、テストを行います。
# openssl s_client -connect www.prostsite.co.jp:443 -showcerts
次のような情報が返されます。最後にokが見えます。
(省略) TLS session ticket lifetime hint: 300 (seconds) TLS session ticket: 0040 - 46 be ac 3a 16 48 35 6f-2b af 16 b6 fc 83 ff ed F..:.H5o+....... (中略) 00b0 - 3a 6d ef 6f 2f b3 5b 8a-8e 28 44 53 aa 97 17 85 :m.o/.[..(DS.... Start Time: 1474674899 Timeout : 300 (sec) Verify return code: 0 (ok) --- closed
外部機関によるテスト
テストサイトで、SSLグレードテストを行います。
本例は、A+グレードでのSSL OK確認となりました。このテストは、SSLの有効性テストが目的なので、ここではグレードについては言及しません。
ブラウザの表示テスト
事実上のテストは完了済みといえますが、Firefoxで表示させた事例です。鍵と、https://が表示されます。なお、鍵に!マークが付くことがありますが、これはむしろ正常です。ページ内のリンクに、http://のアドレスが含むケースです。鍵や!マークは、ブラウザによって表示状況が異なります。
SSLメールの送受信テスト
メールサーバー運用の場合は、送受信テストを行っておきます。
関連トピックス
本手順は、弊社オンラインWebサービスでの標準手順です。Webサービスは、サードパーティによっても提供されます。その、品質保証の一環としてのサービス手順公開です。
タイトル | |
---|---|
0 | オンラインWebサービス一覧 |