SSL証明書の設定 Apache/2.2

SSL証明書をサーバーに設置

それでは、前回生成し厳重に保管した秘密鍵、公開鍵、そしてStartSSLの証明書をサーバーに設置します。

  • startssl.key
  • startssl.crt
  • ca.pem
  • sub.class1.server.ca.pem

証明書の設置先ディレクトリは通常は /etc/pki/tls/certs です。SFTPを使用してアップロードします。

次にパーミッションを設定します。

cd /etc/pki/tls/certs/
chmod 400 startssl.key startssl.crt ca.pem sub.class1.server.ca.pem
chown root:root startssl.key startssl.crt ca.pem sub.class1.server.ca.pem

Apache 2.2 でSSL証明書の設定

/etc/httpd/conf.d/ssl.conf へ証明書を設定します。

 SSLCertificateFile /etc/pki/tls/certs/startssl.crt
 SSLCertificateKeyFile /etc/pki/tls/certs/startssl.key
 SSLCertificateChainFile /etc/pki/tls/certs/sub.class1.server.ca.pem
 SSLCACertificateFile /etc/pki/tls/certs/ca.pem

シンタックスチェックをします。

httpd -t

Syntax OK となることを確認します。

RailsアプリケーションにSSLを設定

さあ、一気に RailsアプリにSSL設定をしてしまいます。
ユーザーに入力を求めるページは 不具合報告、質問、要望の受け付けページのみとなっているため、このページを強制的にSSL通信にリダイレクトさせます。

class FeedbackController < ApplicationController
  force_ssl
  ........
end

Feedbackページのコントローラに force_ssl メソッドを宣言するだけです。
とは言いつつ、ちょっとだけトラブってしまいました。その内容はまたの機会にて。

Apache 再起動

Apache を再起動します。

sudo service httpd restart

Enter pass phrase: でパスワードが要求されました。秘密鍵を生成した時に指定したパスワードを入力すると、OK: Pass Phrase Dialog successful. となって、正常に起動されました。
Feedbackページを開くと、httpsにリダイレクトされ鍵マークが表示されています。
現在、StartSSLではハッシュアルゴリズムがデフォルトでSHA-2となっているため、Chromeの鍵アイコンはしっかり緑色となっています。

20151205_StartSSL-33


環境
CentOS release 6.5 (Final)
Apache/2.2.15
Rails 4.1.2

シェアする

  • このエントリーをはてなブックマークに追加

フォローする