Apache + mod_sslでhttps環境を構築
自宅で使う分にはSSLで環境を作る必要はないかもしれないですが、仕事上というか 興味というかでセキュアな環境を作ってみたいと思います。
ApacheでSSLを使うにはいくつかの方法があるようです。 Apacheにパッチとして提供されているApache-SSLを使用するか、 モジュールとして提供されているmod_sslを使用します 今回は、mod_sslを使用したいと思います。
mod_sslもApache-SSLもOpenSSL又はSSLeayを必要とするようです。 SSLeayを使用した例では、インストール段階で失敗するとの情報が多く見られたので 今回は、OpenSSLを使用します。
インストール
まず、OpenSSLがないと始まらないので
#apt-get install openssl
OpenSSLをインストールします。(aptを使ったのは面倒だったからです。) #/usr/local/srcへmod_sslとapacheのソースをダウンロードします。 次にApache,mod_sslの展開をしコンパイルします。
# tar -zxvf apache_X.X.X.tar.gz
# tar -zxvf mod_ssl-X.X.X-X.X.X.tar.gz
# cd mod_ssl-X.X.X-X.X.X
configureでコンパイルの設定をするとき、Apacheの展開されたディレクトリと OpenSSLのインストールディレクトリを指示するとあったので、OpenSSLの インストール先を探しconfigureに追加します。
# ./configure --with-apache=../apache_1.3.33 --with-ssl=/usr/bin
--enable-rule=SHARED_CORE --with-layout=Apache --enable-module=so
--enable-module=status --enable-module=info --enable-module=rewrite
--enable-module=usertrack
mod_sslの方は問題ないようですが、Apacheの方でエラーが表示されています。 sslのパスに問題があるようです。ライブラリのパスかと推測してパスを変更してみますが 同じようにエラーが表示されます。何かが足りないようです。(今後の課題ですね。) しかたがないので、OpenSSLを削除しソースからインストールします。
# apt-get remove openssl
# wget ftp://ftp.openssl.org/source/openssl-X.X.X.tar.gz
# tar -zxvf openssl--X.X.X.tar.gz
# cd openssl--X.X.X
# ./config
# make
# make test
# make install
OpenSSLのインストールが終了します。/usr/local/sslにインストールされるので –with-sslの部分を–with-ssl=/usr/local/sslに変更してconfigureを実行します。
Now proceed with the following commands:
$ cd ../apache_1.3.33
$ make
$ make certificate
$ make install
今度は成功したようです。
# cd ../apache_X.X.X
# make
# make install
You now have successfully・・・と表示されインストールが終了します。