guarddog iptables undicht?

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
jhr-online
Beiträge: 2186
Registriert: 18.09.2005 15:52:02
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

guarddog iptables undicht?

Beitrag von jhr-online » 08.02.2006 17:00:57

Mahlzeit!

Ich hab mir mal gestattet, mit guarddog eine Firewall zu bauen. Die scheint mir allerdings etwas undicht, schon, wenn ich mir die ersten zehn Zeilen ansehe; ich bin allerdings auch alles andere als ein iptables-Profi. Vielleicht hat ja einer von euch Lust dazu... Und wenn dann auch noch einer mit guarddog-Erfahrung kommt, dann könnte ich die Probleme direkt da auflösen, aber eins nach dem anderen...

http://nopaste.debianforum.de/2405

jhr
Desktop: Intel Core2Quad Q8300 2.5GHz, 256GB SSD + 1 TB HDD, 8 GB RAM, Debian Sid, Kernel 3.13

Benutzeravatar
meandtheshell
Beiträge: 4054
Registriert: 14.01.2005 17:51:30

Beitrag von meandtheshell » 08.02.2006 17:16:41

1)
ich rate keinem dazu sich mit irgendwelchen front ends ein Regel Set für Iptables zu generieren - deren code lässt sich für einen Menschen eigentlich gar nicht lesen

2)
du vermutest es ist etwas undicht? besser ist es du sorgst für Fakten
http://www.grc.com/
http://www.insecure.org/ <--- ja das DoD kennt die Firma - nmap kommt von den Leuten

Code: Alles auswählen

apt-cache show nmap
3)
lies dich in die materie ein und dann schreib dir ein script das du verstehst - glaub mir früher oder später wirst du das sowieso machen darum verschwende nicht die Zeit mit sinnlosen Front Ends sondern mache es gleich richtig

http://iptables-tutorial.frozentux.net/ ... orial.html

markus

jhr-online
Beiträge: 2186
Registriert: 18.09.2005 15:52:02
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Beitrag von jhr-online » 08.02.2006 17:25:37

3) da läuft's wohl drauf hinaus... Ich wollte eigentlich eben mit nem Frontend was aufbauen, damit erstmal was da ist, aber erstens hast du Recht und zweitens blockt die jetzt erstellte eher mit Willkür als sinnvoll. Also danke für den Link!

jhr
Desktop: Intel Core2Quad Q8300 2.5GHz, 256GB SSD + 1 TB HDD, 8 GB RAM, Debian Sid, Kernel 3.13

Benutzeravatar
meandtheshell
Beiträge: 4054
Registriert: 14.01.2005 17:51:30

Beitrag von meandtheshell » 08.02.2006 17:34:42

@jhr ...
hi
naja das Problem ist sieh dir einmal den code von den Dingern an. Ein Mensch geht dabei zu grunde wenn er das lesen und verstehen muss.
Für jemanden der sich um das Basiswissen herumschleichen will und auf dem Wege mit klicken etc. einen Paket Filter machen will ist das schon gar nicht möglich.

Warum:
die Tatsache das er es will impliziert das er recht neu auf dem Gebiet ist, was wiederum impliziert er hat noch nicht viel Wissen und Erfahrung damit ---> unmöglich solchen code zu verbessern

Generell:
bin ich der Meinung das man wertvolles Basis Wissen über Bord wirft wenn man sich nicht einmal mit Iptables auf unterer Ebene ohne ein Front End vorzuschieben beschäftigt.
Denn um einen Paketfilter zu realisieren benötigt man viel Wissen über Protokolle, routing, DNS, etc. alles Dinge die man gezwungen ist sich genauer anzusehen wenn man sich ein script schreibt ---> man lernt viel wichtiges Zeug

markus

edit:
zum "unter Beschuß nehmen" deiner Firewall, Security im LAN usw. eignet sich auch

Code: Alles auswählen

apt-cache show nessus
hat client und server

blutigerAnfänger
Beiträge: 100
Registriert: 04.01.2005 09:38:14

Beitrag von blutigerAnfänger » 08.02.2006 18:05:15

Handmade ist wirklich besser, aber hast Du schon mal das Paket firehol probiert?

Code: Alles auswählen

apt-get install firehol
oder erstmal nur ein

Code: Alles auswählen

apt-cache show firehol
machen :wink:

Mir als Einsteiger hat das geholfen - http://firehol.sourceforge.net/
Falls Du dann Lust auf mehr hast kannst Du immer noch IPTABLES pauken. (ist generell zu empfehlen)

Firewall testen geht gut mit Nessus oder nmap aber es gibt auch Internetseiten auf denen man mal schnell einen Audit starten kann z.B.: http://scan.sygate.com/ - wie gut diese o. andere Seiten funktionieren weiss ich nicht, die Probe im eigenen LAN ist meistens besser. (Kann man auch bequem mit virtuellen Rechnern testen - sprich: VM-Ware)

Gruß
blutigerAnfänger

Benutzeravatar
cliff99
Beiträge: 189
Registriert: 23.06.2004 18:06:44
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Stuttgart

Beitrag von cliff99 » 08.02.2006 19:40:20

Also, ich habe eine Zeit lang Guarddog benutzt, bevor ich mich in den iptables-Syntax eingearbeitet und ein eigenes Skript geschrieben habe. Meiner Meinung nach ist Guarddog ziemlich gut für den normalen Gebrauch. Guarddog setzt den Standard auf DROP und macht nur die Ports auf, die der User auswählt. Das ist genau die Vorgehensweise, die bei sicher >95% aller iptables-basirenden Firewalls benutzt wird.
Man sollte sich allerdings nicht die Ausgabe von "iptables -L" angucken, sondern die /etc/rc.firewall, die Guarddog erzeugt. Die ist recht gut kommentiert und für jeden, der sich mit iptables auskennt, zu verstehen. Das sieht etwa so aus:

Code: Alles auswählen

...
# Allow 'icq'
iptables -A f1to0 -p udp --sport 0:65535 --dport 4000:4000 -j ACCEPT
iptables -A f1to0 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state NEW -j ACCEPT
iptables -A f0to1 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state NEW -j ACCEPT
# Allow 'http'
...

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 08.02.2006 20:44:37

cliff99 hat geschrieben: Man sollte sich allerdings nicht die Ausgabe von "iptables -L" angucken, sondern die /etc/rc.firewall, die Guarddog erzeugt.
Ich würde es anders ausdrücken: Man sollte sich niemals nur die Ausgabe von "iptables -L" angucken, dort wird leider das Interface nicht mit angegeben:

Code: Alles auswählen

root@gms1:~# iptables -N xx
root@gms1:~# iptables -A xx -i eth0 -j DROP
root@gms1:~# iptables -A xx -i lo -j ACCEPT
Damit wird folgende Ausgabe erzeugt:

Code: Alles auswählen

root@gms1:~# iptables -L xx
Chain xx (0 references)
target     prot opt source               destination
DROP       all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
wenn, dann sollte man sich "iptables -vL" anschauen:

Code: Alles auswählen

root@gms1:~# iptables -vL xx
Chain xx (0 references)
 pkts bytes target     prot opt in     out     source               destination 
    0     0 DROP       all  --  eth0   any     anywhere             anywhere 
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere 
Gruß
gms

Antworten