基本的にLinuxならrpmで入ってるのですが、
やっぱりソースから入れてみたいので入れてみます。
インストールはものすごく簡単で
cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar zxvf openssl-1.0.1c.tar.gz
cd openssl-1.0.1c
./config enable-shared
make
make test
make install
echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
ldconfig
でおしまいです。
SNI
せっかくApache2.2.12以降でSSLのバーチャルホスト(Server Name Indication)
ができるようになったので対応させてみます。
cd /usr/local/src/openssl-1.0.1c
make clean
./config enable-shared enable-tlsext
make
make test
make install
これでSSL側は対応完了です。
この後にApacheを再コンパイルして完了です。
Apache設定
/usr/local/apache2/conf/extra/httpd-ssl.conf
Listen 443
SSLStrictSNIVHostCheck off
<VirtualHost _default_:443>
DocumentRoot /usr/local/apache2/htdocs
ServerName www.example.com
SSLEngine on
.....
</VirtualHost>
<VirtualHost *:443>
DocumentRoot /usr/local/apache2/htdocs2
ServerName www2.example.com
SSLEngine on
</VirtualHost>
こうすることでwww.example.comとwww2.example.comへ対応するブラウザで
アクセスをすると別々に表示がされます。
それ以外のドメインの場合は_default_にリダイレクトされます。
自己認証と証明書
せっかくSNIでいろいろできるようになったので、
自己認証局を立ててそれを使って各種バーチャルホスト用に証明書を発行しようと思いまする。
編集中
コメントを追加