Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
-
KeePon
- Beiträge: 10
- Registriert: 13.09.2006 16:36:09
Beitrag
von KeePon » 29.11.2006 09:31:31
hallo, ich hab mir für mein Server folgendes iptables Script geschrieben:
Code: Alles auswählen
#!/bin/bash
IPT=/sbin/iptables
$IPT -F
#Loggen
#iptables -A INPUT -j LOG --log-prefix "wall:"
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
#echo "achtung alles offen"
#$IPT -P INPUT ACCEPT
#$IPT -P OUTPUT ACCEPT
#$IPT -P FORWARD ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A INPUT -i lo -j ACCEPT
#ping
$IPT -A OUTPUT -p icmp -j ACCEPT
$IPT -A INPUT -p icmp -j ACCEPT
PORTStcp="20 21 22 80 53 14534"
PORTSudp="53 7466"
for i in $PORTStcp
do
$IPT -A OUTPUT -p tcp --sport $i --dport 1024: -j ACCEPT
$IPT -A INPUT -p tcp --sport 1024: --dport $i -j ACCEPT
echo "... TCP Port $i offen"
done
for i in $PORTSudp
do
$IPT -A OUTPUT -p udp --sport $i --dport 1024: -j ACCEPT
$IPT -A INPUT -p udp --sport 1024: --dport $i -j ACCEPT
echo "... UDP Port $i offen"
done
#$IPT -L
exit 0
doch leider kann ich nach dem ausführen nicht mehr mit "apt-get update" irgendeine Verbindung aufbauen. Erst wenn ich bei "#$IPT -P OUTPUT ACCEPT" die Raute wegnehme und allen Output zulasse funst es, doch das möchte ich nur ungern. Kann mir einer sagen wo mein denkfehler liegt, oder was ich hier übersehen hab?
grüsse
-
herrchen
- Beiträge: 3257
- Registriert: 15.08.2005 20:45:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Berlin
Beitrag
von herrchen » 29.11.2006 10:15:37
KeePon hat geschrieben:Kann mir einer sagen wo mein denkfehler liegt
du hast "--sport" und "--dport" verwechselt.
wenn du eine verbindung zu einem externen webserver aufbauen willst, verbindet sich ein hoher port deines rechners mit dem port 80 des webservers.
das gilt auch für die anderen protokolle.
herrchen
-
KeePon
- Beiträge: 10
- Registriert: 13.09.2006 16:36:09
Beitrag
von KeePon » 29.11.2006 11:04:06
ich habe mal output und input vertauscht bei der tcp und udp schleife. doch leider ist dann der server nicht erreichbar (ssh sowie www)
-
nepos
- Beiträge: 5238
- Registriert: 05.01.2005 10:08:12
Beitrag
von nepos » 29.11.2006 11:13:34
Häng doch bitte mal ans Ende der Chains INPUT/OUTPUT noch eine LOG-Regel. Dann siehst du eventuell in den Logs, was da verworfen wird und kannst gezielter nach dem Fehler in deinem Skript suchen.
-
KeePon
- Beiträge: 10
- Registriert: 13.09.2006 16:36:09
Beitrag
von KeePon » 29.11.2006 12:58:07
ähm ich habs gefunden. es liegt daran das ich ja einen webserver als dienst zu laufen habe dadurch port 80 erreichbar sein muss.
aber bei updates muss er ja selber auf port 80 eines anderen servers connecten. das hab ich nicht berücksichtigt in den regeln.
danke für die hilfe
jetzt geht es, hier das script zum nachbauen:
Code: Alles auswählen
#!/bin/bash
IPT=/sbin/iptables
$IPT -F
#Loggen
#iptables -A INPUT -j LOG --log-prefix "wall:"
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
#echo "achtung alles offen"
#iptables -P INPUT ACCEPT
#iptables -P OUTPUT ACCEPT
#iptables -P FORWARD ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
#ping
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
#Diese Dienste bietet der Server an und oeffnet sie fuer Input/Output
PORTSservertcp="20 21 22 80 14534"
PORTSserverudp="7466"
for i in $PORTSservertcp
do
$IPT -A OUTPUT -p tcp --sport $i --dport 1024: -j ACCEPT
$IPT -A INPUT -p tcp --sport 1024: --dport $i -j ACCEPT
echo "... TCP Port $i offen"
done
for i in $PORTSserverudp
do
$IPT -A OUTPUT -p udp --sport $i --dport 1024: -j ACCEPT
$IPT -A INPUT -p udp --sport 1024: --dport $i -j ACCEPT
echo "... UDP Port $i offen"
done
#Manchmal muss der Server auch selbst raus, fuer evtl. Updates
PORTSselbsttcp="20 21 80 53"
PORTSselbstudp="53"
for i in $PORTSselbsttcp
do
$IPT -A OUTPUT -p tcp --sport 1024: --dport $i -j ACCEPT
$IPT -A INPUT -p tcp --sport $i --dport 1024: -j ACCEPT
echo "... TCP Port $i fuer Updates offen"
done
for i in $PORTSselbstudp
do
$IPT -A OUTPUT -p udp --sport 1024: --dport $i -j ACCEPT
$IPT -A INPUT -p udp --sport $i --dport 1024: -j ACCEPT
echo "... UDP Port $i fuer Updates offen"
done
#$IPT -L
exit 0