はじめての SSL 設定
今までサーバをちょこちょこさわっていたけれど、実はsslの設定をちゃんとしたことがなかった。ということではじめて、sslの設定をやってみました。
参考サイト1:[CSR生成] Apache1.3 + mod_ssl + OpenSSL(新規・更新)|SSLサーバ証明書ならグローバルサイン
参考サイト2:Technical Note : SSLを利用するApacheウェブサーバーの構築方法 - Nature's Linux Tech Portal
- openssl の確認
- 秘密鍵を生成
- csr を生成
- ssl 申込 GlobaSign などで ssl の申込を行います。この時にさっき作った csr を使います。
- 証明書の設定 証明書がメール等で送られてくるので、これをコピーして server.crt のようなファイル名にしてサーバの ssl.crt ディレクトリに保存します。権限は 400 で。
- 中間証明書の設定 これもメール等で送られてくるので、ssl.crt に保存します。400。
- Apache の設定 以下のような感じです。
- パスフレーズについて パスフレーズが設定されていると Apache の再起動の度にパスワードを要求されます。 回避する為には、パスフレーズを削除するか、SSLPassPhraseDialog というディレクトリブを設定することで回避できます。(Nature's Linux のページに書いてます。) パスフレーズの削除は以下コマンドで。
- その他 今回以下ファイルも修正しました。
- 最後に
openssl version
openssl genrsa -des3 -out ./ssl.key/ssl.globalsign.com.key 1024
openssl req -new -key ./ssl.key/ssl.globalsign.com.key -out ./ssl.csr/ssl.globalsign.com.csr
この時、国とか組織とか聞かれるので前もって用意しておきます。
SSLEngine on
SSLCertificateChainFile /usr/local/apache/conf/ssl.crt/dvcacert.cer
SSLCertificateFile /usr/local/apache/conf/ssl.crt/ssl.globalsign.crt
SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/ssl.globalsignkey
cp -p server.key server.key.org
openssl rsa -in server.key -out server.key
vi /etc/sysconfig/apache
修正内容は以下の行がコメントアウトされていたので、コメントを外しました。
OPTIONS=-DSSL
service apache configtest
service apache restart