格安の SSL 電子証明書を Rapid-SSL で取得してみる

SOFTWARE REPORT


Rapid-SSL

Rapid-SSL.jp では、平成 22 年 2 月 5 日現在、大手の VeriSign 等と比べて格安で SSL サーバー証明書の発行サービスを行っています。

一部の携帯電話で閲覧した場合に警告表示がされることがあるらしいなど、注意点しなければならない点もあるようですけど、SSL による暗号化が行われることには変わりないですし、PC を対象としたサイトであれば心配はないようにも思います。

第三者による身元の確認も行われないのは低価格 SSL サーバー証明書の特徴でもありますし、ドメインに対して設定されるので、企業がメインで使うドメイン等、そのドメインがその人が所有していることさえほぼ明らかならば、それはそれで簡単な証明にはつながるようにも思います。

もちろん暗号化というセキュリティの観点からすると、VeriSign というネームバリューによる安心感も重要な要素の一つであるとは思いますので、その辺りを踏まえて選ばなくてはいけないところではありますけれど。

 

そんな感じで、今回は Rapid-SSL.jp から、平成 22 年 2 月 5 日の時点では年間 3,000 円と低価格な SSL 電子証明書を実際に取得してみようと思います。

なお、平成 23 年 12 月 26 日にここで取得した証明書の更新を行ってみましたけど、方法は以下に記す手順と同じ感じでした。以前は 1024 ビットの暗号化鍵でよかったのが、今回は 2048 ビットが必須になっていたので秘密鍵から作り直す必要がありましたけど、暗号化鍵の長さも、CSR ファイルに含めた登録住所にも変更がなければ、作成済みの CSR ファイルをそのまま使っても大丈夫な感じです。

 

ちなみに、平成 23 年 12 月 26 日での証明書の取得料金は 2,600 円になっていました。

複数年契約をすると割安になってきますけど、こういう形の伴わないサービスみたいなものって、ドメインとかと同じように、次第にどんどん安くなって行くように思えるので、料金面で考えるなら、複数年で契約するか1年ごとで契約するかは、判断が難しいところのようにも思えますね。

 

Rapid-SSL から SSL サーバー証明書を取得する

まず、申請に必要な CSR ファイルの作成から行います。

ここでは OpenSSL を用いて、次のように証明書の作成を行うことにします。

openssl genrsa -des3 -out ./key/ssl-site1.key 2048

このようにすることで、SSL サーバー証明書に必要な秘密鍵を "./key/ssl-site1.key" として生成することができました。途中でパスフレーズの入力画面となるので、安全のためパスフレーズを設定しておくことにします。

秘密鍵が生成できたら、それを用いて CSR ファイルを生成します。

openssl req -new -key ./key/ssl-site1.key -out ./csr/ssl-site1.csr

作成の際には、秘密鍵に設定したパスフレーズの入力が必要となる他、次のような SSL サーバー証明書に書き込まれる情報の入力が必要となります。

Country Name (2 letter code) 日本の場合は "JP" と 2 文字で入力します。
State or Province Name (full name) 都道府県名を入力します。例えば "TOKYO" 等になるのでしょうか。
Locality Name (eg, city) 市区町村名を入力します。例えば "Machida-shi" となるのでしょうか。
Organization Name (eg, company) 組織名を入力します。個人の場合はドメインの登録者名で良いようです。
Organizational Unit Name (eg, section) 組織の部門名を入力します。不要な場合は入力しなくても良いようです。
Common Name (eg, your name or your server's hostname) SSL 証明書を設置する Web サイトのドメイン名を入力します。例えば "http://ssl.ez-net.jp/" であれば "ssl.ez-net.jp" となります。
Email Address 承認メールアドレスを入力します。ここで設定できるのは、ドメイン取得時に公開連絡窓口として設定したアドレスか、または "コモンネーム" に設定したドメインの "admin@" や "info@" といった、特定のメールアドレスだけとなるそうなので注意が必要です。
A challenge password 設定しません。
An optional company name 設定しません。

これで、先ほど作成した秘密鍵に対応した CSR ファイル "./csr/ssl-site1.csr" の生成できました。これをもって、SSL サーバー証明書の取得申請を行う運びとなります。

なお、申請の際には WHOIS で組織名として表示される英語表記と "Organization Name" とをできるだけ一致させておくなど、第三者が見て SSL 証明書の申請が適切なものと判断できるように配慮しておく必要があるとのことでした。

 

 

Rapid-SSL.jp の申し込みページへアクセスすると、そこには申請における注意事項が掲載されています。

それらに目を通した上で、申込フォームに必要事項を入力します。必要事項は契約期間などといった簡単なものがほとんどでした。

重要なものとしては、予め作成しておいた CSR ファイルの内容をテキストで貼り付けるところでしょうか。貼り付ける CSR は、"-----BEGIN CERTIFICATE REQUEST-----" を含むそこから "-----END CERTIFICATE REQUEST-----" を含むそこまでといった感じになります。

後は、サーバーの種類を適切なもの (今回の自分の環境では "Apache 2") を選択して、申込内容の確認画面へと進みます。

 

なお、このとき自分は、以下のエラーメッセージが表示さてしまいました。

Missing or Invalid Field: invalidKeySize The CSR you submitted has a 512 bit key size.We do not allow RapidSSL certificate issued with a CSR less than 1024 bits.You must generate a new CSR that has a 1024 bit or higher key size.

これは最初に "openssl genrsa -des3 -out ./key/ssl-site1.key 1024" を実行しようとしたときに、最後の 1024 の入力を忘れてしまったためです。このようなエラーのときには再度 CSR ファイルを正しく作り直した上で、申請をし直すようにします。

 

ここまでが上手く出来たら、後は SSL サーバー証明書申込者の情報を入力して、申し込みを完了します。

支払い方法としてクレジットカードか銀行振り込みを選択の上、支払いを済ませ、後は "SSL 証明書発行承認依頼通知" が送られてくるのを待つことになります。

 

クレジットカード払いの場合だからか、すぐに "SSL 証明書発行承認依頼通知" が送られてきました。

送られてきたメールの URL をクリックして承認画面を表示して、内容事項に間違いなければ 【承認します】 ボタンをクリックします。すると、SSL サーバー証明書が記されたメールが届くので、これで SSL サーバー証明書の発行手続きは完了となります。

 

後は記載された SSL サーバー証明書部分のテキストを "./csr/ssl-site1.crt" ファイルなどとして Web サーバーに保管します。

このあたりについては EZ-NET: Linux の使い方 Web サーバー apache の SSL 証明書を差し替える (CentOS 5.4) が参考になるかもしれません。

例えば Apache ならば SSL サイト設定の "SSLCertificateFile" と "SSLCertificateKeyFile" とに、それぞれ "SSL サーバー証明書" と "秘密鍵" とを設定すれば、これで SSL サイトの運営準備が完了します。