J'ai des problèmes pour ouvrir le port 53 sur ma machine Centos, pour la configuration DNS.
Voici ma config iptables
-A INPUT -p udp -m udp --sport 53 -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
Lorsque j'ai exécuté une analyse nmap de la machine, seul le port 80 s'est révélé ouvert. Suis-je en train de manquer quelque chose?
ÉDITER:
Plein 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
ligne de commande que vous avez utilisée?iptables --list
serait pratique à voir. Vous voudrez également désactiver le pare-feu danssystem-config-firewall-tui
(ou dans votre interface graphique), afin de pouvoir le définir manuellement avec les commandes iptables, sinon, il réécrira vos iptables si vous l'utilisez. Astuce bonus, en centos (au moins), vous pouvez faire uneservice iptables save
fois que vous avez terminé, de sorte que les modifications restent valables pour le prochain redémarrage.nmap -sU -p 53 $host
Réponses:
Votre sémantique est inversée.
Les règles que vous avez publiées autorisent les connexions DNS sortantes à un serveur DNS distant, et non les connexions entrantes à un serveur DNS local.
Pour autoriser les connexions à votre serveur DNS local, inversez les règles INPUT et OUTPUT:
(Et veuillez prendre quelques minutes à un moment donné pour réviser votre pare-feu pour qu'il soit avec état.)
la source
Utilisez
-I
au lieu de-A
.Comme vous avez un serveur DNS qui écoute alors il écoutera sur le port 53 donc la règle d'entrée doit être
la source
Êtes-vous sûr que le serveur DNS fonctionne activement? Même si le port est ouvert, le service doit être actif. Vous pouvez vérifier ce qui écoute localement en exécutant une commande netstat. De plus, avez-vous essayé de désactiver complètement le pare-feu momentanément juste pour voir ce qui apparaît?
la source