Thursday, April 22, 2010

Apache + SSL

Apache2にSSLを設定する。

先日の記事の時点で、基本的なパッケージ導入は終わっているので、後はそれを有効にしていくだけ。

 まずはmod_sslの有効化。
$ sudo a2enmod ssl
 基本的にはSSLを有効化するだけで、自動的に443をListenしてくれるはず。

 鍵の作成もコマンド一発。これで作られる鍵は、RSA1024ビット、期間は約10年。
$ sudo mkdir /etc/apache2/ssl
$ sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
 これで/etc/apache2/ssl/以下にapache.pem ともうひとつ(XXXXXXXX)ファイルが出来る。
 鍵の期間や強度を変更したい場合にはopensslコマンド参照。

 SSL用設定ファイルは環境に合わせて書き換える。
$ sudo pico /etc/apache2/sites-available/default-ssl

<中略>
NameVirtualHost *:443 ←追加
<VirtualHost *:443>

DocumentRoot "/var/www"
ServerName hogehoge.hoge
<中略>
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLCertificateKeyFile /etc/apache2/ssl/XXXXXXXX
 修正が終わったら、設定ファイルを有効にする。
$ sudo a2ensite default-ssl
 で、再起動。
$sudo /etc/init.d/apache2 reload
 これで自分認証だけどhttpsでアクセスできるようにはなる。

No comments: