CentOS 8インストール後にSELinuxとファイアーウォールの解除
CentOS 8 のインストール直後は「SELinux」と「ファイアーウォール」の設定によりターミナル等でSSH接続などの通信が出来ない状況のため、まずこのあたりの設定を含め、サーバーが構築できるように準備します。
SELinuxとファイアーウォール解除による目的
- CentOSからインターネットにつなげてソフトウェアをDL出来るようにする。
- 他PCからリモートログインを出来るようにする。
▼SELinuxについて
SELinux(Security-Enhanced-Linux)
WEBサーバーやファイルサーバーなどのサービス毎にコントロールの権限を調整することが出来るセキュリティ制御機能で、サーバーに不正アクセスされても、この機能で保護させることが可能です。
SELinuxの制御は難解且つサービスの正常動作の妨げになる場合が多いことから、インストール直後にOFFにして、一通りサーバーを構築した後に設定するのが良いかと思います。
▼firewallについて
デフォルトではインバウンドの通信はほとんど許可されておらず、SSHやサーバーなどを構築した場合、関連のポートを開けなければなりません。
各サーバーの構築時の不具合等に切り分けが難しくなるので、一旦ファイアーウォールは切っておきます。
SELinuxの設定変更
▼SELinuxの状態確認
command # getenforce
enforcing | 有効 |
disabled | 無効 |
permissive | 無効だが警告を出す |
▼SELinuxの無効化
command # vi /etc/selinux/config
/etc/selinux/config
SELINUX=enforcing
↓
# SELINUX=enforcing
SELINUX=disabled
▼サーバー再起動で反映
command # reboot
▼再起動後に再度ログインして状態確認
command # getenforce disabled
▼下記コマンドでも確認可能
command # sestatus SELinux status: disabled
▼一時的に無効化
command # setenforce 0
▼一時的に有効化
command # setenforce 1
ファイアーウォールの設定を解除
▼ファイアーウォールの状態確認
command # systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor p> Active: active (running) since Sat 2020-09-26 17:42:08 +03; 2h 21min ago
「Active: active (running)」となっているので起動している。
▼ファイアーウォールのサービスを停止
command # systemctl stop firewalld
▼再度ファイアーウォールの状態確認
command # systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor p> Active: inactive (dead) since Sat 2020-09-26 20:08:42 +03; 4s ago
「Active: inactive (dead)」となっているので停止。
▼自動起動設定を無効
command # systemctl disable firewalld
▼サーバーリブートで起動確認
起動後に再度「systemctl status firewalld」を実行してリブート直前と同様なら想定通りの動作となります。
command # reboot