IPtables: 既存の転送ルールによる ipset フィルタリング

IPtables: 既存の転送ルールによる ipset フィルタリング

私はガイドに従って、ラズベリーパイをセットアップして VPN に接続し、LAN から VPN へのトラフィックを NAT して保護しました。

DNS フィルタリング (広告ブロック) にも使用しています。

ドメイン フィルタリングでは、気に入らない IP をフィルタリングできないため、インターネットの広大な領域との通信を禁止するための ipset について学習しようとしています。

現在、これらすべてを実行するための私のスクリプトは次のようになります。

iptables -F

ipset restore < /etc/ipset-blacklist/ip-blacklist.restore

iptables -I INPUT 1 -m set --match-set blacklist src -j DROP
iptables -I FORWARD -m set --match-set blacklist src -j DROP
iptables -I OUTPUT -m set --match-set blacklist src -j DROP

iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
iptables -L

これはうまくいきます!

しかし、その理由はわかりませんし、INPUT、FORWARD、OUTPUT の 3 つのブラックリスト ルールすべてが必要だとは思いません。間違った方法で、理解せずに実用的な結果を達成したような気がします。

私が何をしようとしているのか、何を達成したのか、どこが間違っているのか、私より賢い人は分かってくれませんか?

また、この行の「1」は何を意味しますか:

iptables -I INPUT 1 -m set --match-set blacklist src -j DROP

これはすでにある程度達成されている目標です。 LAN目標

答え1

編集:: 「1」はルールの順序を表します。

必要なチェーンは FORWARD チェーンのみであり、3 つすべてではありません。

これはすべてのトラフィックが転送されているためだと思います。

関連情報