SELinuxの理解と設定 – RHELでセキュリティを強化する方法
- 作成日 2024.11.15
- redhat
この記事では、Red Hat Enterprise Linux (RHEL) 環境でSELinuxを活用する方法について、具体的なステップと設定手法を集約しました。SELinuxを利用することで、システムのセキュリティを強化し、不正アクセスからの保護を強化します。
SELinuxの基本概念
SELinuxは、Linuxでのマンドトリ制御(Mandatory Access Control, MAC)を実現します。特定のラベルを使って、プロセスとファイル間の許可を制御します。
SELinuxの動作モード確認
システム上でSELinuxがどのように実行されているか確認します。
sestatusSELinuxモードの切り替え
動作モードを設定ファイルで変更し、強制モードまたは許可モードの切り替えを行います。
sudo vi /etc/selinux/config
SELINUX=enforcing
変更を永続的にするためには再起動が必要
sudo setenforce 1 # 一時的な変更基本ポリシーの理解
ポリシーには、ターゲットポリシーとMLSポリシーがあります。デフォルトのターゲットポリシーは、RHELシステムでの標準です。
SELinuxコンテキストの確認
ファイルやプロセスのSELinuxコンテキストを確認します。これにより、リソースのセキュリティラベルを把握します。
ls -Z /var/www/html
ps -eZ | grep httpdポリシーのトラブルシューティング
特定のポリシーが原因でアクセスが拒否される場合、その詳細をチェックします。
sudo ausearch -m AVC,USER_AVC -ts recent
sudo audit2why < /var/log/audit/audit.logブール値を使ったポリシー調整
特定の機能をオンまたはオフにするためにブール値を設定します。
sudo getsebool -a
sudo setsebool httpd_enable_homedirs onカスタムポリシーの作成
ユーザー定義のポリシーを作成し、カスタムニーズに対応します。
sudo audit2allow -M custompolicy
sudo semodule -i custompolicy.ppポリシーのインポートとエクスポート
ポリシーを他のシステムで共有するために、ポリシーのエクスポートとインポートを行います。
semodule -l > mypolicies.txt
semodule -i mymodule.ppファイルとディレクトリのラベル設定
適切なラベルを設定し、予期しない制限を回避し、正しくアクセス制御を設定します。
sudo chcon -t httpd_sys_content_t /var/www/html/index.html
restorecon -Rv /var/www/html定期的なポリシーのレビュー
SELinuxの設定を定期的に確認し、不必要な制限や許可がないかをチェックします。
SELinux管理ツールの活用
setroubleshootサーバーやsemanageコマンドを使って更なる管理を行います。問題解決の際にはsetroubleshootが役立ちます。
sudo yum install setroubleshoot
sudo semanage fcontext -lこれらの手段を活用することで、SELinuxをより有効に活用し、RHELのセキュリティを高度化できます。
-
前の記事
RHELのパッケージ管理を極める – DNFとRPMの活用法 2024.11.15
-
次の記事
mongoDB フィールドを追加する 2024.11.15
コメントを書く