Iptables NAT-Protokollierung


7

Ich habe eine Box als Router eingerichtet, die Iptables (Maskerade) verwendet und den gesamten Netzwerkverkehr protokolliert.

Das Problem:

Verbindungen von LAN-IPs zu WAN werden in Ordnung angezeigt, dh SRC = 192.168.32.10 -> DST = 60.242.67.190

Bei Datenverkehr vom WAN zum LAN wird jedoch die WAN-IP als Quelle, aber die Router-IP als Ziel und dann der Router -> LAN-IP angezeigt.

Dh SRC = 60.242.67.190 -> DST = 192.168.32.199 SRC = 192.168.32.199 (Router) -> DST = 192.168.32.10

Wie konfiguriere ich es so, dass die Konversationen korrekt protokolliert werden?

SRC = 192.168.32.10 -> DST = 60.242.67.190 SRC = 60.242.67.190> DST = 192.168.32.10

Jede Hilfe geschätzt, Prost

Antworten:


1

Die Informationen, die Sie benötigen, befinden sich nur in der Verbindungsverfolgungstabelle. Schauen Sie sich conntrack (8) an, wie Sie es bekommen. Das Protokollieren in Echtzeit kann jedoch schwierig sein, möglicherweise mit -j ULOG und ulogd.


0

Sie können versuchen, sich bei -t nat -L POSTROUTING vor der Zeile -j SNAT --to-ip ... anzumelden

HTH Oliver


Ich habe keine SNAT-Leitung von -j. Ich habe die Protokollierung wie folgt konfiguriert: iptables -t nat -A POSTROUTING -j LOG das gleiche für PREROUTING und OUTPUT Ich habe auch: iptables -A OUTPUT -j LOG das gleiche für INPUT und FORWARDED Wollen Sie sagen, ich sollte es ändern in: iptables -t nat -L POSTROUTING -j LOG, den -A-Schalter fallen lassen? Prost auf die Antwort

0

Um alle gewünschten Informationen zu protokollieren, benötigen Sie zwei Protokollregeln. Eine zum Protokollieren der Daten von der WAN-Schnittstelle zum Router und eine zweite zum Protokollieren des Pakets vom Router zum LAN-Host.

Mit anderen Worten, wenn das Paket Ihre Routing-Tabellen durchläuft, wird das Ziel neu geschrieben. Wenn ich das richtig verstehe, möchten Sie die Informationen dieses Pakets vor und nach dem Umschreiben anzeigen (damit Sie sehen können, auf welchen Host es sich bezieht).

Die Regeln sehen ungefähr so ​​aus: Bestehende Regel, die dem Router das WAN anzeigt:

iptables -I INPUT -m state --state NEW -j LOG --log-prefix " New Incoming Packet"

Neue Zusatzregel:

iptables -I FORWARD -d LAN_HOST_IPADDR -m state --state NEW -j LOG --log-prefix " [>] NEW FORWARD"

Oder erstellen Sie eine neue Kette für den an den LAN HOST weitergeleiteten Datenverkehr, um zusätzliche Gutschriften zu erhalten und die Dinge ein wenig sauberer zu halten.

iptables -t nat -N forward_to_mypc
iptables -t nat -A forward_to_mypc -m state --state NEW -j LOG --log-prefix " [>] New Forward"
iptables -t nat -A forward_to_mypc -j DNAT --to <address_of_mypc>

Verwenden Sie dann die neue Kette wie folgt:

iptables -t nat -I PREROUTING -i <WANADAPTER> -p tcp --dport 3389 -j forward_to_mypc

Dadurch werden alle im WAN-Adapter eingehenden Port-3389-TCP-Pakete an Ihren LAN-PC weitergeleitet. Wenn das Paket neu ist, wird es protokolliert.


Wie sieht es forward_to_mypcaus? das ist nicht wirklich klar?
rubo77

Der -NParameter erstellt die forward_to_mypcTabelle und wir hängen sie mit an -A. Wir bauen es auf und leiten es dann mit der folgenden PREROUTING-Regel darauf zu.
regulatre

-1

$ iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE

Dabei ist eth0 die Router-Schnittstelle

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.