Ports für apt-get

dark_flash01

Grünschnabel
Hallo,
seitdem ich auf meinem rootserver eine Firewall laufen habe, funktioniert apt-get nicht mehr.
wget auch nicht. Jedesmal kann er den DNS-Namen nicht in eine IP auflösen. Welche Ports muss ich dafür öffnen? Vor der Firewall gings doch auch :( Bitte helft mir.

Lg flash

--
 
apt-get arbeitet mit FTP oder HTTP, je nachdem was fuer Mirrors in der Source-Datei angegeben sind.
Genauso sieht es mit wget aus, FTP oder HTTP, je nachdem was man so anspricht.
DNS laeuft ueber Port 53 des TCP-Protokolls.
 
Mmmh... ich hab jetzt das alles und noch weitere Ports offen und ich bekomme bei
"apt-get update" immernoch Fehler, wie diese hier:
Code:
Err http://ftp.de.debian.org etch/main Sources
  Could not resolve 'ftp.de.debian.org'
Failed to fetch http://ftp.de.debian.org/debian/dists/etch/Release.gpg  Could not resolve 'ftp.de.debian.org'

Das iptables-shell-skript sieht folgendermaßen aus:
Code:
#!/bin/bash
# Meine kleine Firewall
echo "Firewall starten... "

# Variablen deklarieren
IPTABLES=/sbin/iptables
MY_LAN_IP=192.168.1.200
LAN_INTERFACE=eth0
LAN_IP_RANGE=192.168.1.0/24
LAN_BROADCAST=192.168.1.255
WWW_INTERFACE=eth0
SSH_PORT=21300

# Alle Regeln löschen
echo "  Alte Regeln löschen..."
$IPTABLES -F
echo "  [fertig]"

# Alles verbieten, was nicht erlaubt wird
echo "  Alles verbieten..."
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
echo "  [fertig]"

# Loopback Interface freigeben
echo "  Loopback Interface freigeben..."
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
echo "  [fertig]"

# SSH erlauben
echo "  SSH erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport $SSH_PORT -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport $SSH_PORT -j ACCEPT
echo "  auf Port $SSH_PORT"
echo "  [fertig]"

# Lighttpd
echo "  Lighttpd-Port 80 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 80 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 80 -j ACCEPT
echo "  [fertig]"

echo "  Port 22 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 22 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 22 -j ACCEPT
echo "  [fertig]"

echo "  POP3-Port 110 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 110 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 110 -j ACCEPT
echo "  [fertig]"


echo "  IMAP-Port 143 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 143 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 143 -j ACCEPT
echo "  [fertig]"

echo "  https-Port 443 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 443 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 443 -j ACCEPT
echo "  [fertig]"

echo "  SMTPs-Port 465 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 465 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 465 -j ACCEPT
echo "  [fertig]"

echo "  IMAPs-Port 443 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 993 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 993 -j ACCEPT
echo "  [fertig]"

echo "  POP3s-Port 443 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 995 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 995 -j ACCEPT
echo "  [fertig]"

echo "  udp-Port 53 erlauben..."
$IPTABLES -A INPUT -p udp -i $LAN_INTERFACE --dport 53 -j ACCEPT
$IPTABLES -A OUTPUT -p udp -o $LAN_INTERFACE --sport 53 -j ACCEPT
echo "  [fertig]"

echo "  DNS-Port 53 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 53 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 53 -j ACCEPT
echo "  [fertig]"

echo "  udp-Port 123 erlauben..."
$IPTABLES -A INPUT -p udp -i $LAN_INTERFACE --dport 123 -j ACCEPT
$IPTABLES -A OUTPUT -p udp -o $LAN_INTERFACE --sport 123 -j ACCEPT
echo "  [fertig]"

echo "  ICMP erlauben..."
$IPTABLES -A INPUT -p icmp -i $LAN_INTERFACE -j ACCEPT
$IPTABLES -A OUTPUT -p icmp -o $LAN_INTERFACE -j ACCEPT
echo "  [fertig]"

echo "[fertig]"
exit 0

#end of file

Mach ich irgendwas richtig derbe falsch? Ich versteh es nicht :( Nachdem ich heute kurz alle Regeln auf ACCEPT hatte, gings ohne Probleme.
 
Das iptables-shell-skript sieht folgendermaßen aus:
Code:
echo "  udp-Port 53 erlauben..."
$IPTABLES -A INPUT -p udp -i $LAN_INTERFACE --dport 53 -j ACCEPT
$IPTABLES -A OUTPUT -p udp -o $LAN_INTERFACE --sport 53 -j ACCEPT
echo "  [fertig]"

echo "  DNS-Port 53 erlauben..."
$IPTABLES -A INPUT -p tcp -i $LAN_INTERFACE --dport 53 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -o $LAN_INTERFACE --sport 53 -j ACCEPT
echo "  [fertig]"

Mach ich irgendwas richtig derbe falsch? Ich versteh es nicht :( Nachdem ich heute kurz alle Regeln auf ACCEPT hatte, gings ohne Probleme.

DNS Lookups sollten nur über udp laufen, also braucht man die tcp Regel nicht unbedingt.
Desweiteren in den Regeln --dport und --sport vertauschen. Beim DNS Lookup frägt man bei nem anderen Server den Dienst auf Port 53 an. Also ausgehend Destination-Port 53 und eingehend Source-Port.

Mit dieser Regel erlaubst du alle Pakete die auf Port 53 deines PCs verbinden möchten.
 

Neue Beiträge

Zurück