過去問ドリル

LinuCレベル3 セキュリティスペシャリスト アクセスおよび権限制御の強化 問44

アクセスおよび権限制御の強化/SELinux による強制アクセス制御

RHEL 9系のシステムで、テスト目的で /var/tmp/test.html のSELinuxタイプを一時的に httpd_sys_content_t に変更したい。この変更は restorecon を実行すると元に戻ってもよい。適切なコマンドはどれか。

当サイトのオリジナル問題(LinuCレベル3 セキュリティスペシャリストの出題範囲「アクセスおよび権限制御の強化」に対応。実際の試験問題ではありません)

正解:C

解説

chcon コマンドはファイルのSELinuxコンテキストを直接変更します。この変更はファイルシステムに保存されますが、restorecon を実行するかシステムのリラベルを行うとポリシーの定義に従って上書きされます。恒久的にコンテキストを変更したい場合は semanage fcontext でポリシーに登録したうえで restorecon で反映させる必要があります。restorecon はコンテキストを指定のタイプに変えるコマンドではなく、ポリシー定義に戻す操作です。setsebool はSELinuxブール値を変更するコマンドであり、ファイルのコンテキストは変更しません。

選択肢ごとの解説

  • A誤り。semanage fcontext -a はポリシーデータベースに恒久的なコンテキストルールを追加するコマンドで、restorecon を実行した後も変更が維持される。一時的な変更には適さない。
  • B誤り。restorecon は指定したファイルのコンテキストをポリシーの定義に従ったデフォルト値に戻すコマンドであり、コンテキストを任意のタイプに変更する機能はない。
  • C正しい。chcon はファイルのSELinuxコンテキストを直接変更するコマンドで、変更はファイルシステムに保存されるが restorecon やリラベル操作で元に戻る。テスト目的の一時的な変更に適している。
  • D誤り。setsebool はSELinuxのブール値を設定するコマンドで、ファイルのセキュリティコンテキストを変更する機能はない。
LinuCレベル3 セキュリティスペシャリストの問題を演習モードで解く