GNU/Linux >> Linux の 問題 >  >> Linux

Firewalldのルールとシナリオの概要

ファイアウォールは、外部ネットワークからの不要なトラフィックがシステムに到達するのを防ぐゲートキーパーに似ています。ファイアウォールルールは、許可または許可するトラフィックを決定します。 Linuxファイアウォールには、ゾーンと呼ばれる概念があります。 。システム管理者は、システムへの着信トラフィックを許可または拒否する独自のファイアウォールルールを使用して各ゾーンを構成できます。どの人があなたの家の中のどの部屋を訪問することを許可されるべきかを示すホームセキュリティシステムを想像してみてください。

[次のこともお勧めします:Linuxでのfirewalldの初心者向けガイド]

図:firewalld(Red Hatカスタマーポータル)入門

firewalld は、Dバスを介してホストベースのカスタマイズ可能なファイアウォールを提供するファイアウォールサービスです。 インターフェース。上記のように、ファイアウォールは事前定義された一連のルールを持つゾーンを使用し、各サービスはポートを使用します 。ポートに基づいて、特定のサービスへの着信トラフィックを許可/ブロックできます。たとえば、システムにSSHで接続したくない場合は、ポート22をブロックできます。これにより、外部からSSH経由でシステムにアクセスできないようになります。

ゾーン

firewalld サービスはゾーンの概念を使用します。これらのゾーンにネットワークインターフェイスを割り当て、そのネットワークに入ることができるトラフィックの種類を決定できます。 Network Managerを使用できます firewall-cmdを使用して特定のゾーンにインターフェースを割り当てる コマンド、広く知られているコマンドラインツール。デフォルトのゾーンは/usr/lib/firewalld/zones/の下に保存されます ディレクトリ。それでは、firewalldで利用できるいくつかの事前定義されたゾーンについて学びましょう。 。

  • ブロック:このゾーンでは、着信接続はすべてicmp-host-prohibitedで拒否されます メッセージ、およびシステム内から開始された接続のみが許可されます。
  • DMZ:制限された内部ネットワーク接続を必要とするシステムの場合、選択された着信接続のみを受け入れます。非武装地帯とも呼ばれます。
  • ドロップ:接続は通知なしにドロップされます。発信接続が可能です。
  • パブリック:このゾーンは、信頼できないパブリックネットワーク上のデバイスに使用されます。
  • 信頼済み:すべてのネットワーク接続が受け入れられます。

これらのゾーンの1つは、ユーザーのニーズに応じてデフォルトとして設定できます。インストール後、パブリック ゾーンはデフォルトとして設定されており、後で変更できます。

Red HatEnterpriseLinuxのファイアウォールルール

これで、firewalldの基本がわかりました。 、コマンドを使用してさまざまなサービスを追加または削除する方法を調べることができます。

ファイアウォールが実行されているかどうかを確認するには、次のコマンドを使用します。

# systemctl status firewalld

firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2020-11-13 18:19:05 CET; 4 months 4 days ago

次のように入力することもできます:

# firewall-cmd --state
running

デフォルトゾーンに関する情報を一覧表示するには:

# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: baremetal cni-podman0 eno1 eno2 eno3 provisioning
  sources:
  services: cockpit dhcpv6-client http ssh
  ports: 8080/tcp 80/tcp 80/udp 67/udp 68/udp   protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

上記のように、パブリック ゾーンがデフォルトとして設定されています。出力には、このゾーンに割り当てられたインターフェースと、有効/許可されているサービスとポートが表示されます。

特定のゾーンを選択します:

# firewall-cmd --list-all --zone=home
home
  target: default
  icmp-block-inversion: no
  interfaces:
  sources:
  services: cockpit dhcpv6-client mdns samba-client ssh

firewalldを有効/開始します システム起動時のサービス:

# systemctl enable firewalld
# systemctl start firewalld

firewalldを無効/停止します システム起動時のサービス:

# systemctl disable firewalld
# systemctl stop firewalld

すべてのゾーンを一覧表示します:

# firewall-cmd --list-all-zones

ポートとサービスをゾーンに追加し、永続的にします

次に、特定のゾーンに新しいサービスとポートを追加し、それらを永続的にする(システムを再起動した後も維持する)ためのコマンドをいくつか見てみましょう。

firewalldのポートを開いたりブロックしたりするには 使用:

# firewall-cmd --list-ports        
# firewall-cmd --add-port <port-number/port-type> --permanent
# firewall-cmd --reload

ポートは、オペレーティングシステムが着信トラフィックを受信し、それをシステムサービスに転送できるようにする論理デバイスです。通常、これらのサービスは標準ポートでリッスンします。たとえば、HTTPはポート80でリッスンし、HTTPSはポート443でリッスンします。

通常、ポートタイプ tcpを意味します 、udp またはsctp

次に、デフォルトゾーンにポート443を永続的に追加する例を示します。

# firewall-cmd --add-port 443/tcp --zone=public --permanent
# firewall-cmd --reload

--remove-portを使用してポートを削除することもできます オプション。

firewalldの豊富なルール

豊富なルールを使用することもできます 、firewalldにいくつかの高度なフィルタリング機能があります 。これらの構文は次のとおりです。これらの豊富なルールは、特定のIPアドレスまたはアドレス範囲をブロックまたは許可する場合に役立ちます。

次のコマンドを使用して、現在のリッチルール設定を表示します。

# firewall-cmd --list-rich-rules

豊富なルールを使用して、ホストとポートの特定のIPを制御できます。

次のルールは、IP 10.1.1.11.21のホストからのSSH接続のみを受け入れます。 他の接続を削除します:

# firewall-cmd --add-rich-rule='rule family=ipv4 source address=10.1.111.21/24 service name=ssh log prefix="SSH Logs" level="notice" accept'

この例では、pingを拒否します エラーメッセージが表示されたすべてのホストからのリクエスト:

# firewall-cmd --add-rich-rule='rule protocol value=icmp reject'

次のルールは、IP 172.92.10.90/32ポート21からのリクエストを拒否します 他のすべての接続を受け入れます:

# firewall-cmd --add-rich-rule='rule family=ipv4 source address=172.92.10.90/32 port port=21 protocol=tcp  reject'

[セキュリティについて考えていますか?ハイブリッドクラウドのセキュリティを強化し、ビジネスを保護するためのこの無料ガイドをご覧ください。 ]

まとめ

firewalldを有効にする ユーザーが着信接続を許可または制限し、不要なネットワークトラフィックからシステムを選択的に保護できるようにします。ファイアウォールのルールによって、システムに出入りするトラフィックを決定することに注意してください。システムへの着信トラフィックを許可または拒否する独自のファイアウォールルールを使用してゾーンを構成できます。ただし、システムへのトラフィックまたはポートアクセスを許可すると、セキュリティ違反や潜在的な攻撃に対して脆弱になることも忘れないでください。


Linux
  1. Linuxのchgrpおよびnewgrpコマンドの概要

  2. AlmaLinux8にFail2banをインストールして設定する方法

  3. FirewallDとは何ですか?Linuxに実装する方法

  1. cPanelの紹介とアクセス情報

  2. セキュリティグループとルールを管理する

  3. Iptables ルールを表示および削除する方法 – リストとフラッシュ

  1. Linux 割り込みと CPU SMP アフィニティの紹介

  2. CentOS/RHEL 8 で Firewalld ポートを開く際の問題

  3. Udev :ネットワーク インターフェイスの名前を変更する