マスタリングTCP/IP SSL/TLS編
Eric Rescorla 齋藤 孝道 古森 貞 鬼頭 利之
ちょっと、いろいろと面倒なので、簡略的に一気にやり方を書きます。
- StartSSL にブラウザからアクセス
- Sign up で、email certificate (S/MIME)を取得します。Phone は+81-3-123-4567 と最初のゼロを抜かした数字を書きます。
- 次に、Email欄に書いたメールアドレスにパスコードが送られてくるので、遷移した画面にコピペします。
- すると、暗号化の強度を選ぶ事ができ、普通に「高強度の暗号化」を選んで、「Continue」を押すと、ブラウザに個人証明書がインストールされます。
- 次に、ドメインの所有者である事を確認します。
- タブの Validations Wizard をクリックします。
- Type として Domain Name Validation を選択します。
- 自分の所有するドメイン名を指定します。この時点では、www をつける必要はありません。
- ドメインの正当な所有者であることを確認するためのキーが送られてくるメールアドレスを選択します。こちらで任意のアドレスを指定することはできません。「continue」を押すと、メールにキーが送られてきます。このキーを入力すると、ドメインの所有者であることが確認され、Web サーバ用の証明書などが作成できるようになります。メールは、結構時間が掛かります。
- いよいよ Webサーバ用の証明書を作成します。
- 「Certificates Wizard」のタブを押して、SSL/TLS Web Serber Certificate を選択します。
- 自分で作成した秘密鍵ファイルが無い場合は、ここで作成することもできます。10文字以上32文字以下のパスフレーズを入力して 「continue」 を押します。パスフレーズにはアルファベットと数字のみが使えます。(自分で作成した秘密鍵ファイルがある場合は、Skip を押して先に進みます。)
- このファイルをサーバに保存します。説明文では ssl.key という名前で保存と書かれていますが、ここではSSH/telnet等でログインして /最適なディレクトリ/最適な名前.key に保存します。
- サーバのサブドメインを指定します。ここではサブドメインとして www を指定しています。サブドメインを使わないについても証明書には含まれますので、とりあえず www を指定しておきましょう。なお、無料では複数のサブドメインや、ワイルドカード (*.example.org) の指定はできません。
- ここで、作成に時間が掛かります。PEM エンコードされた CRT ファイルができます。これが Web サーバの証明書ファイルです。これをSSH/telnet等でログインして /最適なディレクトリ/最適な名前.crt として保存します。保存したら「continue」をクリックします。これで証明書の作成は終了です。
- 中間ファイルを保存します。SSH/telnet等でログインして、/最適なディレクトリ/で以下のコマンドを入力します。
wget https://www.startssl.com/certs/sub.class1.server.ca.pemwget https://www.startssl.com/certs/ca.pem
- Apacheの場合は、以下の様に設定します。
SSLCertificateFile /最適なディレクトリ/最適なファイル名.crt
SSLCertificateKeyFile /最適なディレクトリ/最適なファイル名.key
SSLCertificateChainFile /最適なディレクトリ/sub.class1.server.ca.pem
SSLCACertificateFile /最適なディレクトリ/ca.pem
Apache+mod_ssl/Apache-SSLの起動時パスフレーズを削除する方法は、wiki を参照下さい。
無料で、SSL証明書が取れるなんて、良い時代になりましたな~