HOMEサンプル問題・例題解説201試験の例題と解説208.1 Apacheの基本的な設定

201試験の例題と解説

208.1 Apacheの基本的な設定

今回は201試験の試験範囲から、「208.1 Apacheの基本的な設定」についての例題を解いてみます。

■トピックの概要

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

<208.1 Apacheの基本的な設定>
重要度 4

<説明>
Web サーバのインストールと設定。これには、サーバの負荷と性能の監視、クライアントからのユーザアクセスの制限、モジュールとしてのスクリプト言語をサポートする設定、およびクライアントユーザの認証設定も含まれる。また、サーバのオプション設定でリソースの使用を制限することも含まれる。仮想ホストを使用するようWebサーバを設定し、ファイルへのアクセスをカスタマイズする。

<主要な知識範囲>
・Apache 2.4 の設定ファイル、用語、ユーティリティ
・Apacheのログファイルの設定と内容
・アクセス制限の方法とファイル
・mod_perlとPHPの設定
・クライアントユーザを認証するファイルとユーティリティ
・最大リクエスト数、最小/最大サーバ数およびクライアント数の設定
・Apache 2.4 における仮想ホストの実装 (専用 IPアドレスがある場合とない場合)
・ファイルへのアクセスをカスタマイズするために、Apache の設定ファイルで redirect文を使用する

<重要なファイル、用語、ユーティリティ>
・アクセスログとエラーログ
・.htaccess
・httpd.conf
・mod_auth_basic, mod_authz_host and mod_access_compat
・htpasswd
・htgroup
・apachectl, apache2ctl
・httpd, apache2


■例題

下記の設定の意味として正しいものと選択してください。

-------------------------------------------------------
<Directory /var/www/html>
  <RequireAll>
     Require all granted
     Require not ip 192.168.100.0/24
  </RequireAll>
</Directory>
-------------------------------------------------------

1. すべてのアクセス元からの/var/www/htmlへのアクセスを許可する
2. この設定は無効である
3. 192.168.100.0/24からのみ/var/www/htmlへのアクセスを許可する
4. 192.168.100.0/24からのみ/var/www/htmlへのアクセスを拒否する

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

解答と解説

答えは 「4. 192.168.100.0/24からのみ/var/www/htmlへのアクセスを拒否する」です。

Apache HTTP Server 2.4からアクセス制御は、従来のmod_accessモジュールから、mod_authz_coreモジュールをベースとして、多数のモジュールを組み合わせてアクセス制御を行う方法に変更になりました。

例題の場合、mod_authz_coreモジュールとmod_authz_hostモジュールの機能を利用しています。

例題の動きとしては、以下のような動きになります。

・「<RequireAll>…</RequireAll>」は、内部に設定されたRequireディレクティブの条件にすべて一致している場合のみ、アクセスが許可される
・「Require all granted」は、すべての接続元からのアクセスを許可するという意味になる
・「Require not ip 192.168.100.0/24」は、192.168.100.0/24のネットワーク帯ではない場合にアクセスが許可されるという意味になる

つまり、192.168.100.0/24からのアクセスのみ拒否して、それ以外はすべて許可という動きになります。

RequireAll以外にも、以下のディレクティブが存在します。

RequireAny … 内部に設定されたRequireディレクティブの条件のどれかに一致した場合、アクセスが許可される
RequireNone … 内部に設定されたRequireディレクティブの条件のどれかに一致した場合、アクセスが拒否される

よく見るアクセス制御の設定として以下のような書き方があります。

<Directory /var/www/html>
   Require ip 172.16.0.0/24
   Require ip 172.16.1.0/24
</Directory>

この場合は、「<RequireAny>…</RequireAny>」で囲まれた動きと同等の動きをします。

Apache HTTP Server 2.4からアクセス制御の仕組みが変更になった、ということを知っている人は多いと思います。一方でその変更点について、深く調べていない人も多いと思います。この機会に
一度機能を調べなおしてはいかがでしょうか?


■例題作成者
株式会社デージーネット ソリューション開発部    森 彰吾 氏

  • 今回の解説について、理解できないポイントがあればどんどん質問を。
  • 採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
  • ご質問・ご意見はこちら
  • ※上記の解説とその内容については、例題作成者の監修です。
    内容や試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。

このページのトップへ