画像やリンクが無効になっている可能性もあるのでご了承下さい。
昨日「無料 SSL証明書」なんてクエリーを Google 先生に投げつけてみたら、以前よりよく知られている StartSSL 以外にも少し話題になった Let’s Encrypt なんかも目に付くようになったがこれはまだ BETA 前のようで使えず。
更に検索結果を眺めていたら今回紹介する WoSign という認証局が目に付いた。中国にある企業の様だが、英語でも記載があったのでなんとかなりそうだなと試してみた。
なんでも、StartSSL を上位に持っている認証局だそうなので IE や Firefox, Chrome 等で特殊なことをせずともエラー無しで使えるそうだ。
尚、現在、無料で発行されるのは 1 度につき「1 年間有効な 1 つのドメインのみ」となる。
要注意 2016/09/01
GIGAZINE の記事によると、WoSign の証明書が失効される可能性も多いにありそうなので、今後は WoSign より各種証明書を取得するのは控えた方が良いだろう。
WoSign にアカウントを作成
https://buy.wosign.com/free/ にアクセスすると上部に Sign Up とあるので自分のアカウントを作成する。特に難しい事はないが、メールで送られてくる認証コードがスパム扱いされていないか気を付けよう。
証明書を発行してもらう為の情報を入力
アカウント作成後、Sign In して https://buy.wosign.com/free/ に行くと次の様になる。
「Domain name:」に証明書を使用したい FQDN を 1 つだけ入力する。複数入力すると 1 つにつき $1.99 の料金が発生する。
「Period:」は有効期限なので「1 year」にする。2 年以降は有料になる。
「Language:」は「English」を選択。
「Algorithm:」には「SHA2」が良い。WinXP がサポートから外れるが切り落として問題の無い所だろう。
「Captcha:」は画像認証なので見えるまま入力する。
一度は規約に目を通してから「I have read and agree」にチェックを入れる。規約の内容は英文なので翻訳サイトを通すとかしてなんとか読む。大体は証明書の扱いを厳格に守るよう書かれている。要は不正するなとか、管理をしっかりしろだとかそういう事。
今回はサブドメイン www を対象に証明書を発行して貰うようにしたが、既に別のサブドメインで発行していた為、ドメイン名である bp7.org にバインドするかどうかの記述がある。折角なのでそうして貰う事に。
CSR の送信
CSR とは Certificate Signing Request の略で、署名要求証明書になる。CSR に認証局が署名した物がサーバー証明書 (CRT) にとなる。
CSR は自分のサーバーで次の様に作成して「BEGIN の行から END CERFITICATE の行まで」をコピペする方法をとった。
# openssl genrsa 2048 > server.key
Generating RSA private key, 2048 bit long modulus
..........+++
........................+++
e is 65537 (0x10001)
# openssl req -new -key server.key > server.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
State or Province Name (full name) []: Kanagawa
Locality Name (eg, city) [Default City]: Yokohama
Organization Name (eg, company) [Default Company Ltd]: BuCCi
Organizational Unit Name (eg, section) []: www
Common Name (eg, your name or your server's hostname) []: www.bp7.org
Email Address []: 空欄でもいいけど極力自分のアドレスを。
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: Enter のみ
An optional company name []: Enter のみ
# cat server.csr
-----BEGIN CERTIFICATE REQUEST-----
...
...
...
-----END CERTIFICATE REQUEST-----
CSR をコピペしたら「Check CSR」をクリック。問題が無ければ「Submit」をクリックする。
サーバー証明書をダウンロード
CSR を送信すると、そのまま署名されたサーバー証明書をダウンロード出来るリンクが表示されるのでダウンロードを行おう。
ファイル名はホスト名に署名ハッシュアルゴリズムが付いた物になる。Windows でダウンロードを行ったらさっさとサーバーに移して Windows 上からは消しておいた方がいいかも。サーバー上でパーミッションを落とした上で厳重に扱おう。
また、後からでも証明書のダウンロードは My Order から可能である。
サーバー証明書を使う
ダウンロードした証明書をサーバー上に移動させ、ZIP ファイルを展開する。
# unzip www.bp7.org_sha256_en.zip
Archive: www.bp7.org_sha256_en.zip
inflating: for IIS.zip
inflating: for Apache.zip
inflating: for Nginx.zip
inflating: for Other Server.zip
親切に使用するサーバー別に別れている。うちは Apache 2.4 なので「for Apache.zip」を更に展開した。
すると中身は次の様に。
# unzip for\ Apache.zip
Archive: for Apache.zip
inflating: 2_www.bp7.org.crt
inflating: 1_root_bundle.crt
Apache の設定では VirtualHost で複数の https なサイトを動かすように遊んでいた所なので、今回適用させる www.bp7.org 用の VirtualHost の記述をコピペで追加して細かい所を弄った。
大事な所は次の記述。証明書の設置位置は実際の物とは違えて書いている。自分のポリシーにあった管理で構わない。
SSLEngine on
SSLCACertificateFile /path/to/1_root_bundle.crt
SSLCertificateFile /path/to/2_www.bp7.org.crt
SSLCertificateKeyFile /path/to/server.key
順に「認証局の公開鍵、サーバー証明書、サーバーの秘密鍵」とする。
アクセスしてみる
今回テストで SSL を有効にした www.bp7.org は WordPress をいれている位で中身は大した更新もせずに居る死にコンテンツ。このまま SSL にしておこうかなとおもう。
これを各ブラウザでアクセスしてみる。
この通り認証局が云々といった問題は発生しない。「やっぱ SSL 使うのやめた!」ってなったときは HSTS の設定を 0 にしておくのを忘れずに。
証明書の評価
サーバー側の設定としては、昨日書いた記事の通り Mozilla のジェネレータ通りにしてある。その上で WoSign の証明書を使用したサイト www.bp7.org の状況としては、SSL Server Test で Rating は A を取れたので安心と思う。
その他
WoSign で幾つまで証明書を発行して貰えるのかまで調べていないのだが、既に 3 つ程発行してもらっているので結構お手軽に SSL を使用出来るようになると思う。
Google は SSL でアクセス可能なサイトほど検索結果において有利になるそうだから、ブログも上手く絡めていければ良いんだけど、https を喋っているサイト上に http を喋るコンテンツがあると宜しくない。そのへんの調整が直ぐに出来ればいいのだが、なかなか上手く行かないもので。
ともあれ無料で証明書を発行してもらえる WoSign も手段の一つとして持っておくとサイト運営も捗りそうだ。
コメント