SSL


サーバソフトでのSSLの設定のやり方

自分のスマホからこのサーバへ接続すると証明書エラーが出てたので、それへの各サーバソフトの対応。
いわゆる「4階層クロスルート方式」への対応ですな。元々手抜きして「3階層クロスルート方式」でやってたのが原因です。
ちなみにRapidSSLでの方法なので、他のCAを使用してる場合は適時読みかえをしてください。

 基本

RapidSSLへの申し込みをして、「中間CA証明書3階層目(RapidSSL CA)」と「サーバ証明書」が届いている物とします。
各証明書、鍵等を個別に保存してあるものとします。
キモは、クロスルート証明書(2階層目) Geotrust Global CAを中間CA証明書に追加してやる所です。

 中間証明書の作成方法

手元に三階層目のCA証明書と二階層目のCA証明書があるものとします。
以下のように、CAファイルを作成

# cat 三階層目CAファイル 二階層目CAファイル > ca.crt

もっと階層が深くなる場合は、最奥階層から順にファイルに追記していけば行ける筈

 各ソフトでの対応


apache

ここ参照
http://valuessl.net/support/etc/rapidsslre_cross/apache1.php

postfix

設定箇所はmain.cfの以下の部分

smtpd_tls_cert_file = /etc/ssl/key/moca.crt
smtpd_tls_key_file = /etc/ssl/key/moca.key
smtpd_tls_CAfile = /etc/ssl/key/moca.espresso.gr.jp_ca.crt

smtp_tls_cert_file = /etc/ssl/key/moca.crt
smtp_tls_key_file = /etc/ssl/key/moca.key
smtp_tls_CAfile = /etc/ssl/key/moca.espresso.gr.jp_ca.crt

cyrus imapd

設定箇所はimapd.confの以下の部分
cyurs imapdでは、読み取りユーザが違うので別ファイルを作成

tls_cert_file: /etc/ssl/key/cyrus.crt
tls_key_file: /etc/ssl/key/cyrus.key
tls_ca_file: /etc/ssl/key/cyrus-moca.espresso.gr.jp_ca.crt
tls_ca_path: /etc/ssl

lighttpd

以下を実行してファイル作成

cat moca.key moca.crt > moca.pem

設定ファイルはlighttpd.confの以下の部分

ssl.pemfile = "/etc/ssl/key/moca.pem"
ssl.ca-file = "/etc/ssl/key/moca.espresso.gr.jp_ca.crt"

nginx