ホーム > ネットワーク管理 > firewalld

firewalld: 動的ファイアウォールサービス管理

firewalldはLinuxシステムの動的なファイアウォール管理デーモンです。ネットワークゾーンの概念を使用してファイアウォールルールを簡単に管理でき、サービス実行中でもルールの変更が可能です。既存のiptablesを置き換えたり補完したりする役割を果たします。

概要

firewalldはシステムのネットワークトラフィックを制御するデーモンで、事前に定義されたゾーンを通じてネットワークインターフェースやソースIPアドレスに応じて異なるセキュリティレベルを適用できます。これは複雑なiptablesルールを直接扱う代わりに、ユーザーフレンドリーなインターフェースを提供します。

主な特徴

  • 動的ルール管理: サービス再起動なしでルール変更可能
  • ゾーンベース: ネットワークインターフェースやソースに応じて異なるセキュリティポリシーを適用
  • サービスおよびポート管理: 特定のサービス(SSH、HTTPなど)やポートの開放/遮断が容易
  • リッチルール: 複雑な条件ベースのルール設定が可能
  • IPv4およびIPv6サポート

主なオプション

firewalldデーモン自体を実行する際に使用されるオプションです。ほとんどのファイアウォールルール管理はfirewall-cmdコマンドを通じて行われます。

デーモン実行オプション

生成されたコマンド:

コマンドを組み合わせてみてください。

説明:

`firewalld` コマンドを実行します。

これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。

使用例

firewalldサービスは主にsystemctlコマンドを通じて管理されます。ファイアウォールルールの設定はfirewall-cmdコマンドを使用します。

firewalldサービス開始

sudo systemctl start firewalld

firewalldデーモンを開始します。

firewalldサービス有効化(起動時の自動開始)

sudo systemctl enable firewalld

システム起動時にfirewalldが自動的に開始されるように設定します。

firewalldサービス状態確認

sudo systemctl status firewalld

firewalldサービスの現在の状態を確認します。

firewalldサービス再起動

sudo systemctl restart firewalld

firewalldサービスを再起動します。

firewalld設定再読み込み(ルール変更後)

sudo firewall-cmd --reload

サービスを停止せずにファイアウォールルールを再読み込みして適用します。

インストール

firewalldはCentOS、Fedora、RHELなど多くのRed Hat系Linuxディストリビューションにデフォルトで含まれています。Debian/Ubuntu系では手動でインストールする必要がある場合があります。

CentOS/Fedora/RHEL

sudo dnf install firewalld

dnf(またはyum)を使用してfirewalldをインストールします。

Debian/Ubuntu

sudo apt install firewalld

aptを使用してfirewalldをインストールします。

ヒントと注意点

firewalldを効果的に使用するためのヒントと注意点です。

firewall-cmdの活用

firewalldのすべてのファイアウォールルール設定および管理は、「firewall-cmd」コマンドを通じて行われます。例えば、ポート開放、サービス追加、ゾーン設定などはfirewall-cmdを使用する必要があります。

  • 現在アクティブなゾーンの確認: `firewall-cmd --get-active-zones`
  • 特定のポート開放(例: HTTP 80/tcp): `sudo firewall-cmd --zone=public --add-port=80/tcp --permanent`
  • 変更の適用: `sudo firewall-cmd --reload`

永続的なルールの適用

firewall-cmdでルールを追加する際に`--permanent`オプションを使用すると、システム再起動後もルールが維持されます。`--permanent`オプション使用後は必ず`firewall-cmd --reload`を実行して変更を適用する必要があります。

デフォルトゾーンの理解

firewalldはデフォルトで「public」ゾーンを使用しますが、「home」、「work」、「internal」、「external」、「trusted」、「drop」、「block」など、さまざまなゾーンを提供しています。各ゾーンは異なるセキュリティレベルを持っています。

iptablesとの関係

firewalldは内部的にiptables(またはnftables)を使用しますが、直接iptablesコマンドを使用するよりも抽象化されたインターフェースを提供します。firewalldを使用するシステムでは、iptablesコマンドを直接操作することは避けるのが賢明です。


同じカテゴリのコマンド