SNMP und IPTables?

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
dalari
Beiträge: 37
Registriert: 26.09.2011 08:55:06

SNMP und IPTables?

Beitrag von dalari » 07.10.2011 14:31:38

Ich habe ein großes problem. Ich habe viel dazu gegooglet aber ich finde einfach nichts.
Ich habe ein Munin-System im Einsatz und habe dieses per IPTables abgesichert so das nurnoch bestimmte Netze zugang zu dem Server kriegen. In dem zug habe ich dann auch die snmp prots freigegeben.
Das problem nun ist, das die anfragen meines Servers keine antwort mehr bekommen.

Hier meine IPTable-Rules.

Code: Alles auswählen

:INPUT DROP [116:18503]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [245:32119]
-A INPUT -s 195.37.254.247/32 -p tcp -m tcp --dport 2222 -j ACCEPT
-A INPUT -s 195.37.254.0/28 -p tcp -m tcp --dport 2222 -j ACCEPT
-A INPUT -s 195.37.254.240/28 -p tcp -m tcp --dport 2222 -j ACCEPT
-A INPUT -s 195.37.254.240/28 -p icmp -j ACCEPT
-A INPUT -s 195.37.254.240/28 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -p udp -m udp --dport 162 -j ACCEPT
-A INPUT -p udp -m udp --dport 161 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 161 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 162 -j ACCEPT

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: SNMP und IPTables?

Beitrag von Cae » 07.10.2011 14:42:49

Gewolltes ACCEPT immer vor DROP, REJECT oder sonstwas, denn die Regeln werden in der gegebenen Reihenfolge abgearbeitet.

Kann es sein, dass sich
dalari hat geschrieben:

Code: Alles auswählen

:INPUT DROP [116:18503]
und
dalari hat geschrieben:

Code: Alles auswählen

-A INPUT -p udp -m udp --dport 162 -j ACCEPT
-A INPUT -p udp -m udp --dport 161 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 161 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 162 -j ACCEPT
genau deswegen nicht vertragen?

Okay, das ist Quatsch. Erster Quote greift nur, wenn sonst nix passt. Hab aber trotzdem den Eindruck, dass es an dieser Stelle klemmt.

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

dalari
Beiträge: 37
Registriert: 26.09.2011 08:55:06

Re: SNMP und IPTables?

Beitrag von dalari » 07.10.2011 14:47:38

Ich habe per ssh und http vollen zugriff auf den Server. Es wäre seltsam wenn er dann das an der stelle genau nicht macht...

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: SNMP und IPTables?

Beitrag von Cae » 07.10.2011 14:54:49

Beim Querlesen der Manpage fällt auf, dass die Option -m anscheinend für andere Fälle gedacht ist:
Die allerliebste manpage von iptables hat geschrieben:

Code: Alles auswählen

iptables -A PREROUTING -t mangle -i eth1 -m mark ! --mark 0xffff -j DROP
Die Einschränkung auf die Protokolle TCP und UDP machst du ja schon über -p. Vermutlich sucht iptables dann nach einem Bezeichner namens --tcp bzw. --udp, den es so nicht gibt.

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

dalari
Beiträge: 37
Registriert: 26.09.2011 08:55:06

Re: SNMP und IPTables?

Beitrag von dalari » 07.10.2011 14:57:48

das was ich gepostet habe ist die ausgabe von iptables-save. Ich habe kein -m definiert, das muss also von iptables so gesetzt worden sein

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: SNMP und IPTables?

Beitrag von Cae » 07.10.2011 15:00:07

dalari hat geschrieben:Ich habe kein -m definiert, das muss also von iptables so gesetzt worden sein
Okay, dann magst du vllt. dein Firewallskript posten?

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

dalari
Beiträge: 37
Registriert: 26.09.2011 08:55:06

Re: SNMP und IPTables?

Beitrag von dalari » 07.10.2011 15:05:30

Ich habe kein Script. Ich habe alles per hand gemacht.
die ausgabe von iptables -L ist:

Code: Alles auswählen

Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  195.37.254.247       anywhere            tcp dpt:2222
ACCEPT     tcp  --  195.37.254.0/28      anywhere            tcp dpt:2222
ACCEPT     tcp  --  195.37.254.240/28    anywhere            tcp dpt:2222
ACCEPT     icmp --  195.37.254.240/28    anywhere
ACCEPT     tcp  --  195.37.254.240/28    anywhere            tcp dpt:www
ACCEPT     udp  --  anywhere             anywhere            udp dpt:snmp-trap
ACCEPT     udp  --  anywhere             anywhere            udp dpt:snmp
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:snmp
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:snmp-trap
das erste ist nur auf das Interface lo bezogen. Alles andere wird auf alle interfaces bezogen.
Ich habe auch vorhin das REJECT aus der liste entfernt

