iptables ipset の設定ミスですか?

iptables ipset の設定ミスですか?

不要な TCP/IP トラフィックをブロックする確実な方法を探しています。

私の Linux マシンでは、iptables と ipset がこれを行うための優れた方法を提供しているようです。

これまで私は次のことをやってきました:

ipset create ipsok hash:net maxelem (result of wc -l for my cidr list in a file)
ipset add <network address>

そして、これが使用されている唯一の ipset であることを確認しました:

service ipset status

これにより、正しい数のエントリを持つ ipset ipsok のみが表示されます。また、再起動後に ipset が使用されることも確認しました。次に、ipset を iptables ルールに追加します。

iptables -I INPUT -m set --match-set ipsok src -j ACCEPT

これが機能するかどうかをテストするには、TOR に IP アドレスを提供させて、次のコマンドで確認します。

ipset test ipsok <tor ip address>

住所はないipsok セット内。

Tor ブラウザを自分のマシンに向けると、接続が確立されます。これは正しいですか? IP アドレスが ipset に見つからないため、接続が失敗すると思いました。

iptables(およびipset)でトラフィックをブロックするにはどうすればいいですか?ないipset ipsok 内の任意のネットワーク アドレスから来ていますか?

答え1

Iptables のデフォルト ポリシーは ですACCEPT。したがって、リストに IP を追加しても、IP を 2 回だけ受け入れることになります。

できるだけiptables -L多く表示する必要があります。つまり、ルールは ACCEPT ルールのみになります。

デフォルトを DROP に変更し、アイテムを ACCEPT に追加します。

試合前にルールを設定する前にこれを試してください: iptables -P INPUT DROP

注意してください。リモートでこれを行うと、ロックアウトされる可能性があります。

関連情報