LinuCレベル2 Version 4.5 202試験の例題と解説

208.2 HTTPS向けのApacheの設定

今回は202試験の試験範囲から「208.2 HTTPS向けのApacheの設定」についての例題を解いてみます。

■トピックの概要
このトピックの内容は以下の通りです。

<208.2 HTTPS向けのApacheの設定>
重要度 3

<説明>
HTTPSを提供するためにWebサーバを設定する。

<主要な知識範囲>
* SSL設定ファイル、ツール、ユーティリティ
* サーバの秘密鍵および商用 CA向けのCSR を生成する
* 自己署名証明書を生成する
* 中間 CA を含む鍵および証明書をインストールする
* SNI を使用した Virtual Hosting の設定
* Virtual Hosting およびSSLの使用に関する問題を把握している
* SSLの使用に関するセキュリティ問題および安全でないプロトコルと cipher を無効にする

<重要なファイル、用語、ユーティリティ>
* Apache2 configuration files
* /etc/ssl/*, /etc/pki/*
* openssl, CA.pl
* SSLEngine, SSLCertificateKeyFile, SSLCertificateFile
* SSLCACertificateFile, SSLCACertificatePath
* SSLProtocol, SSLCipherSuite, ServerTokens, ServerSignature, TraceEnable

■例題

Apacheのセキュリティレベルを向上させる設定として正しいものを選択してください。

1. SSLProtocolディレクティブでSSLv2を有効にする
2. ServerTokensディレクティブにOSを設定する
3. HeaderディレクティブでX-Powered-Byヘッダの削除設定をする
4. ServerSignatureディレクティブにOnを設定する

※この例題は実際の試験問題とは異なります。

解答と解説

答えは「3. HeaderディレクティブでX-Powered-Byヘッダの削除設定をする」です。

X-Powered-Byヘッダは、PHPなどのプログラム言語や開発環境の情報がセットさせるレスポンスヘッダです。
このヘッダを確認することで、プログラム言語などのバージョン情報まで知ることができることがあります。
バージョン情報が漏れると、そのバージョンに存在するバグをついた攻撃を受ける可能性が高まります。
そのため、Headerディレクティブで、このヘッダを削除するとセキュリティレベルが向上します。
実際の設定は次のように行います。

Header unset X-Powered-By

その他の選択肢の回答は次の通りです。

1. SSLProtocolディレクティブでSSLv2を有効にする

SSLv2は脆弱性が発見されているSSLプロトコルです。
有効にしてはいけません。

2. ServerTokensディレクティブにOSを設定する

ServerTokensディレクティブは、レスポンスヘッダに含まれるServerヘッダなどの情報を決定するディレクティブです。値にOSを設定した場合、次の例のようにOSとApacheのバージョン情報が表示されます。

$ wget -S -q http://127.0.0.1/
  HTTP/1.1 403 Forbidden
  Date: Fri, 15 Jun 2018 05:02:46 GMT
  Server: Apache/2.4.6 (CentOS)
  Last-Modified: Thu, 16 Oct 2014 13:20:58 GMT
  ETag: "1321-5058a1e728280"
  Accept-Ranges: bytes
  Content-Length: 4897
  Keep-Alive: timeout=5, max=100
  Connection: Keep-Alive

この設定も、バグをついた攻撃を受ける可能性を高めてしまいます。そのため正しい設定としては、Prodを設定して、情報を最小限にします。
Prodを設定した場合には「Server: Apache」のように、ソフトウェアの名前だけがレスポンスヘッダに表示されるようになります。

4. ServerSignatureディレクティブにOnを設定する

ServerSignatureディレクティブがOnの場合、エラーページのフッタにサーバ情報が表示されます。この選択肢もバージョン情報の漏洩に繋がるためOffに設定します。

今回紹介したのは、非常に基本的なApacheのセキュリティ強化の設定です。
基本的ですが、セキュリティ診断を行うとレポートに記載されることも多い項目ですので、日頃から気をつけて設定しましょう。

■例題作成者
株式会社デージーネット OSS研究室 森彰吾

ページトップへ