dalari
Beiträge: 37
Registriert: 26.09.2011 08:55:06

Re: SNMP und IPTables?

Beitrag von dalari » 14.10.2011 08:25:04

mitlerweile habe ich ein Firewallscript ausgearbeitet den rechner neu gestartet und das Script lauen lassen. Ich kriege immernoch keine SNMP antworten. Hier das Spript:

Code: Alles auswählen

iptables -P INPUT DROP
iptables -A INPUT -p tcp --dport 2222 -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p icmp -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 162 -j ACCEPT
iptables -A INPUT -p udp --dport 162 -j ACCEPT
Ich bin ratlos. der SNMP-Trap Port ist offen aber es kommt nichts an.

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Re: SNMP und IPTables?

Beitrag von nepos » 14.10.2011 13:14:19

Ich wuerde dir zum einfacheren Debugging der Regeln empfehlen, mal folgende Regel einzubauen:

Code: Alles auswählen

iptables -A INPUT -j LOG
Dann siehst du schon mal, welche Pakete von der Firewall weggeworfen werden und kannst dann mal pruefen, ob deine SNMP-Pakete da dabei sind und wieso sie nicht auf deine Regeln matchen.

Benutzeravatar
unitra
Beiträge: 646
Registriert: 15.06.2002 21:09:38
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.128.129.130

Re: SNMP und IPTables?

Beitrag von unitra » 15.10.2011 12:52:13

Ich habe ein großes problem. Ich habe viel dazu gegooglet aber ich finde einfach nichts.
Ich habe ein Munin-System im Einsatz und habe dieses per IPTables abgesichert so das nurnoch bestimmte Netze zugang zu dem Server kriegen.
...
Ich verstehe deine Fehlerbeschreibung nicht so recht.

SNMP ist UDP trafffic, Du kannst also die Port 162 und 161 regeln für TCP entfernen, deine IPTables Konfiguration wird dadurch übersichtlicher.
Vorrausgesetzt du benutzt SNMP v1 oder SNMP v2c. Bei SNMP v3 wird TCP gebraucht da eine gesicherte Verbindung
.
Zusätzlich musst du die Richtung beachten. Beim SNMP pollen, sendet DER SERVER die Anfragen auf "random" Port 1024>65500. Du brauchst also keine Rule für Incoming Trafffic auf Port 161. Es sei den du pollst ihn selbst auf einem physikalischen Interface das nicht das Loopback Interface ist.

Beim senden von SNMP TrapsAN DEN SERVER benötigst du für Incoming Traffic Port 162. Hier auch wenn SNMP v1 und v2c benutzt werden ist TCP uninteressant, für SNMP v3 wird TCP gebraucht.

Ich würde erst einmal die IPTables abschalten, und mit tcpdump auf die Ports 161 und 162 schauen welche Art von Traffic beim Server ankommt.
Danach gemäß der Ausgabe von tcpdump die Regeln für IPTables bauen.

dalari
Beiträge: 37
Registriert: 26.09.2011 08:55:06

Re: SNMP und IPTables?

Beitrag von dalari » 18.10.2011 10:57:08

