無料で WoSign に SSL 証明書を発行してもらう

スポンサーリンク

 昨日「無料 SSL証明書」なんてクエリーを Google 先生に投げつけてみたら、以前よりよく知られている StartSSL 以外にも少し話題になった Let’s Encrypt なんかも目に付くようになったがこれはまだ BETA 前のようで使えず。
 更に検索結果を眺めていたら今回紹介する WoSign という認証局が目に付いた。中国にある企業の様だが、英語でも記載があったのでなんとかなりそうだなと試してみた。
 なんでも、StartSSL を上位に持っている認証局だそうなので IE や Firefox, Chrome 等で特殊なことをせずともエラー無しで使えるそうだ。
 尚、現在、無料で発行されるのは 1 度につき「1 年間有効な 1 つのドメインのみ」となる。

要注意 2016/09/01

 GIGAZINE の記事によると、WoSign の証明書が失効される可能性も多いにありそうなので、今後は WoSign より各種証明書を取得するのは控えた方が良いだろう。

中国最大級の認証局「WoSign」がニセの証明書を発行していたことが判明
by Barney Moss無料でSSL証明書を発行してくれることで、多くの自宅サーバーユーザーに重宝されている中国最大級の認証局「沃通(WoSign)」が、「偽物の証明書」を大量に発行していた

WoSign にアカウントを作成

 https://buy.wosign.com/free/ にアクセスすると上部に Sign Up とあるので自分のアカウントを作成する。特に難しい事はないが、メールで送られてくる認証コードがスパム扱いされていないか気を付けよう。
23_wosign_1_signup

証明書を発行してもらう為の情報を入力

 アカウント作成後、Sign In して https://buy.wosign.com/free/ に行くと次の様になる。
23_wosign_1_enterinfo
 「Domain name:」に証明書を使用したい FQDN を 1 つだけ入力する。複数入力すると 1 つにつき $1.99 の料金が発生する。
 「Period:」は有効期限なので「1 year」にする。2 年以降は有料になる。
 「Language:」は「English」を選択。
 「Algorithm:」には「SHA2」が良い。WinXP がサポートから外れるが切り落として問題の無い所だろう。
 「Captcha:」は画像認証なので見えるまま入力する。
 一度は規約に目を通してから「I have read and agree」にチェックを入れる。規約の内容は英文なので翻訳サイトを通すとかしてなんとか読む。大体は証明書の扱いを厳格に守るよう書かれている。要は不正するなとか、管理をしっかりしろだとかそういう事。
今回はサブドメイン www を対象にしてみた。
 今回はサブドメイン www を対象に証明書を発行して貰うようにしたが、既に別のサブドメインで発行していた為、ドメイン名である bp7.org にバインドするかどうかの記述がある。折角なのでそうして貰う事に。

CSR の送信

 CSR とは Certificate Signing Request の略で、署名要求証明書になる。CSR に認証局が署名した物がサーバー証明書 (CRT) にとなる。
23_wosign_3_sendCSR
 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 を送信すると、そのまま署名されたサーバー証明書をダウンロード出来るリンクが表示されるのでダウンロードを行おう。
23_wosign_4_get_crt
 ファイル名はホスト名に署名ハッシュアルゴリズムが付いた物になる。Windows でダウンロードを行ったらさっさとサーバーに移して Windows 上からは消しておいた方がいいかも。サーバー上でパーミッションを落とした上で厳重に扱おう。

 また、後からでも証明書のダウンロードは My Order から可能である。
23_wosign_5_myorder

サーバー証明書を使う

 ダウンロードした証明書をサーバー上に移動させ、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 にしておこうかなとおもう。
 これを各ブラウザでアクセスしてみる。

IE11

IE11


EDGE

EDGE


Cyberfox (Firefox 派生)

Cyberfox (Firefox 派生)


Google Chrome

Google Chrome


 この通り認証局が云々といった問題は発生しない。「やっぱ SSL 使うのやめた!」ってなったときは HSTS の設定を 0 にしておくのを忘れずに。

証明書の評価

 サーバー側の設定としては、昨日書いた記事の通り Mozilla のジェネレータ通りにしてある。その上で WoSign の証明書を使用したサイト www.bp7.org の状況としては、SSL Server Test で Rating は A を取れたので安心と思う。
23_wosign_7_testsummary

その他

 WoSign で幾つまで証明書を発行して貰えるのかまで調べていないのだが、既に 3 つ程発行してもらっているので結構お手軽に SSL を使用出来るようになると思う。
 Google は SSL でアクセス可能なサイトほど検索結果において有利になるそうだから、ブログも上手く絡めていければ良いんだけど、https を喋っているサイト上に http を喋るコンテンツがあると宜しくない。そのへんの調整が直ぐに出来ればいいのだが、なかなか上手く行かないもので。
 ともあれ無料で証明書を発行してもらえる WoSign も手段の一つとして持っておくとサイト運営も捗りそうだ。

スポンサーリンク