
Ich versuche langsam, iptables zu lernen und möchte alle DNS-Anfragen (Port 53), die nicht von/an eine Liste von IPs kommen (von 192.168.2.1, 192.168.2.29 oder an 1.1.1.1), umleiten. Ich dachte, ich könnte Ketten verwenden. Das funktioniert aber nicht. Könnten Sie mir bitte einen Tipp geben:
iptables -N dnsrewrite
iptables -A dnsrewrite -s 192.168.2.1 -j RETURN
iptables -A dnsrewrite -s 192.168.2.29 -j RETURN
iptables -A dnsrewrite -d 1.1.1.1 -j RETURN
iptables -t nat -A dnsrewrite -j DNAT --to-destination 192.168.2.29
iptables -t nat -A POSTROUTING -p tcp --dport 53 -j MASQUERADE
iptables -t nat -A POSTROUTING -p udp --dport 53 -j MASQUERADE
iptables -A PREROUTING -p tcp --dport 53 -j dnsrewrite
iptables -A PREROUTING -p udp --dport 53 -j dnsrewrite
Antwort1
iptables -t nat -N dnsrewrite
iptables -t nat -A dnsrewrite -j DNAT --to-destination 192.168.2.29
iptables -t nat -N whitelist
iptables -t nat -A whitelist -s 192.168.2.1 -j RETURN
iptables -t nat -A whitelist -s 192.168.2.29 -j RETURN
iptables -t nat -A whitelist -d 1.1.1.1 -j RETURN
iptables -t nat -A whitelist -j dnsrewrite
iptables -t nat -A PREROUTING -p tcp --dport 53 -j whitelist
iptables -t nat -A PREROUTING -p udp --dport 53 -j whitelist
Ob diese Ihren Anforderungen entsprechen, hängt davon ab.
iptables -t nat -A POSTROUTING -p tcp --dport 53 -j MASQUERADE
iptables -t nat -A POSTROUTING -p udp --dport 53 -j MASQUERADE