StartSSLが大変わり

私がメインで利用しているウェブサーバの証明書は
StartSSL発行してもらっています。
昨年末、油断していてまたもクライアント証明書を期間切れで失効してしまい、
ログインしようとすると別のメールアドレスでサインアップし直せとか言われました。
まあ証明書の有効期限まではまだ余裕があったためとりあえず放置してました。
回復のためのやりとりが面倒なんですよね。

で、いよいよ期限切れしそうということで年明けにStartSSLにアクセスしたところ、
ウェブページのデザインが丸変わりです。
しかも認証にクライアント証明書が必要なくなっており、
今までのログインメールアドレスとワンタイムパスワードで入れました。
ワンタイムパスワードをログインの度、あるいは無操作タイムアウトする度に、
メールアドレス宛にいちいち発行してもらう必要があり面倒ではありますが、
今後は一時的に使用するようなPCからでもアクセス可能ですし、
クライアント証明書の失効や紛失を気にしなくてもよくなりました。
まあ正確に言うとこれはMacやUbuntuの話で、
Windowsでは1度目の認証時にクライアント証明書がインストールされ、
それ以降はワンタイムパスワードの発行は必要なくなります。
いろいろな意味で気をつけましょう。
ともかく、きっとこれまでのクライアント証明書認証は評判悪かったんでしょうね。
というか私のようなクライアント証明書を失効させるユーザが多すぎて、
それへの個別対応が面倒だったのかもしれません。

ところで証明書の取得については基本的に以前から変わっていないのですが、
ちょっとだけ便利になりました。
[Certificates Wizard]の途中で”startcomtool.exe”をダウンロードできます。
これはWindows上で利用できるツールなのですが、
秘密鍵やCSR(署名リクエスト)をローカルで生成できます。
[CSR]タブで[Generate mode]に[OpenSSL]を選び、
[Certificate Type]には[SSL Certificate]を選択し、
[Domain Name]にサーバのホスト名(FQDN)を設定して、
[National Name]は[Japan]にしておきます。
[Private Key]の[Save as…]ボタンをクリックして適当なファイル名を入力し、
[Paswword]と[Confirm]に暗号化された秘密鍵を解除するための
パスワードを入力して[Genarate CSR]ボタンをクリックします。
すると、keyファイルとreqファイルが作成されます。

さて、話は[Certificates Wizard]に戻りますが、
先のreqファイルの中身をCSRとして貼り付けて処理すれば
証明書ファイル群”<ホスト名>.zip”が取得できます。
この中の”ApacheServer.zip”のさらに中にある”2_<ホスト名>.crt”が
以前の説明文中の”ssl.crt”に当たります。
また前述のkeyファイルは”ssl.key.wp”に当たり、暗号化された秘密鍵であり、

# openssl rsa -in <keyファイル> -out ssl.key

を実行して先に設定したパスワードで解読できます。
あとの手順は以前と同様ですので省きます。

何はともあれ今回は証明書を期限が切れる前に更新できました。
まあたとえ切れたとしても大したことはないんですけどね。
大手サイトならえらいことになりますが、
私のサイトなど不特定多数の方が来るわけではないので。