Linux でのファイアウォール管理:firewalld
Linux でのファイアウォール管理を行う際のツールとして、firewalld が頻繁に用いられます。その設定の柔軟性と強力な機能から、firewalld は中級者から上級者にとって有用なツールとなっています。ここではその基本的な使い方について詳しく解説します。
firewalld の概要
firewalld は Linux のファイアウォール管理のためのフレームワークであり、特に Red Hat 系列の Linux ディストリビューション(RHEL, CentOS, Fedora など)で標準となっています。firewalld は動的な管理を可能とし、そのためにルールを一時的に適用するか、永続的に適用するかを選べます。また、それぞれのルールは特定の「ゾ ーン」に適用されます。
firewalld の基本的なコマンド
firewalld の基本的なコマンドは以下の通りです。これらのコマンドはシステムの firewalld の状態を制御するために使用されます。
firewall-cmd --state # 現在のfirewalldの状態を表示します。
systemctl start firewalld # firewalldを有効化します。
systemctl stop firewalld # firewalldを無効化します。
firewall-cmd --reload # firewalldの設定を再読み込みします。
ルールの設定
firewalld の主な機能の一つは、独自のファイアウォールルールを設定することです。これにより、特定のサービスへの接続を許可または拒否するルールを設定することができます。以下に具体的な例を示します。
サービス名による設定
もし SSH(Secure Shell)への接続を許可したい場合、次のようにします。
firewall-cmd --zone=public --add-service=ssh
このコマンドは、public ゾーンで SSH (通常ポート 22 を使用) への接続を許可します。
ポート番号による設定
ポート番号を指定して接続を許可したい場合、以下のようにします。
firewall-cmd --zone=public --add-port=80/tcp
このコマンドは
、public ゾーンで TCP プロトコルのポート 80 への接続を許可します。
プロトコルとポート番号による設定
特定のプロトコルとポート番号を指定して接続を許可することも可能です。例えば、UDP プロトコルのポート 53(DNS)への接続を許可するには、次のようにします。
firewall-cmd --zone=public --add-port=53/udp
このコマンドは、public ゾーンで UDP プロトコルのポート 53(通常 DNS で使用される)へのすべての接続を許可します。
これらの設定は--remove-service
や--remove-port
を用いて同様に接続を削除することが可能です。
ルールの削除
設定したルールは削除も可能です。そのためには、次のようにします。
firewall-cmd --zone=public --remove-service=ssh # SSHサービスのルールを削除します。
firewall-cmd --zone=public --remove-port=80/tcp # ポート80へのルールを削除します。
以上が firewalld の基本的な使い方となります。Linux のファイアウォール管理を行う際には、ぜひこの firewalld を活用してみてください。
おしまい