Ports für Namenauflösung

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
grandcat
Posts: 104
Joined: 2006-08-15 12:26
Location: Bayern
 

Ports für Namenauflösung

Post 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? :)
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
 

Re: Ports für Namenauflösung

Post by nyxus »

für DNS sollte normalerweise UDP/53 reichen.
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: Ports für Namenauflösung

Post 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.
grandcat
Posts: 104
Joined: 2006-08-15 12:26
Location: Bayern
 

Re: Ports für Namenauflösung

Post 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 ;-)
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: Ports für Namenauflösung

Post 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.
mad cow
Posts: 33
Joined: 2006-11-23 22:57
Location: Heidelberg (Baden)
 

Re: Ports für Namenauflösung

Post 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
grandcat
Posts: 104
Joined: 2006-08-15 12:26
Location: Bayern
 

Re: Ports für Namenauflösung

Post 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:
grandcat
Posts: 104
Joined: 2006-08-15 12:26
Location: Bayern
 

Re: Ports für Namenauflösung

Post 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)
r. u. serious
Posts: 88
Joined: 2006-06-10 14:17
 

Re: Ports für Namenauflösung

Post 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...