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
nmap
Befehlszeile haben Sie verwendet?iptables --list
wäre praktisch zu sehen. Sie möchten auch die Firewall insystem-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 save
wenn Sie fertig sind, sodass die Änderungen für den nächsten Neustart beibehalten werden.nmap -sU -p 53 $host
Antworten:
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:
(Nehmen Sie sich bitte irgendwann ein paar Minuten Zeit, um Ihre Firewall auf Stateful zu überarbeiten.)
quelle
Verwenden Sie
-I
anstelle von-A
.Wenn ein DNS-Server lauscht, lauscht er an Port 53, daher sollte die Eingaberegel lauten
quelle
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?
quelle