Apacheあれこれ SSLなど
Linux LPIC編。(第9章 Webサーバとプロキシサーバ)
Apacheあれこれの続きを。バーチャルホスト(仮想ホスト)やSSLなど。
Apacheのバーチャルホスト機能を使うと、一台のサーバで複数のWebサイト運用が
可能になる。バーチャルホストには名前ベースとIPアドレスベースの2種類がある。
IPアドレスベースではバーチャルホストごとにIPアドレスが必要になるため、名前ベース
の運用の方が多いと思われる。
名前ベースのバーチャルホスト
1台のサーバに1つのIPアドレス&複数のドメイン名を設定。
httpd.confではNameVirtualHostディレクティブでリクエストを受け付ける
IPアドレスを指定し、VirtualHostディレクティブで名バーチャルホストごと
の設定を記述する。
例
NameVirtualHost 192.168.100.10
<VirtualHost 192.168.100.10>
ServerName calcio.net
DocumentRoot /var/www/calcio.net/html
ErrorLog logs/calcio.net-error_log
CustomLog logs/calcio.net_access_log common
:
:
</VirtualHost>
VirtualHostディレクティブのコンテナは、バーチャルホストの台数分となる。
名前ベースのバーチャルホストは、DNS側の設定で別々の名前が同じIPアドレスを返す
よう設定しておく必要がある。
IPベースのバーチャルホスト
1台のサーバに複数のIPアドレス&複数のドメイン名を設定する。
NameVirtualHostではなく、Listenディレクティブで、IPアドレスの記述を台数分記述。
例
Listen 192.168.100.1:80
Listen 192.168.100.2:80
:
:やはり台数分のVirtualHostディレクティブに、名バーチャルホストごとの設定をしていく。
次にSSLとサーバ証明書の導入手順について。
SSL(Secure Socket Layer)は、公開鍵暗号を使用した認証方式でセキュリティを確保する。
Apacheではmod_sslモジュールを利用してSSLに対応。
以下はサーバ証明書(サイト証明書)を認証局から入手する流れ
1. 公開鍵と暗号鍵、証明書発行要求書(CSR)を作成する
※opensslコマンドで作成
2.作成した公開鍵やCSRを、必要書類や手数料などと共に認証局(CA)へ送付
3.CAが証明書を発行のうえ返送する。
※この証明書により、WebサーバがWebブラウザに対して
サイトの身元を明らかにする
4.返送された証明書をWebサーバにインストールする
サーバ証明書や秘密鍵をサーバの適切なディレクトリに配置したら(パーミッションを
設定したりとか、いろいろあるはずけど教科書にも書いてないし、省略)、
httpd.confの設定を。
LoadModuleディレクティブで/mod_ssl.soを指定し、Listenディレクティブを443に。
SSlCertificateFileでサーバ証明書ファイル名を、SSlCertificateKeyFileでサーバ秘密鍵
ファイル名を指定。
関連ファイル名も一応。
拡張子が「.key」がサーバ秘密鍵、「.csr」は証明書発行要求書、「.crt」はサーバ証明書。
とりあえずこれくらい押さえておけばいいかな。
最後に、Webサーバの監視に使えるmod_statusとmod_infoについて。
mod_statusモジュールの利用でサーバの稼働状況を、mod_infoモジュールでサーバの
設定にかんする情報をWebブラウザに表示させることができる。
やはりhttpd.confのLoadModuleでロードして、SetHandlerディレクティブでserver-status
などと指定する。
次回は第9章最後、プロキシサーバについて。
出典
Linux教科書LPICレベル2(翔泳社)
Linux記事一覧はこちらをどうぞ
↓ ↓ ↓
Linux-index