Page 1 of 1

Ports für Namenauflösung

Posted: 2006-12-22 22:12
by grandcat
Hallo zusammen :wink: ,

ich hätte da mal wieder eine kleine Frage: Da ich bei meinem Server prinzipiell alle Anfragen nach außen und innen blockiere und nur gewollte Dienste mit dem WWW kommunizieren lassen will, würde ich gerne wissen, welche Ports benötigt werden, um eine Domain auf einem externen DNS-Server aufzulösen? :)

Re: Ports für Namenauflösung

Posted: 2006-12-22 23:59
by nyxus
für DNS sollte normalerweise UDP/53 reichen.

Re: Ports für Namenauflösung

Posted: 2006-12-23 00:11
by flo

Code: Select all

grep name /etc/services
domain          53/tcp          nameserver      # name-domain server
domain          53/udp          nameserver
für paranoide Firewalls eventuell noch die 953 dazunehmen, falls der Rechner auf dem Controlchannel horchen soll.

flo.

Re: Ports für Namenauflösung

Posted: 2006-12-23 00:13
by grandcat
Wenn ich bei den iptables folgende Regeln hinzufüge, sollte es doch klappen:

Code: Select all

iptables -A INPUT -p udp --sport 53 --dport 1024:65535 -j ACCEPT
iptables -A OUTPUT -p udp --sport 1024:65535 --dport 53 -j ACCEPT
So kommen die Verbindungen vom Port 53 des DNS-Servers über die Highports zum Server und umgekehrt. Allerdings klappt das nicht :?
Schalte ich die Firewall ab, so gehts natürlich, aber das will ich ja nicht unbedingt. Weiß jemand Rat? :)

EDIT:

Habe dein Beitrag erst gerade gesehen, Flo. Das werde ich gleich mal ausprobieren ;-)

Re: Ports für Namenauflösung

Posted: 2006-12-23 00:26
by flo
IMHO ist derzeit TCP das angesagtere ;-) probiers mal - aber so, wie ich die iptables-rule verstehe, müsste das sonst generell passen.

flo.

Re: Ports für Namenauflösung

Posted: 2006-12-23 00:33
by mad cow
rein:

Code: Select all

$IPTABLES -A INPUT -p udp -s $DNS0 --sport 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $DNS0 --sport 53 -j ACCEPT
$IPTABLES -A INPUT -p udp -s $DNS1 --sport 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $DNS1 --sport 53 -j ACCEPT
raus:

Code: Select all

$IPTABLES -A OUTPUT -p udp --sport 1024: --dport 53 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --sport 1024: --dport 53 -j ACCEPT

Re: Ports für Namenauflösung

Posted: 2006-12-23 00:46
by grandcat
Hier zur Lösung meines Problems. Da ich das iptables-Script auf einer Homepage generieren lies, habe ich nicht auf folgenden Regelsatz aufgepasst:

Code: Select all

    iptables -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset

    iptables -A MY_REJECT -p udp -j REJECT --reject-with icmp-port-unreachable

    iptables -A MY_REJECT -p icmp -j DROP

    iptables -A MY_REJECT -j REJECT --reject-with icmp-proto-unreachable
Dabei wird jede einzelne Regel mit MY_REJECT gefiltert, dadurch sind anscheinend die DNS-Abfragen gestört worden. Mit Herausnahme funktioniert es aber vorerst einmal :wink:

Re: Ports für Namenauflösung

Posted: 2006-12-23 00:49
by grandcat
Mad Cow wrote:rein:

Code: Select all

$IPTABLES -A INPUT -p udp -s $DNS0 --sport 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $DNS0 --sport 53 -j ACCEPT
$IPTABLES -A INPUT -p udp -s $DNS1 --sport 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $DNS1 --sport 53 -j ACCEPT
raus:

Code: Select all

$IPTABLES -A OUTPUT -p udp --sport 1024: --dport 53 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --sport 1024: --dport 53 -j ACCEPT
Das ist auch eine interessante Möglichkeit, lag bei mir aber an etwas anderem, wie schon erwähnt. Übrigens sind die Variablen $DNS0 und $DNS1 bei mir nicht belegt. Man müsste diese wahrscheinlich erst durch Auslesen der "/etc/resolv.conf" belegen :wink: (Suse Linux 10.0)

Re: Ports für Namenauflösung

Posted: 2006-12-23 11:03
by r. u. serious
Macht es nicht mehr Sinn, etwas wie dnsmasq oder einen anderen lokalen "DNS-Proxy" zu betreiben, und die iptables-regel explizit per iptables uid-owner zu matchen. - Wobei man selbst dann natürlich immer noch über DNS tunneln kann...