Centos iptables öffnen Port 53

8

Ich habe Probleme beim Öffnen von Port 53 auf meinem Centos-Computer für die DNS-Konfiguration.

Hier ist meine iptables-Konfiguration

-A INPUT -p udp -m udp --sport 53 -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT

Als ich einen nmap-Scan des Computers durchführte, wurde nur Port 80 als offen angezeigt. Vermisse ich etwas

BEARBEITEN:

Voll iptable

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]

-A INPUT -p udp -m state --state NEW,ESTABLISHED -m udp --dport 53 -j ACCEPT
-A INPUT -p udp -m udp --sport 53 -j ACCEPT
-A INPUT -p tcp -m state --state NEW --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT -reject-with icmp-host-prohibited
-A FORWARD -j REJECT -reject-with icmp-host-prohibited
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
COMMIT 
user1817081
quelle
Welche nmapBefehlszeile haben Sie verwendet?
Hauke ​​Laging
nmap 192.168.1.2
user1817081
1
Vielleicht hast du schon mal einen DROP. - Fügen Sie diese Regeln am Ende der Ketten hinzu.
Laurentiu Roescu
Ein iptables --listwäre praktisch zu sehen. Sie möchten auch die Firewall in system-config-firewall-tui(oder in Ihrer GUI) deaktivieren , damit Sie sie manuell mit iptables-Befehlen festlegen können. Andernfalls werden Ihre iptables neu geschrieben, wenn Sie diese verwenden. Bonus-Tipp: In Centos (mindestens) können Sie einen ausführen, service iptables savewenn Sie fertig sind, sodass die Änderungen für den nächsten Neustart beibehalten werden.
DougBTV
2
Sie erlauben nur UDP, aber nmap testet standardmäßig keine UDP-Ports. Sie brauchen dies:nmap -sU -p 53 $host
Hauke ​​Laging

Antworten:

12

Ihre Semantik ist umgekehrt.

Die von Ihnen veröffentlichten Regeln erlauben ausgehende DNS-Verbindungen zu einem Remote-DNS-Server, keine eingehenden Verbindungen zu einem lokalen DNS-Server.

Um Verbindungen zu Ihrem lokalen DNS-Server zuzulassen, kehren Sie die INPUT- und OUTPUT-Regeln um:

-A INPUT -p udp -m udp --dport 53 -j ACCEPT
-A OUTPUT -p udp -m udp --sport 53 -j ACCEPT

(Nehmen Sie sich bitte irgendwann ein paar Minuten Zeit, um Ihre Firewall auf Stateful zu überarbeiten.)

Michael Hampton
quelle
2
Möglicherweise möchten Sie auch optional TCP-Verbindungen zulassen, wenn Sie AFXR- oder andere DNS-Übertragungen durchführen.
Jeffatrackaid
Blockieren Sie keine TCP-Abfragen auf dem DNS-Server. Einige Antworten, wie z. B. www.google.com, passen nicht in das UDP-Paket und müssen von TCP wiederholt werden. TCP ist nicht nur für DNS-Übertragungen gedacht, sondern auch für normale Abfragen.
Tometzky
3

Verwenden Sie -Ianstelle von -A.

Wenn ein DNS-Server lauscht, lauscht er an Port 53, daher sollte die Eingaberegel lauten

-I INPUT -p udp -m udp --dport 53 -j ACCEPT
Iain
quelle
0

Sind Sie sicher, dass der DNS-Server aktiv ausgeführt wird? Auch wenn Sie den Port geöffnet haben, muss der Dienst aktiv sein. Sie können überprüfen, was lokal abgehört wird, indem Sie einen Befehl netstat ausführen. Haben Sie auch versucht, die Firewall vorübergehend vollständig auszuschalten, um zu sehen, was angezeigt wird?

Eric
quelle
Ja, ich bin sicher, dass der DNS ausgeführt wird. Wenn ich die iptables ausgeschaltet und nmap auf meinem anderen Computer ausgeführt habe, wird der Port als offen angezeigt.
user1817081
Können Sie Ihre vollständige iptables-Konfiguration veröffentlichen?
Eric
Post Update siehe oben
user1817081