なつねこメモ

主にプログラミング関連のメモ帳 ♪(✿╹ヮ╹)ノ 書いてあるコードは自己責任でご自由にどうぞ。記事本文の無断転載は禁止です。

StartSSLを使ってのSSLの設定

先日の SSH に続いて今日は SSL でちょっとだけ困ったので、メモっておくよ。

ちなみに、随分前に IIS でやった時には問題がなかった。


Apache HTTP Server にて、StartSSL を使って HTTPS 接続の設定を行う。

ちなみに、すでに StartSSL の登録は済んで、証明書発行済みとする。

まず、SSL 証明書を置くディレクトリへ移動。

cd /etc/pki/tls/certs

発行してもらった公開鍵と秘密鍵を設置する。

sudo vim startssl.crt
sudo vim startssl.key

次に、StartSSL の証明書を設置する。

sudo wget https://startssl.com/certs/ca.pem
sudo wget https://startssl.com/certs/sub.class1.server.ca.pem

パーミッションを設定。

sudo chmod 400 startssl.crt
sudo chmod 400 startssl.key
sudo chmod 400 ca.pem
sudo chmod 400 sub.class1.server.ca.pem

次に、 /etc/httpd/conf.d/ssl.confを編集。

sudo vim /etc/httpd/conf.d/ssl.conf

設定は下のようにしておく。 100 行目辺り

SSLCertificateFile /etc/pki/tls/certs/startssl.crt

110 行目辺り

SSLCertificateKeyFile /etc/pki/tls/certs/startssl.key

120 行目辺り

SSLCertificateChainFile /etc/pki/tls/certs/sub.class1.server.ca.pem

130 行目辺り

SSLCACertificateFile /etc/pki/tls/certs/ca.pem

このへんは一例なので、ファイル名とかは適宜読み替える。
これで一応の設定は完了。

次は、QUALYS SSL LABS の評価を A ランクまで上げてみるよ。
ちなみにこのままだと C ランク
f:id:MikazukiFuyuno:20150721211051p:plain

まず、文句言われてる POODLE 対策をする。
/etc/httpd/conf.d/ssl.conf を開いて、95 行目あたりを下のように変更。

SSLProtocol all -SSLv2 -SSLv3

次は弱い暗号化スイートを無効にしておく。
Mozilla の推奨している設定を使用しています。

SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA

これだけ設定しておくと、A ランクが取れる
f:id:MikazukiFuyuno:20150721215808p:plain

ただ、コレでもちょっと気になる部分が。
f:id:MikazukiFuyuno:20150721220626p:plain
SHA1 でやってるよと警告が出てる。

そこで、配布してるところに SHA2 のがあったので、証明書をいれる。

sudo wgeth https://startssl.com/certs/class1/sha2/pem/sub.class1.server.sha2.ca.pem

これで行けると思ったら、解決はしない。
んで Google で探してみると、解決法が見つかった。

StartSSL で取得した証明書が sha1 で認証されてしまう - Qiitaqiita.com

どうやら配布してるものがなにかちがうっぽい。
上の証明書を入れると、ちゃんと警告がでなくなる。

以上、メモ終了ー