ファイアウォールは、オンラインにする際のセキュリティの最も重要な部分の1つです。ここでは、CLIまたはGUIを使用してRocky Linux 8でFirewallDをインストール、構成、および使用する手順とコマンドについて学習します。
Linuxにまだ慣れていない私たちの多くは、GUIを使用してポートやサービスをオンまたはオフにするのが非常に簡単なWindowsのファイアウォール機能にすでに精通しているでしょう。ただし、CentOS、Rocky Linux、RedHat、AlmaLinuxなどのLinuxについてはどうでしょうか。完全なLinuxデスクトップを使用している場合、ファイアウォールはすでに存在しますが、ほとんどの場合、グラフィカルインターフェイスはありません。それでも、Debian、RedHat、Ubuntu、およびその他のLinuxシステムは、マウスクリックの助けを借りて物事を管理するために、それぞれのリポジトリから直接適切なファイアウォールGUIソフトウェアを提供します。
しかし、グラフィカルインターフェイスのない基本的なOSのインストールが必要な場合はどうでしょうか。 Linuxの最小バージョンには、デフォルトでCLIバージョンのファイアウォールすら含まれていないためです。これは非常に小さな問題です。アクティブなインターネット接続があり、Linuxにパッケージマネージャーが組み込まれているため、1つのコマンドでファイアウォールをインストールできます。
FirewallDの機能:
• 完全なD-BusAPI
• IPv4、IPv6、ブリッジ、およびipsetのサポート
• IPv4およびIPv6NATのサポート
• ファイアウォールゾーン
• ゾーン、サービス、およびICMPタイプの事前定義されたリスト
• シンプルなサービス、ポート、プロトコル、送信元ポート、マスカレード、ポート転送、ICMPフィルター、リッチルール、インターフェース、ゾーンでの送信元アドレスの処理
• ポート、プロトコル、送信元ポート、モジュール(Netfilterヘルパー)、および宛先アドレス処理の簡単なサービス定義
• ゾーン内のより柔軟で複雑なルールのための豊富な言語
• ゾーンの時限ルール
• 拒否されたパケットの単純なロギング
• 直接インターフェース
• ロックダウン:ファイアウォールの変更を許可されているユーザーのホワイトリスト。
• Linuxカーネルモジュールの自動ロード
• Puppetで動作します
• オンラインおよびオフライン構成用のCLI
• グラフィカルツール(gtk3を使用)
• アプレット(Qt4を使用)
CentOSのファイアウォールは、以前はipTablesによって制御されていました。これは主にFirewallDに取って代わられました。デフォルトでは、Rocky Linux 8ではポート22のみが開いており、それ以外の場合は現在閉じています。
RockyLinux8にFirewalldをインストールして設定する手順
ここで指定するコマンドは、CentOS、Oracle Linux、Rocky Linux、RedHatなどの他のRedhatベースのシステムにも適用できます。
1。要件
特別な要件はありませんが、次のものがあることを確認してください。
• Rocky Linux 8
• 少なくともroot以外のsudoユーザー
• インターネット接続
• ターミナルへのアクセス
2。 DNFアップデート
Linux OSをインストールした後、またはパッケージマネージャーを使用してツールをセットアップする前に最初に行うことは、システムアップデートを実行することです。これにより、すべてのパッケージが最新の状態になり、リポジトリキャッシュも更新されます。
sudo dnf update
3。 RockyLinux8にFirewalldをインストールする
RockyLinux8またはその他のRedhatベースのFirewallDにFirewallDをインストールするためのパッケージを入手するためにサードパーティのリポジトリを探す必要はありません。これは、システムのbaseOSリポジトリによってすでに提供されています。したがって、指定されたコマンドを実行するだけで完了です。
sudo dnf install firewalld
4。 FirewallDサービスを開始する
Firewalldのサービスはアトミックに開始されません。手動で開始し、システムブートで同じように実行できるようにする必要があります。
sudo systemctl unmask firewalld
sudo systemctl start firewalld
sudo systemctl enable firewald
ステータスを確認します:
sudo systemctl status firewalld
4。バージョンを確認
インストールのプロセスが正常に完了したら、ファイアウォールのバージョンをチェックして、システムにファイアウォールが存在することを確認できます。
sudo firewall-cmd --version
5。 RockyLinux8でのFirewallDの使用
事前定義されたゾーンがいくつかあります。Firewalldのコマンドで使用して、システム上のさまざまなサービスとポートを構成できます。これらは次のとおりです:
ドロップ :着信ネットワークパケットはすべてドロップされ、応答はありません。発信ネットワーク接続のみが可能です。
ブロック :着信ネットワーク接続は、IPv4の場合はicmp-host-prohibitedメッセージで、IPv6の場合はicmp6-adm-prohibitedで拒否されます。このシステム内で開始されたネットワーク接続のみが可能です。
公開 :公共エリアで使用します。ネットワーク上の他のコンピューターを信頼して、コンピューターに害を及ぼさないようにします。選択した着信接続のみが受け入れられます。
外部 :特にルーターに対してマスカレードが有効になっている外部ネットワークで使用します。ネットワーク上の他のコンピューターを信頼して、コンピューターに害を及ぼさないようにします。選択した着信接続のみが受け入れられます。
dmz :内部ネットワークへのアクセスが制限された状態で公的にアクセス可能な非武装地帯のコンピューターの場合。選択した着信接続のみが受け入れられます。
仕事 :作業エリアで使用します。ほとんどの場合、ネットワーク上の他のコンピューターを信頼して、コンピューターに害を及ぼさないようにします。選択した着信接続のみが受け入れられます。
自宅 :ホームエリアで使用します。ほとんどの場合、ネットワーク上の他のコンピューターを信頼して、コンピューターに害を及ぼさないようにします。選択した着信接続のみが受け入れられます。
内部 :内部ネットワークで使用します。ほとんどの場合、ネットワーク上の他のコンピューターを信頼して、コンピューターに害を及ぼさないようにします。選択した着信接続のみが受け入れられます。
信頼できる :すべてのネットワーク接続が受け入れられます。
ポートを許可またはブロックするコマンド構文
これまでのところ、Firewalldプログラムのゾーンについては既にご存知でしょうが、コマンドターミナルを使用して、さまざまなゾーンのポートやサービスを簡単に開いたり、閉じたり、管理したりできます。
ポートを許可
たとえば、ポート80またはHTTPサービスを開きたい場合:
sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
または
sudo firewall-cmd --permanent --zone=public --add-service=http
同様に、ポート22、443、またはファイアウォールでまだ許可されていないサービスを開くことができます。
ポートを開いた後、ファイアウォールサービスをリロードして、行った変更を適用することが重要です。
sudo firewall-cmd --reload
ポートのブロック/削除
開いているポートまたはサービスをブロックするには、削除オプションを使用する必要があります。その構文は次のとおりです。
たとえば、ポート80をブロックする場合、コマンドは次のようになります。
sudo firewall-cmd --permanent --zone=public --remove-port=80/tcp
または、ポートに対応するサービスを知っている場合:
sudo firewall-cmd --permanent --zone=public --remove-service=hhtp
その後、ファイアウォールをリロードすることを忘れないでください:
sudo firewall-cmd --reload
すべてのアクティブなポートを一覧表示します:
接続するファイアウォールでアクティブなポートを知るには、firewall-cmd
を使用してそれらを一覧表示できます。 コマンド:
sudo firewall-cmd --list-ports
デフォルトのゾーン情報を一覧表示する
どのゾーンがどのようなサービスを提供しているかわからない場合、または単に別のゾーンのファイアウォールに関連するすべての情報を取得したい場合は、次のコマンドを実行します。
リストするには-すべてのポート
sudo firewall-cmd --list-all
一部の特定のゾーンについてのみ、ユーザーはコマンドで同じことを宣言できます:
sudo firewall-cmd --list-all --zone=home
許可されているサービスを確認するコマンド
ファイアウォールで許可されているサービスの唯一のリストを取得するには:
sudo firewall-cmd --list-services
6。 RockyLinux8にFirewallDGUIをインストールする
Rocky Linux 8またはRPMベースのグラフィカルユーザーインターフェイスを使用している場合は、GUIインターフェイスを使用して、ポートやサービスの追加や削除など、ファイアウォールサービスを簡単に管理できます。
sudo dnf install firewall-config
インストールが完了したら、Application Launcherに移動して、– Firewallを検索します。 。アイコンが表示されたら、クリックして同じものを実行します。
GUIを使用すると、数回クリックするだけでさまざまなサービスとポートを簡単に構成できます。
7。 Firewalldを停止して無効にする
ファイアウォールでポート/サービスをブロックまたは許可したくない場合は、システムが起動するまで一時的に停止できます。
sudo systemctl stop firewalld
一方、ファイアウォールを完全に停止して無効にしたい場合 、実行:
sudo systemctl disable firewalld
sudo systemctl mask firewalld
8。アンインストールまたは削除
システムでFirewallDが不要になった場合は、「削除」を使用して、DNFパッケージマネージャーを使用してFirewallDを削除できます。 」オプション。
sudo dnf remove firewalld
GUIの場合、インストールしている場合:
sudo dnf remove firewall-config
結論
このようにして、Allamlinuxおよびその他のRPMベースのLinuxシステムにFirewallDをインストールして使用し、システムを外部からある程度保護することができます。詳細については、FirewallDの公式ドキュメントをご覧ください。