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/24
を0/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 ACCEPT
。iptables
後で最初のルールを無駄にするように設計されたすべてのパケットを転送するいくつかの競合するルールがあります。これは、送信されたすべてのパケットが最初のルールと一致しないためです。しかし、とにかくパケットは転送されます。192.168.10.0/24
ESTABLISHED
RELATED
iptables -A FORWARD -d 192.168.10.0/24 -j ACCEPT
192.168.10.0/24
192.168.10.0/24