Ich habe das Problem mitlerweile behoben. Jedoch tauchen jetzt neue probleme auf :(.
Der Server macht jetzt alle Port zu und ich frage mich woran das liegt.
Hier mein Aktuelle Script:

Code: Alles auswählen

#Firewallregeln
iptables -F
iptables -P INPUT DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
#SSH, icmp und HTTP Freigeben fuer das DVZ netz
iptables -A INPUT -p tcp --dport 2222 -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p icmp -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 195.37.254.240/28 -j ACCEPT
#Lopbaqck freigeben
iptables -A INPUT -i lo -j ACCEPT
#SNMP Regeln
iptables -A INPUT -p udp -m udp --dport 161 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 162 -j ACCEPT
#Bestehende Verbindungen beibehalten
iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
Wenn ich die Firewall ausmache per ssh drauf gehe und sie dann wieder öffne bleibt die Shell erhalten. Aber jeder neue verbindungsversuch wird unterdrückt.

Benutzeravatar
unitra
Beiträge: 646
Registriert: 15.06.2002 21:09:38
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.128.129.130

Re: SNMP und IPTables?

Beitrag von unitra » 18.10.2011 18:05:11

iptables werden sequentiell gelesen, von oben nach unten wie ACL's.
Sobald ein IP Paket ankommt, werden die IP Tables von der obersten Zeile zur untersten durchgearbeitet,
sobald ein eine Regel auf ein IP Packet zutrifft, wird das IP Packet entsprechend der Regel verarbeitet.
Danach fängt das wieder von vorne an.

Wenn du schon in der 2-ten Zeile -P INPUT DROP hast, und danach ein iptable -P FORWARD ACCEPT.
Dann passiert vermutlich genau das was du beschrieben hast.

Lese mal ein Wenig über IP Tables, wie sie funktionieren, wie man sie konfiguriert, und wie sei vom System verarbeitet werden.
Die Reihenfolge ist der Schlüssel, und wonach du suchst.
Dann versuche es erneut zu konfigurieren.
dalari hat geschrieben:Ich habe das Problem mitlerweile behoben. Jedoch tauchen jetzt neue probleme auf :(.
Der Server macht jetzt alle Port zu und ich frage mich woran das liegt.
Hier mein Aktuelle Script:

Code: Alles auswählen

#Firewallregeln
iptables -F
iptables -P INPUT DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
#SSH, icmp und HTTP Freigeben fuer das DVZ netz
iptables -A INPUT -p tcp --dport 2222 -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p icmp -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 195.37.254.240/28 -j ACCEPT
#Lopbaqck freigeben
iptables -A INPUT -i lo -j ACCEPT
#SNMP Regeln
iptables -A INPUT -p udp -m udp --dport 161 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 162 -j ACCEPT
#Bestehende Verbindungen beibehalten
iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
Wenn ich die Firewall ausmache per ssh drauf gehe und sie dann wieder öffne bleibt die Shell erhalten. Aber jeder neue verbindungsversuch wird unterdrückt.

Gunman1982
Beiträge: 923
Registriert: 09.07.2008 11:50:57
Lizenz eigener Beiträge: MIT Lizenz

Re: SNMP und IPTables?

Beitrag von Gunman1982 » 18.10.2011 18:11:55

unitra hat geschrieben: Wenn du schon in der 2-ten Zeile -P INPUT DROP hast, und danach ein iptable -P FORWARD ACCEPT.
Dann passiert vermutlich genau das was du beschrieben hast.

Lese mal ein Wenig über IP Tables, wie sie funktionieren, wie man sie konfiguriert, und wie sei vom System verarbeitet werden.
Die Reihenfolge ist der Schlüssel, und wonach du suchst.
Dann versuche es erneut zu konfigurieren.
*Fettnäpfchen reich* -p DROP bedeutet die policy bzw das default verhalten wird auf DROP gesetzt. Aber netter versuch ;-)

Zur Lösung des Problems kann ich grad auch nicht so viel Beitragen ausser meiner Frage: Versuchst du nach dem aktivieren nochmals mit ssh zu connecten? auch wieder auf port 2222?

Weiterhin würd ich die line mit established als erstes prüfen, Für bestehende Verbindungen muss er dann nicht erst alle Regeln durchlaufen, sollte noch nicht so viel ausmachen aber naja.
Was man auch immer gut machen kann ist zu debug zwecken als letztes eine LOG regel einzufügen um zu sehen welche pakete denn dann wirklich nicht von deinen regeln abgefasst werden und dann standard-mässig ins drop laufen.

dalari
Beiträge: 37
Registriert: 26.09.2011 08:55:06

Re: SNMP und IPTables?

Beitrag von dalari » 19.10.2011 09:44:46

Danke für die hilfe. Es war das alles nicht :) es war ein vollkommen dämliches netzwerkproblem. Die falsche netzwerkkarte und somit das falsche netzwerk hat versucht zu zugreifen...
Ich hatte mich schon in IP Tables eingelesen und überhaupt deswegen hab ich -P INPUt DROP genommen. die Policy greift wenn keine regel zutrifft.
Zur sicherheit habe ich aber das Skript doch ein wenig abgeändert

Code: Alles auswählen

#Firewallregeln
iptables -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
#Bestehende Verbindungen beibehalten
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#SSH, icmp und HTTP Freigeben fuer das DVZ netz
iptables -A INPUT -p tcp --dport 2222 -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p icmp -s 195.37.254.240/28 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 195.37.254.240/28 -j ACCEPT
#Lopbaqck freigeben
iptables -A INPUT -i lo -j ACCEPT
#SNMP Regeln
iptables -A INPUT -p udp -m udp --dport 161 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 162 -j ACCEPT
iptables -A INPUT -j DROP
Das ist nun 100%ig funktionsfähig

Antworten