Debian の Apache2 で SSL セットアップ

SSL 設定を追加するに当たって、Debian(Sarge)のファイル構成を調べて理解を深めていったら、段々その合理的な構成がわかってきた。

/etc/apache2/
 sites-available/ 利用可能な仮想ホスト設定ファイルのあるフォルダ
 sites-enabled/   利用する設定のシンボリックリンクが置かれるフォルダ
 mods-available/  利用可能な追加モジュール設定ファイルのあるフォルダ
 mods-enabled/    利用する設定のシンボリックリンクが置かれるフォルダ

mods-available にはインストール済みのモジュール用の設定ファイルが置かれているが、a2enmod/a2dismod を使って使用/不使用が簡単に行える。

また sites-available に自前で VirtualHost 設定を入れておくと a2ensite XXX や a2dissite XXX のようにして設定を追加/削除できる。

たとえば ssl 関係の設定をするには /etc/apache2/sites-available/ssl を準備するだけ。これも /usr/share/doc/apache2/examples/ssl.conf.gz をコピーして一部を書き換えれば終了。SSL の場合は証明書が必要なので、予め apache2-ssl-certificate を実行しておく。

その後、

 a2ensite ssl

としてサイト設定の追加、そして

 a2enmod ssl

で設定終了。

この方法では Apache2 がマイナーアップグレードが行われて再インストールを行っても、sites-available/ 以下の追加ファイルはそのまま残ることになり、とても安心してソフトウェアの更新が行える。とてもありがたい。

ほかにもありがたい設定はあるんだろうけど、そもそもこうしたことを理解するのにいまいちどう調査したらよいかがわかりにくいのが Debian のキツイところだろうか。

以下、手順の記録。

root@almond:/etc/apache2# apache2-ssl-certificate

creating selfsigned certificate
replace it with one signed by a certification authority (CA)

enter your ServerName at the Common Name prompt

If you want your certificate to expire after x days call this programm
with -days x
Generating a 1024 bit RSA private key
...++++++
.++++++
writing new private key to '/etc/apache2/ssl/apache.pem'
 -----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
 -----
Country Name (2 letter code) [GB]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Suginami-ku
Organization Name (eg, company; recommended) []:
Organizational Unit Name (eg, section) []:
server name (eg. ssl.domain.tld; required!!!) []:www.example.com
Email Address []:webmaster@example.com


root@almond:/etc/apache2# cd /etc/apache2/sites-available
root@almond:/etc/apache2# gunzip -c /usr/share/doc/apache2/examples/ssl.conf.gz > sites-available/ssl
root@almond:/etc/apache2# vi sites-available/ssl

<中略>
#   General setup for the virtual host
DocumentRoot "/var/www/"
ServerName www.example.com:443
ServerAdmin webmaster@example.com
ErrorLog /var/log/apache2/error-ssl.log
TransferLog /var/log/apache2/access-ssl.log
<中略>
SSLCertificateFile /etc/apache2/ssl/apache.pem
<中略>
SSLCertificateKeyFile /etc/apache2/ssl/XXXXXXXX.0
<中略>

root@almond:/var/log/apache2# a2ensite ssl
Site ssl installed; run /etc/init.d/apache2 reload to enable.
root@almond:/var/log/apache2# a2enmod ssl
Module ssl installed; run /etc/init.d/apache2 force-reload to enable.
root@almond:/var/log/apache2# /etc/init.d/apache2 restart
Restarting web server: Apache2.

トラックバック(5)

PukiWiki/TrackBack 0.2 - リンク集/玄箱 (2005年8月 1日 18:01)

リンク集> 玄人志向 -- 製品のページ。玄箱王コンテストも定期的にやっている 2005-02-26 15:56:14 (土) LinkStation/玄箱 をハックしよう -- 箱の並びがすごい! 2005-02-26 15:58:02 (土) 玄人志向「玄箱」を試す -- [IMPRESS] 2005-02-26 15:58:58 (土) 玄.... 続きを読む

PukiWiki/TrackBack 0.1 - 日記/2005-09-22 (2005年9月22日 11:47)

DebianでのApache2設定メモ † うちのサーバーはコンパイル時にSSLモジュール組み込んで、makeでインストール、直接httpd.confを編集してサイトの設定をしています。ただ、この方法だとhttpd.confの修正などが怖くてマイナーなバージョンアップについていけてない.... 続きを読む

PukiWiki/TrackBack 0.1 - apache2debian (2005年9月27日 03:04)

インストール † ↑設定 † ↑ポート番号 † 次のコマンドでファイルを開く。80の値を適当な数字に修正する。 vi /etc/apache2/port.conf 編集前 Listen=80 ↑inet.dの設定 † inet.dで起動できるように設定します。 次のコマ... 続きを読む

夜の精活- OPN支店 - - apache2+ssl (2006年8月18日 01:32)

apache2でsslを有効にする。 続きを読む

MT4が出たのは知っていたが別に必要がなかったのでほって置いたのに、なぜか昨夜火... 続きを読む

コメントする

aws+ logo

About Me

フリーランスで、テクニカルディレクターたまにプログラマーをやっている後藤和貴(ごとうかずたか)です。

最近はAWSなどクラウドコンピューティングに興味あり。導入支援サービスAWS+はじめました

自己紹介的なものはまだ書いてないので、ひとまずこちら

連絡先は kaz.goto[at]gmail.com。

最近のブログ記事

閉じる