基本的にLinuxならrpmで入ってるのですが、
やっぱりソースから入れてみたいので入れてみます。

HP: http://www.openssl.org/

インストールはものすごく簡単で

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

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

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>

Listen 443 SSLStrictSNIVHostCheck off DocumentRoot /usr/local/apache2/htdocs ServerName www.example.com SSLEngine on ..... DocumentRoot /usr/local/apache2/htdocs2 ServerName www2.example.com SSLEngine on

こうすることでwww.example.comとwww2.example.comへ対応するブラウザで
アクセスをすると別々に表示がされます。
それ以外のドメインの場合は_default_にリダイレクトされます。

自己認証と証明書

せっかくSNIでいろいろできるようになったので、
自己認証局を立ててそれを使って各種バーチャルホスト用に証明書を発行しようと思いまする。

編集中

準備

cd /usr/local/ssl/certs

コメントを追加

Plain text

  • HTMLタグは利用できません。
  • 行と段落は自動的に折り返されます。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。
CAPTCHA
半角で
この質問はあなたが人間の訪問者であるかどうかをテストし、自動化されたスパム送信を防ぐためのものです。
ももーい に投稿