このブログ記事では、CentOS Stream 9でSELinuxとFirewallのステータスを確認し、必要に応じて無効化する方法について解説します。また、SELinuxとFirewallの重要な役割についても簡単に説明します。
SELinuxとは?
SELinux (Security-Enhanced Linux) は、Linuxシステムに強力なアクセス制御を追加するセキュリティ機構です。通常の権限システムに加えて、SELinuxは「ポリシー」と呼ばれるルールセットを使用して、各プロセスがどのファイルやネットワークリソースにアクセスできるかを厳密に制御します。
SELinuxの重要な機能:
- プロセスのアクセス権を厳密に制御
- 悪意のある攻撃や侵害を防止
- システムのセキュリティを強化
Firewallとは?
Firewall (ファイアウォール) は、システムと外部ネットワークの間に立ち、データの送受信を監視および制御するセキュリティ機構です。Firewallを適切に設定することで、許可されたトラフィックのみがシステムに到達できるようにします。
Firewallの重要な機能:
- 不正アクセスのブロック
- システムへの攻撃を防止
- ネットワークのセキュリティ管理
SELinuxのステータス確認と無効化方法
まず、SELinuxが有効かどうかを確認するためには、以下のコマンドを使用します:
sestatus
もし「enabled」と表示された場合、SELinuxは有効になっています。SELinuxを無効化するには、設定ファイルを編集する必要があります。以下の手順に従ってください。
手順:
- 設定ファイルを開く:
sudo nano /etc/selinux/config
- `SELINUX=enforcing`を`SELINUX=disabled`に変更
- ファイルを保存して閉じる
- システムを再起動する:
sudo reboot
# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. # See also: # https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/using_selinux/changing-selinux-states-and-modes_using-selinux#changing-selinux-modes-at-boot-time_c> # # NOTE: Up to RHEL 8 release included, SELINUX=disabled would also # fully disable SELinux during boot. If you need a system with SELinux # fully disabled instead of SELinux running with no policy loaded, you # need to pass selinux=0 to the kernel command line. You can use grubby # to persistently set the bootloader to boot with selinux=0: # # grubby --update-kernel ALL --args selinux=0 # # To revert back to SELinux enabled: # # grubby --update-kernel ALL --remove-args selinux # SELINUX=disabled # SELINUXTYPE= can take one of these three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
Firewallのステータス確認と無効化方法
Firewallが有効かどうかを確認するには、次のコマンドを実行します:
sudo systemctl status firewalld
もし「active (running)」と表示された場合、Firewallは有効です。無効化するには、以下のコマンドを使用します:
sudo systemctl stop firewalld
sudo systemctl disable firewalld
このコマンドでFirewallを停止し、システムの起動時に自動的に起動しないようにします。
[root@localhost ~]# sudo systemctl status firewalld ○ firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; preset: enabled) Active: inactive (dead) Docs: man:firewalld(1)
まとめ
SELinuxとFirewallは、システムのセキュリティを確保するための重要なツールです。しかし、特定の開発環境や用途によっては、無効化することが求められる場合があります。無効化する際には、セキュリティリスクを考慮し、慎重に判断してください。
ハッシュタグ: #CentOS #SELinux #Firewall #セキュリティ設定