SOA PUBLIQUE - a-kalin0/Admin-Projet-CAA GitHub Wiki

SOA Publique


Dockerfile

FROM ubuntu/bind9:latest

MAINTAINER groupe1

RUN mkdir -p /var/log/named
RUN apt update -y
RUN apt install net-tools -y
RUN apt install nano -y
RUN apt install iputils-ping -y
RUN apt install traceroute -y
RUN apt install dnsutils -y
RUN apt install traceroute -y
RUN apt install links -y
RUN apt install tcpdump -y

COPY named.conf /etc/bind/
COPY woodytoys.public.forward /etc/bind/

EXPOSE 53/tcp/udp

CMD ["mkdir", "-p", "/var/log/named/"]
CMD ["named"]

Named.conf

options {
        directory "/var/cache/bind";

        # Activer DNSSEC
        #dnssec-enable yes;
        #dnssec-validation auto;
        #auth-nxdomain no; # RFC1035

        allow-query {
                any;
        };

        allow-recursion {
                none;
        };
        recursion no;

        // Configure the IPs to listen on here.
        listen-on port 53 { any; };
        listen-on-v6 { none; };

        pid-file "/var/run/named/named.pid";
        allow-transfer { none;};
};

zone "." IN {
        type hint;
        file "/usr/share/dns/root.hints";
};

zone "localhost" IN {
        type master;
        file "db.local";
        allow-update { none; };
        notify no;
};
zone "127.in-addr.arpa" IN {
        type master;
        file "db.127";
	allow-update { none; };
        notify no;
};

zone "l1-1.ephec-ti.be" IN {
    type master;
        file "/etc/bind/woodytoys.public.forward";
        allow-update { none; };
    notify no;
};

  • Explication : Nous avons rajouté la zone l1-1.ephec-ti.be pour configurer tous les services de la zone publique à savoir le serveur web et le serveur mail externes. Sinon le fichier est assez similaire à celui du SOA Interne.

Woodytoys.public.forward

$ORIGIN l1-1.ephec-ti.be.
$TTL 86400
@     IN     SOA    ns.l1-1.ephec-ti.be.     hostmaster.l1-1.ephec-ti.be. (
                    2001062501 ; serial
                    21600      ; refresh after 6 hours
                    3600       ; retry after 1 hour
                    604800     ; expire after 1 week
                    86400 )    ; minimum TTL of 1 day

      IN     NS     ns.l1-1.ephec-ti.be.

      IN     MX     10    mail.l1-1.ephec-ti.be.

ns             IN     A       193.70.112.34
www            IN     A       193.70.112.34
b2b            IN     A       193.70.112.34
mail           IN     A       193.70.112.34

Lancement du conteneur

Voir : DOCKER-COMPOSE


Test de fonctionnement

  • Avec un ping : ping mail.l1-1.ephec-ti.be

image

  • Avec un dig : dig @193.70.112.34 ns.l1-1.ephec-ti.be

image


Maintenance SOA

Voici un petit guide de maintenance pour le SOA public qui ressemble à peu près à celle sur le DNS.


  • Ajout / Modification / Suppression d'un user DNS

    • Connectez-vous au serveur via SSH.
    • Accédez au répertoire contenant les fichiers de configuration DNS, dans /etc/bind.
    • Éditez le fichier de zone correspondant à votre domaine (par exemple, woodytoys.lab).
    • Ajoutez, modifiez ou supprimez des records DNS.
    • Enregistrez le fichier et redémarrez le service BIND (sudo systemctl restart bind9).

  • Troubleshooting

    • Les logs de BIND se trouvent généralement dans /var/log/syslog ou /var/log/named.
    • Utilisez des commandes comme grep, tail, ou less pour consulter et rechercher des erreurs spécifiques dans les logs.
    • Si vous êtes sur docker desktop, les logs se trouvent dans un onglet dédié, vous pouvez voir les logs et les éventuelles erreurs pour chaque conteneurs

  • Mises à jour

    • Connectez-vous au VPS via SSH.
    • Mettez à jour la liste des paquets disponibles : sudo apt-get update.
    • Mettez à jour BIND spécifiquement : sudo apt-get install --only-upgrade bind9.
    • Redémarrez le service BIND pour appliquer les changements : sudo systemctl restart bind9.service ou sudo service bind9 restart

  • Erreurs fréquentes et solutions
  1. Problèmes de syntaxes

    • Regarder les logs
    • Aller dans le fichier indiquant l'erreur et vérifier la syntaxe du fichier avec les commandes : named-checkconf ou named-checkzone
    • Sauvegarder le fichier et reessayer
  2. Problèmes de ping, de délégation ou de reverse

    • Vérifier les logs pour trouver les potentielles sources de problèmes
    • Vérifier le nommage des fichiers et des zones de délégation et reverse
    • Vérifier l'adressage IP des records