検索

3.4. 設定の実例

download PDF
SELinux でどのように Apache HTTP Server を補完するのか、 Apache HTTP Server の全機能をどのように管理するのかなど、 実践的な例を以下に示します。

3.4.1. 静的なサイトを実行する

静的な web サイトを作成する場合は、 その web サイトの .html ファイルに httpd_sys_content_t タイプのラベルを付けます。 デフォルトでは、httpd_sys_content_t タイプのラベルが付いたファイルには Apache HTTP Server による書き込みは行なえません。 次のように、読み取り専用 web サイト向けのファイルを格納する新しいディレクトリを作成します。
  1. root ユーザーで mkdir /mywebsite を実行し最上位にディレクトリを作成します。
  2. root ユーザーで /mywebsite/index.html ファイルを作成します。 以下のコンテンツを /mywebsite/index.html にコピーして貼り付けます。
    <html>
    <h2>index.html from /mywebsite/</h2>
    </html>
    
  3. /mywebsite/ および配下のファイルやサブディレクトリへの Apache HTTP Server 読み取り専用アクセスを許可するため、/mywebsite/httpd_sys_content_t タイプのラベルを付けます。root ユーザーで次のコマンドを実行してラベルの変更をファイルコンテキスト設定に追加します。
    # semanage fcontext -a -t httpd_sys_content_t "/mywebsite(/.*)?"
    
  4. root ユーザーで restorecon -R -v /mywebsite を実行してラベルの変更を行ないます。
    # restorecon -R -v /mywebsite
    restorecon reset /mywebsite context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
    restorecon reset /mywebsite/index.html context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
    
  5. この例の場合、 root ユーザーで /etc/httpd/conf/httpd.conf を編集します。 既存の DocumentRoot オプションをコメントアウトします。 DocumentRoot "/mywebsite" オプションを追加します。 編集結果は以下のようになるはずです。
    #DocumentRoot "/var/www/html"
    DocumentRoot "/mywebsite"
    
  6. root ユーザーで service httpd status を実行し Apache HTTP Server の状態を確認します。 サーバーが停止している場合は、 root ユーザーで service httpd start を実行してサーバーを起動します。 サーバーが実行中の場合は、 root ユーザーで service httpd restart を実行しサーバーの再起動を行ないます (これにより httpd.conf への変更がすべて適用されます)。
  7. web ブラウザで http://localhost/index.html に行きます。 次のように表示されます。
    index.html from /mywebsite/
    
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.