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

firewalld を使用して RHEL7/CentOS7 で発信接続をブロックしますか?

解決策 1:

その素敵な GUI にはオプションが見つかりませんでしたが、ダイレクト インターフェイス経由で可能です

発信ポート 80 のみを有効にするには:

firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p tcp -m tcp --dport=80 -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -j DROP

これにより、ランタイム ルールではなく、永続的なルールに追加されます。
パーマネント ルールをリロードしてランタイム ルールにする必要があります。

firewall-cmd --reload

永久ルールを表示する

firewall-cmd --permanent --direct --get-all-rules

実行時ルールを表示する

firewall-cmd --direct --get-all-rules

解決策 2:

自分自身に同じ質問をした後、いじくり回して、送信トラフィックを HTTP/HTTPS および DNS クエリに制限するためのいくつかの優れたルールを集めました。

確立された接続を許可:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -m state --state ESTABLISHED,RELATED -j ACCEPT

HTTP を許可:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 80 -j ACCEPT

HTTPS を許可:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 443 -j ACCEPT

DNS クエリを許可:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 53 -j ACCEPT
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p udp --dport 53 -j ACCEPT

他のすべてを拒否する:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 2 -j DROP

「--permanent」引数を省略して最初にテストすることをお勧めします。

私は決して専門家ではありませんが、これはうまくいくようです :)


Linux
  1. SSLyze、Nmap、またはOpenSSLを使用したSSL接続のテスト

  2. CentOS7でFirewallDを設定する

  3. CentOS8でファイアウォールを使用してファイアウォールを設定する方法

  1. RockyLinux8にFirewalldを使用してFail2banをインストールする方法

  2. CentOS / RHEL 7 :firewall-cmd を使用してファイアウォールでポートを開く方法は?

  3. 特定の IP をブロックする方法 firewall-cmd を使用してサーバーに接続する

  1. 複数の接続を使用して wget でファイルをダウンロードする

  2. diskdump (dd) を使用したディスクのクローン作成に適したブロック サイズ

  3. iptables とのすべての着信接続を拒否しますか?