Wie sollte eine iptables Konfiguration aussehen, die mit Ausnahme von apt-get alle ein- und ausgehenden Pakete blockt?
Gruß
Jochen
iptables und apt-get (only)
Re: iptables und apt-get (only)
apt-get laeuft mit den Rechten des Users, der es ausfuehrt, daher kann man nicht per --uid-owner matchen. Vermutlich waere es sinnvoll, dafuer (auf derselben Maschine) einen
apt-cacher-ng aufzusetzen, welcher vermutlich alle Anfragen zu nicht-konfigurierten Repositories blockt und unter einem eigenen User laeuft. Dann wuerde man etwas wieDann koennt's noch sein, dass man fuer ICMP noch Ausnahmen erlauben muss, aber so im Grunde sollte es das gewesen sein.
Gruss Cae
![Debian](/pics/debianpackage.png)
Code: Alles auswählen
#!/bin/sh
iptables -P INPUT DROP;
iptables -P OUTPUT DROP;
iptables -P FORWARD DROP;
iptables -F;
iptables -X;
iptables -t nat -F;
iptables -t nat -X;
iptables -t mangle -F;
iptables -t mangle -X;
iptables -A INPUT -i lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT;
iptables -A OUTPUT -o lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT;
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT;
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT;
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT;
iptables -A OUTPUT -m state --state NEW -m owner --uid-owner apt-cacher-ng \
-p tcp --dport 80 -j ACCEPT
Gruss 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
Re: iptables und apt-get (only)
Vielen Dank für das Script, werde ich gleich testen.
Ich habe aber noch eine Verständnisfrage. Aus der Windows-Welt war ich es bisher gewohnt, dass bei der Serverfirewall für eine eingehende Verbindung (z.B. tcp 80) auch nur eine eingehende Regel benötigt wird. Bei meinem vServer ist es aber scheinbar so, dass für den Webserver (Apache) der Port tcp 80 auch ausgehend freigegeben werden muss, damit er von außen angesprochen werden kann.
Beispiel:
Wenn ich nun die OUTPUT-Regel für port 80 weglasse ist der Webserver nicht mehr erreichbar.
Gruß
Jochen
Ich habe aber noch eine Verständnisfrage. Aus der Windows-Welt war ich es bisher gewohnt, dass bei der Serverfirewall für eine eingehende Verbindung (z.B. tcp 80) auch nur eine eingehende Regel benötigt wird. Bei meinem vServer ist es aber scheinbar so, dass für den Webserver (Apache) der Port tcp 80 auch ausgehend freigegeben werden muss, damit er von außen angesprochen werden kann.
Beispiel:
Code: Alles auswählen
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -p tcp –dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp –dport 80 -j ACCEPT
Gruß
Jochen
Re: iptables und apt-get (only)
erreichbar (incoming) schon, nur kann er nicht antworten
Re: iptables und apt-get (only)
Klar mit dieser "dummen" art von Regeln natürlich weil er nicht antworten kann. Was du willst sind regeln, die connection tracking verwenden (iptables -m state --state…, $suchmaschine liefert beispiele/erklärungen).Wenn ich nun die OUTPUT-Regel für port 80 weglasse ist der Webserver nicht mehr erreichbar.
Unix is user-friendly; it's just picky about who its friends are.
Re: iptables und apt-get (only)
Ja, aber dann bitte bei OUTGOING mit --sport 80, nicht --dport. Und es ist kein Geviertstrich wie –, sondern zwei Minuszeichen nacheinander: --. Aber wie catdog2 schon geschrieben hat, bist du mit einer stateful firewall besser bedient (wie es mein Beispiel oben auch tut).jochen35 hat geschrieben:Bei meinem vServer ist es aber scheinbar so, dass für den Webserver (Apache) der Port tcp 80 auch ausgehend freigegeben werden muss, damit er von außen angesprochen werden kann.
Gruss 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