Ist es erforderlich, dass iptables nat icmp und andere Protokolle weiterleitet?

853
avi9526

Einige Beispiele für die Konfiguration von iptables für NAT enthalten keine Informationen zum Weiterleiten von ICMP-Paketen. Einige Handbücher schlagen vor

-A FORWARD -i in -o out -p icmp -m icmp --icmp-type 8 -j ACCEPT 

ufw Konfiguration (auch wenn sie nicht als Router verwendet wird) in filter.FORWARD Subchain hat folgendes

ACCEPT icmp -- anywhere anywhere icmp destination-unreachable ACCEPT icmp -- anywhere anywhere icmp source-quench ACCEPT icmp -- anywhere anywhere icmp time-exceeded ACCEPT icmp -- anywhere anywhere icmp parameter-problem ACCEPT icmp -- anywhere anywhere icmp echo-request 

Also was ist richtig? Und was ist mit anderen Protokollen wie igmp usw.?

0

1 Antwort auf die Frage

0
Enrico Bassetti

Verwirren Sie nicht, diese Dinge: NAT für Adressübersetzung ist, wird die iptablesStandardtabelle filterist über Filterpakete.

Wenn die Frage ist: Welchen Filter brauche ich, damit NAT funktioniert? Die Antwort lautet: keine. Es gibt keine derartigen Verknüpfungen zwischen Tabellen. Natürlich müssen Sie Regeln hinzufügen, damit Pakete durch Ihr System fließen . Andernfalls ist die NAT-Komponente bereit, aber inaktiv (kein Filter = keine Pakete).

NAT funktioniert also auch, wenn Sie ICMP und andere Protokolle verbieten. Natürlich sind einige ICMP-Nachrichten hilfreich, um die Funktionsweise zu verbessern (z. B. verwendet die Pfad-MTU-Erkennung ICMP, und wenn Sie alle ICMP-Nachrichten blockieren, ist die Verbindung sehr unterbrochen). Dennoch hat das nichts mit NAT zu tun: Sie haben die gleichen Probleme, auch wenn Sie kein NAT verwenden und sich mit filterTabelle verwechseln .

Informationen zum Blockieren von ICMP finden Sie hier: http://shouldiblockicmp.com

Kurz gesagt, möchten Sie vielleicht zulassen:

  • Echoanforderung / Antwort
  • Fragmentierung erforderlich
  • Zeit überschritten

In IPv6 müssen Sie auch NDP und SLAAC zulassen.

wenn ich eine Frage wie diese formuliere: Welche ICMP-Pakete müssen einen iptables-basierten Router passieren dürfen, damit das Netzwerk ordnungsgemäß funktioniert? avi9526 vor 6 Jahren 0
Hier finden Sie einige Informationen: http://shouldiblockicmp.com/ Kurz: Echo Request / Reply, Fragmentierung erforderlich und Zeitüberschreitung (für IPv4). In IPv6 müssen Sie auch NDP und SLAAC zulassen. Enrico Bassetti vor 6 Jahren 0
Könnten Sie dies bitte Ihrer Antwort hinzufügen? avi9526 vor 6 Jahren 0
Ja bitte. Text hinzugefügt :-) Enrico Bassetti vor 6 Jahren 0