昨年(2014年)ですが、Googleが「HTTPS をランキング シグナルに使用します 」と発表して、より一層SSL/TLSの必要が出てきました気がします。まぁ実質Google云々はどうでも良くて、セキュリティ意識が向上することは良いことですよね。
解析しにくくなるとか言う話もチラホラ聞きますが、利用者にとってはまったく関係なく、安全に利用できるのであればそれが一番。
※SSL/TLSがであれば必ず安全ということではないですよ!
その価値には賛否ありますが、まずは費用を抑えつつHTTPSな環境を整えるとして、PositiveSSLを元に設定方法を記載します。
条件
- WebサーバはApache
- OpenSSLが利用可能
- Common Name は ●●●.com
- 作業ディレクトリは /etc/pki/tls/private/
秘密鍵の作成
まずは秘密鍵を作成します。
パスフレーズがある場合と、パスフレーズがない場合のどちらかで進めます。
パスフレーズなしで鍵長2048bit
# openssl genrsa -out server.key 2048
パスフレーズありで鍵長2048bit
# openssl genrsa -des3 -out server.key 2048
CSRの作成
認証機関に送るCSRを作成します。
注意点はCommon Nameに「www」を付けるか付けないかくらいでしょうか。
あとは何も迷うことはありません。
ここではアイネクシオの住所を例としていきます。
# openssl req -new -key server.key -out server.csr
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Yamanashi
Locality Name (eg, city) [Default City]:Kofu
Organization Name (eg, company) [Default Company Ltd]:inexio
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:●●●.com
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
簡単に上記の説明を書いておきます。
Country Name (2 letter code) [XX]:JP
国名を表す2文字のISO省略語を入力します。
日本であればJPですね。
State or Province Name (full name) []:Yamanashi
所在都道府県を入力します。
Locality Name (eg, city) [Default City]:Kofu
所在市区町村名を入力します。
Organization Name (eg, company) [Default Company Ltd]:inexio
正式な会社名、組織名を入力します。
Organizational Unit Name (eg, section) []:
部署名などを入力します。
任意なので適当にお願いします。
Common Name (eg, your name or your server’s hostname) []:●●●.com
証明書を導入するサイトのFQDNを入力します。
ワイルドカードな場合は「*.●●●.com」とすることで幸せになれる。
ここから先は以下がありますが、何も入力せずにエンターキーだけで問題ないですね。
Email Address []:
A challenge password []:
An optional company name []:
CSRを入力して証明書を受信
作成したCSRを指定のURLから入力し、Comodo社からの連絡を待ちます。
ここではメールで受信する流れを簡単に書いておきます。
証明書類がZIPファイルで送られてくることに注意ですかね。
- 指定URLからCSRを入力する
- 管理者宛(admin@●●●.comなど)に「validation codeを入力しろ」とメールが届くので従う
- 技術者宛に証明書と中間証明書のZIP圧縮ファイルが届く
まとめ
あとはApacheでの設定になります。
証明書を「SSLCertificateFile」、中間証明書を「SSLCACertificateFile」に設定すれば完了です。