Apache2 にオレオレ証明書で HTTPS アクセスできるようにする手順
よくやるけどすぐ忘れるのでメモ。
検証環境
- CentOS 6.3
- Apache 2.2.26
- 設定ファイルの格納フォルダ:
/usr/local/apache2/conf
- httpd.conf に
Include conf.d/*.conf
を書き、/usr/local/apache2/conf.d/*.conf
を自動ロードできるようにしてあります。
チュートリアル
オレオレ証明書を作る。(有効期限は10年)
$ cd /usr/local/apache2/conf/
$ sudo mkdir ssl.crt
$ sudo mkdir ssl.key
$ sudo sh -c "openssl genrsa 2048 > ssl.key/server.key"
$ sudo sh -c "openssl req -new -key ssl.key/server.key > server.csr"
(質問は全てデフォルトのまま Enter)
$ sudo sh -c "openssl x509 -days 3650 -req -signkey ssl.key/server.key < server.csr > ssl.crt/server.crt"
https アクセスを有効にする。
$ sudo sh -c "cat <<EOT > /usr/local/apache2/conf.d/ssl.conf
NameVirtualHost *:443
Listen 443
<VirtualHost *:443>
DocumentRoot /var/www
SSLEngine on
SSLCertificateFile conf/ssl.crt/server.crt
SSLCertificateKeyFile conf/ssl.key/server.key
</VirtualHost>
EOT"
Apache を再起動する。
$ sudo service httpd restart
ダン!