■ Debian(Sarge) で apache2 SSL の設定
自署名でローカル用に SSL の環境を構築する。
一般に開放するような場合は、もっとずっとちゃんとやらないといけないので、あんまり参考になりませんというか、そんなに詳しく書いてないというか、全然責任持てないんで、ええ。
まずは apache2 のインストールから。
# aptitude install apache2
SSL サイト用の設定ファイルを作成する。雛形が用意されているので、それをコピーしてから編集すると良い。
# cd /etc/apache2/sites-available
# cp /usr/share/doc/apache2/examples/ssl.conf.gz ssl.gz
# gzip -d ssl.gz
最低限書き換える必要があるのはこのくらい。
--- ssl.conf 2006-04-18 15:28:22.000000000 +0900
+++ ssl 2006-04-18 14:37:45.000000000 +0900
@@ -80,14 +80,14 @@
## SSL Virtual Host Context
##
-<VirtualHost _default_:443>
+<VirtualHost 192.168.145.128:443>
# General setup for the virtual host
DocumentRoot "/usr/share/apache2/default-site/htdocs"
-ServerName www.example.com:443
+DocumentRoot "/path/to/root"
+ServerName 192.168.145.128:443
ServerAdmin you@example.com
-ErrorLog /var/log/apache2/error_log
-TransferLog /var/log/apache2/access_log
+ErrorLog /var/log/apache2/error_log.ssl
+TransferLog /var/log/apache2/access_log.ssl
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
@@ -105,7 +105,7 @@
# in mind that if you have both an RSA and a DSA certificate you
# can configure both in parallel (to also allow the use of DSA
# ciphers, etc.)
-SSLCertificateFile /etc/apache2/ssl.crt/server.crt
+SSLCertificateFile /etc/apache2/ssl/apache.pem
#SSLCertificateFile /etc/apache2/ssl.crt/server-dsa.crt
# Server Private Key:
@@ -113,7 +113,7 @@
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
-SSLCertificateKeyFile /etc/apache2/ssl.key/server.key
+SSLCertificateKeyFile /etc/apache2/ssl/apache.pem
#SSLCertificateKeyFile /etc/apache2/ssl.key/server-dsa.key
# Server Certificate Chain:
次は証明書の作成。自分しか使わないので、設問は適当で良いでしょ。apache2-ssl-certificate コマンドを実行すると、/etc/apache2/ssl/apache.pem というファイルが作成される。
# cd /etc/apache2
# mkdir ssl
# apache2-ssl-certificate
モジュールとサイト別設定ファイルを有効にする。
# a2enmod ssl
# a2ensite ssl
apache を再起動。
# /etc/rc2.d/S91apache2 force-reload
これでブラウザでアクセスすると SSL のアクセスになる、が、証明書の警告が表示される。盲目的に証明書を自分のブラウザに組み込む前に、その証明書が自分で作ったものかを確認する必要がある。
まずはサーバ上の SSL の指紋を確認しておく。以下のコマンドで確認出来る。
# openssl x509 -sha1 -noout -fingerprint -in /etc/apache2/ssl/apache.pem
それで、ここに現れる Fingerprint と、ブラウザの警告に表示される証明書の内容の Fingerprint(拇印とかフィンガープリントとか?)が一致するか確認して、本当に自分で用意した証明鍵かどうかを確認した方が良い。世の中何が起きるかわからない。そのための SSL なんだから、最初から慎重にしないとね。
以上。
△トップ
| コメント (0)
| トラックバック(0)