Linux NATの他のルール

Linux NATの他のルール
eth0 (192.168.1.0/24) --> wan
eth2 (192.168.10.0/24) --> lan0

次の規則を使用して、LinuxゲートウェイでNATを有効にします。

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

いくつかのオンラインガイドでこのようなルールを読むのはなぜですか?

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -s 192.168.10.0/24 -d 0/0 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -d 192.168.10.0/24 -j ACCEPT
iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.10.0/24 -j ACCEPT

ベストアンサー1

この2行を使用する場合:

iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.10.0/24 -j ACCEPT

したがって、セキュリティの観点から、次の2つは価値がありません。

iptables -A FORWARD -s 192.168.10.0/24 -d 0/0 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -d 192.168.10.0/24 -j ACCEPT

まずiptables -A FORWARD -s 192.168.10.0/24 -d 0/0 -j ACCEPT、これはサブネット内のiptablesパケット192.168.10.0/240/0他のすべてのネットワークに転送します。後で、あなたはiptables -A FORWARD -s 192.168.10.0/24 -j ACCEPTこれら2つの規則が実際に同じことを意味することに気づくでしょう。

Forは、パケットが送信元または送信元で発生した場合にのみ送信されたすべてのパケットを受け入れて転送しますiptables -A FORWARD -m state --state ESTABLISHED,RELATED -d 192.168.10.0/24 -j ACCEPTiptables後で最初のルールを無駄にするように設計されたすべてのパケットを転送するいくつかの競合するルールがあります。これは、送信されたすべてのパケットが最初のルールと一致しないためです。しかし、とにかくパケットは転送されます。192.168.10.0/24ESTABLISHEDRELATEDiptables -A FORWARD -d 192.168.10.0/24 -j ACCEPT192.168.10.0/24192.168.10.0/24

おすすめ記事