SELinuxが使いにくすぎます。

freja-nelson-vDJ0LQJkp6s-unsplash.jpg

質問

SELinuxが使いにくすぎます。
簡単に最低限の設定をするにはどうしたらいいですか。


解答

わかります。


SELinuxは強力ですが、初期設定だと「アクセス拒否されて何が原因かわからない」という状況になりやすいです。
最低限の設定で使いやすくする方法を整理します。


1. 現在のモード確認

sestatus
  • Enforcing:SELinux有効でポリシー強制

  • Permissive:SELinux有効だが、違反時に警告のみ

  • Disabled:無効


2. 一時的に Permissive に変更

  • 設定をテストしたいとき:

sudo setenforce 0
  • モード確認:

getenforce
  • 永続化ではなく、再起動すると元に戻る


3. 永続的にモード変更

sudo vi /etc/selinux/config
  • ファイル内の設定を変更:

SELINUX=permissive
  • 再起動後もPermissiveになる


4. 最低限の設定で運用する方法

方法1:Permissive でログだけ確認

  • Enforcingにせず、まずはログでどの操作がブロックされるか確認

  • ログ:

sudo ausearch -m avc -ts today
  • これで必要な操作だけ後からポリシー追加できる

方法2:必要な対象にだけラベル付け

  • SELinuxは「ファイル/ディレクトリ/プロセスにラベルを付けて権限管理」

  • 例:Webサーバが特定ディレクトリにアクセスできるようにする

sudo semanage fcontext -a -t httpd_sys_content_t "/var/www/html(/.*)?"sudo restorecon -Rv /var/www/html
  • これで Web サーバはアクセス可能になる


5. コマンドまとめ(最低限)

作業コマンド
モード確認sestatus / getenforce
一時的に緩めるsudo setenforce 0
永続的に緩める/etc/selinux/configSELINUX=permissive
ファイルラベル設定semanage fcontext -a -t タイプ パス + restorecon
ログ確認ausearch -m avc -ts today

💡 ポイント

  • まずは Permissiveモードでログ確認 → 必要な権限だけラベルを追加 → 最終的にEnforcingに戻す

  • 無理に全てEnforcingにするよりも、重要なサービスだけラベル付けして管理する方が現実的




Red Hat Enterprise Linux完全ガイド/平初/小島啓史/米山和重【3000円以上送料無料】

価格:4950円
(2025/8/29 16:49時点)
感想(0件)


【単話売】ブラックリストの食えない男 1【電子書籍】[ 美波はるこ ]

価格:165円
(2025/7/29 10:33時点)
感想(0件)


 



この記事へのコメント