LinuCレベル3 3SS試験の例題と解説
主題3SS.01アクセスおよび権限制御の強化
1.2SELinuxによる強制アクセス制御
LinuCレベル3 セキュリティスペシャリスト試験の出題範囲から「1.2 SELinuxによる強制アクセス制御」についての例題を解いてみます。
このテーマは、システムをセキュアに構築するために必要なセキュリティ機能であるSELinuxに関する内容が含まれます。実機での操作を通し、設定方法を含むSELinuxの管理をしっかりと理解しておきましょう。
LinuCレベル3 セキュリティスペシャリスト 3SS試験 出題範囲
例題
SELinuxが現在"enforcing"モードで稼働しているLinuxシステムにおいて、システムの再起動を行わずに、一時的にアクセス制限のログ記録のみを行う"permissive"モードに変更したい。この目的を達成するための適切な操作は、次のうちどれですか。
- "getenforce 0"を実行する
- "setenforce 0"を実行する
- "setenforce 1"を実行する
- /etc/selinux/configの"SELINUX=permissive"に変更し、"systemctl restart selinux"を実行する
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「2. "setenforce 0"を実行する」です。
SELinuxの動作モードには、「enforcing(ポリシーを強制)」「permissive(ログ記録のみで許可)」「disabled(無効)」の3つがあります。稼働中のシステムで再起動せずに一時的にモードを切り替えるには、"setenforce 0"コマンドを使用します。即座にSELinuxの動作モードをpermissiveモードに変更でき、アクセス違反はブロックされず、audit.log などに記録のみが行われるようになります。
また、その他選択肢は以下のようなものになります。
"getenforce"コマンドは現在のSELinuxの動作モードを「確認」するためのコマンドです。設定を変更することはできず、引数に0を指定してもエラーになります。
"setenforce 1"は、現在のモードをenforcingモードに変更するためのコマンドです。問題の要件(permissiveへの変更)とは逆の操作になります。
"/etc/selinux/config"ファイルの編集は、次回のシステム再起動時以降に永続的に設定を反映させるための手順です。一時的な変更には使用しません。また、SELinuxはカーネルレベルで動作するため、"systemctl restart selinux"のようなサービス再起動コマンドで設定を適用することはできません。
なお、SELinuxについては以下で詳細を確認することができます。
Red Hat Enterprise Linux ドキュメント: SELinux の状態とモードの変更
https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/8/html/using_selinux/changing-selinux-states-and-modes_using-selinux
例題作成者
鯨井 貴博 (LinuCエヴァンジェリスト/登録インストラクター、LPI-Japanアカデミック認定校 ゼウスITトレーニングセンター)