ここまで来るとバカの称号独り占めである。
購入先は
RapidSSL。ここのシングルルートSSL証明書は1つのホスト名だけに対応したタイプ。個人サイトなのでワイルドカードは要らないし、複数ホスト対応も不要。ライトeコマース用と書かれているが、自宅サーバならこの程度で十分である。
RapidSSLはあのGeoTrust(SSL証明書で有名なとこ)内のいち事業部で、中小向けのSSL証明書発行を事業としているところだそうだ。VeriSignの価格表を見るとびびるし、自宅サーバ規模向けのSSL証明書自体今までは発行されていなかったのが実情。確かに経路暗号化だけならプライベートCA発行の自前証明書でもいいのだが、如何せん毎回ブラウザに「信用できない証明書」とか言われるのがイヤになっていた。いい機会だから買ってみた。
具体的には、サーバ上でopensslコマンドでプライベートキーファイル(秘密鍵)を作成、FQDN情報や管理者の氏名・連絡先などを添えてRapidSSLにブラウザから送付して申請する。こっちが正規申請者であることを証明するために、admin@ ドメイン名宛にメールが送られ、そこに記載のURLにアクセスしてApprovalボタンを押せばSSL証明書が発行され、メールで届けられる、という仕組み。いわゆる本人確認はかなり端折られているが、こんなもんだろう。
あとは送られてきたSSL証明書のデータをサーバ上でテキストファイルとして保存し、これをcrtファイル(SSLCertificateFile)とし、Apache(正確にはmod_ssl)の設定で、申請したプライベートキーファイルをSSLCertificateKeyFileとしつつワンセットで扱えばOK。Apache再起動でSSL証明書が有効になる。
……と、Apacheを再起動するとプライベートキーを作ったときに入力したパスワードが要求される。入力しないとApacheが起動しないので面倒この上ない。セキュリティレベルは若干下がるが、プライベートキーからパスワードを引っこ抜く。
#openssl rsa -in <元々のプライベートキー> -out <パスワードなしのプライベートキー>
このあと「パスワードなしのプライベートキー」をSSLCertificateKeyFileに指定すればApache起動時にパスワードを要求されることはなくなる。
ちなみにブラウザによる正規SSL証明書としての認識率。
・Internet Explorer …… OK
・Firefox …… OK
・Zaurus SL-C3000搭載のNetFront …… NG
・i-mode N506i …… NG
ま、こんなもんでしょ。価格が安ければ安いほど認識率は下がる(※一般論)ので、最安の証明書ではこの程度である。逆に言えばPC用ブラウザでは問題なく正規SSL証明書として認識されるということである。ぶっちゃけ全然困らない。