• Serveurs
  • [Discussion] Mettre en place un serveur DNS avec Bind9 et DNSSEC

Salut Hardware et merci pour ta réponse

Justement, Online ne le supporte pas et c'est vraiment dommage. En plus, à la Hotline, ils ne font pas de support pour tout ce qui touche au DNS... en gros, c'est démerde-toi. Dommage parce que les prix sont vraiment intéressants sinon.

Bref, je viens de regarder chez GANDI... c'est cher un nom de domaine chez eux ! 2x le prix de chez Online !!! Oo'

Je me vois pas tout transférer ailleurs, ou alors Kimsufi ! Mais là, pareil, les boxes 1er prix sont toutes prises... grrr


Je continue mes recherches


Cordialement

++

V.
Tu peux retrouver la liste des registrars prennant en charge DNSSEC sur le site de l'ICANN :

https://www.icann.org/resources/pages/deployment-2012-02-25-en

Comme tu peux le voir, il y en a très peu vu que ce standard est assez récent. Les serveurs racines et la zone root "." ont leur signature depuis 2010, ensuite on suivi les domaines de haut-niveau NET, ORG, COM dans la même année. Pour moi un bon Registrar se doit de proposer DNSSEC, au moins pour les professionnels et les entreprises.
RE Salut Hardware, et encore merci pour ta réponse

Juste une question, comme ça : si je prends un serveur Kimsufi à 5€, vu que c'est du OVH Low Cost, le DNSSEC est aussi pris en charge ? ou faut vraiment prendre un serveur OVH ?

Si je demande, c'est juste que je n'ai pas "envie de m'embêter" à avoir 1 serveur hébergé ici (en l’occurrence Online.net), un domaine géré là-bas (GANDI ou OVH), etc. Le mieux pour moi serait de tout regrouper en un seul endroit.

Donc si KimSufi gère le DNSSEC, je dirai banco !

Au plaisir.

V.
La prise en charge de DNSSEC est complètement indépendante de l'offre d'hébergement ou de l'hébergeur, le plus important c'est de prendre un nom de domaine chez un registrar qui dispose bien de ce standard. Ton serveur tu peux le prendre n'importe où, peut importe l'hébergeur, ça n'a aucune importance.

Donc dire :
virgo77 wrote:Si KimSufi gère le DNSSEC, je dirai banco !
C'est incorrect.

Moi par exemple, j'ai choisis Gandi en tant que registrar et SoYouStart (OVH) en tant qu'hébergeur, ça fonctionne très bien. Si tu préfère regrouper tout chez le même prestataire, tu peux transférer ton nom de domaine de Online.net vers OVH puis choisir une offre kimsufi pour l'hébergement.
7 jours plus tard
J'ai un soucis avec la vérification "TXT de chez Kimsufi ... donc je configure le db.domain.tld comme il faut et sous la ligne :
@                   IN                NS                   ns.kimsufi.com.
j'ajoute
ownercheck          IN                TXT                  "1234abcd"
Je valide chez Kimsufi ... et ... Non ça veux pas .... une idée ?

Ps / C'est un NDD, de chez OVH ...
Tu peux me passer ton enregistrement SOA ?
Comme je ne sais pas exactement ce que tu veux je te met toute le db.domain.tld:
(si j'ai bien compris, c'est la lign "SOA" ?
; ZONE : nomdedomaine.ovh
; ------------------------------------------------------------------
$TTL 7200

@       IN      SOA    ns12346.ip-00-00-000.eu. hostmaster.nomdedomaine.ovh. (
                                        2015030401 ; Serial
                                        7200       ; Refresh
                                        1800       ; Retry
                                        1209600    ; Expire - 1 week
                                        86400 )    ; Minimum

; NAMESERVERS

@                   IN                NS                   ns123456.ip-00-000-000.eu.
@                   IN                NS                   ns.kimsufi.com.
ownercheck    IN                TXT                 "1234abcd"
Voila pourquoi ça ne marche pas, OVH cherche le sous domaine ownercheck.nomdedomaine.tld et toi dans ta zone tu indiques ownercheck.ns12346.ip-00-00-000.eu., il faut que tu corriges ta zone DNS comme ceci :
; ZONE : domain.tld
; ------------------------------------------------------------------
$TTL 7200

@       IN      SOA    hostname.domain.tld. hostmaster.domain.tld. (
                                        2014102001 ; Serial
                                        7200       ; Refresh
                                        1800       ; Retry
                                        1209600    ; Expire - 1 week
                                        86400 )    ; Minimum

; Serveurs de noms

@                   IN                NS                hostname.domain.tld.
@                   IN                NS                ns.kimsufi.com.

; Enregistrements A

@                   IN                A                 IPv4 serveur
hostname            IN                A                 IPv4 serveur

; Vérification OVH
ownercheck          IN                TXT               "1234abcd"
hostname = Nom d'hôte de ton serveur
J'ai fait ce que tu ma='a dis je crois ... mais ... ça veux pas !
; ZONE : nomdedomaine.ovh
; ------------------------------------------------------------------
$TTL 7200

@       IN      SOA    ns123456.ip-00-000-000.eu. hostmaster.nomdedomaine.ovh. (
                                        2015030402 ; Serial
                                        7200       ; Refresh
                                        1800       ; Retry
                                        1209600    ; Expire - 1 week
                                        86400 )    ; Minimum

; Serveurs de noms

@                   IN                NS                ns123456.ip-00-000-000.eu.
@                   IN                NS                ns.kimsufi.com.

; Enregistrements A

@                   IN                A                 10.20.30.40
nomdedomaine.ovh       IN                A                 10.20.30.40

; Vérification OVH
ownercheck          IN                TXT               "1234abcd"
Non tu as pas compris. Je vais expliquer simplement :

Ton serveur DNS doit être identité sur le réseau avec un adresse unique qui lui est propre. Ton serveur dispose d'un nom d'hôte ou hostname en anglais permettant de le retrouver sur le réseau local, tu peux voir son nom en regardant dans le fichier /etc/hostname.

Tu peux bien entendu changer son nom à ta convenance, par exemple si tu décides de nommer ton serveur 'serveur1', dans /etc/hostname tu dois mettre :
serveur1
Il faut aussi que ton serveur soit identifiable sur internet, pour ce faire tu dois lui assigner un FQDN (Fully Qualified Domain Name) ou nom de domaine complètement qualifié. Dans cet exemple, le FQDN associé à ton serveur sera :
serveur1.tondomaine.tld.
Le point final est important, il désigne la racine DNS. Donc cette adresse révèle la position absolue du noeud dans l'arborescence DNS, elle identifie de manière unique ton serveur sur le réseau. Une fois que tu possèdes le FQDN, tu peux mettre à jour le fichier /etc/hosts :
127.0.0.1     localhost.localdomain   localhost
IP DU SERVEUR serveur1.tondomaine.tld serveur1
Il faut modifier uniquement la seconde ligne.

Une fois que c'est fait, un redémarrage du serveur est nécessaire. La zone DNS devra être comme ceci :
; ZONE : tondomaine.tld.
; ------------------------------------------------------------------
$TTL 7200

@       IN      SOA    serveur1.tondomaine.tld. hostmaster.tondomaine.tld. (
                                        2014102001 ; Serial
                                        7200       ; Refresh
                                        1800       ; Retry
                                        1209600    ; Expire - 1 week
                                        86400 )    ; Minimum

; Serveurs de noms

@                   IN                NS                serveur1.tondomaine.tld.
@                   IN                NS                ns.kimsufi.com.

; Enregistrements A

@                   IN                A                 IPv4 serveur
hostname            IN                A                 IPv4 serveur

; Vérification OVH
ownercheck          IN                TXT               "1234abcd"
J'espère que c'est clair, j'ai essayé d'expliquer simplement.
Super, c'est cool ça fonctionne merci encore je passe a DNSeCC !
19 jours plus tard
Hello @Harware,

Dis, je suis entrain de regarder ton tuto, de le décortiquer, avant de me lancer dans l'install de bind et dnssec sur mon vps, qui actuellement n'a pour fonction que d'être un vpn.

N'étant pas du tout expert dans le domaine des dns, loin de là, j'avoue que j'suis un peu perdu. Même si tes explications, notamment la dernière sur ce post, sont cool pour la compréhension.

Pour expliquer vite fait ma situation :
-J'ai un serveur seedbox avec une IP X
-Un vps-vpn avec IP Y
-Un nom de domaine chez gandi

Actuellement, chez gandi, j'ai deux enregistrements sur ma zone, et vue que j'suis noob, j'ai fait court et simple : un A pour chacune de mes IP ( serv et vps ), afin d'avoir deux sous-domaines (s.domain.tld ; point.domain.tld).



Si je me lance dans l'installation d'un resolveur sur mon vps qui me sert actuellement de vpn, comment faire dans le fichier de zone pour conserver mes deux sous-domaines de l'image ci-dessus ? A priori je dirais rien de particulier, mais sait-on jamais !

Y a t-il des manip particulières pour que les résolutions dns soient bien "encapsulées" à l'intérieur du vpn, quand j'accéderai au web depuis mon client ?

Quels sont les avantages de Bind par rapport à Unbound ?

Désolé si mes interrogations sont débiles ou si j'prends le problème dans le mauvais sens.
Le vpn tourne bien actuellement, j'voudrais pas tout casser. :>
AlkaSeltZer wrote: Si je me lance dans l'installation d'un resolveur sur mon vps qui me sert actuellement de vpn, comment faire dans le fichier de zone pour conserver mes deux sous-domaines de l'image ci-dessus ? A priori je dirais rien de particulier, mais sait-on jamais !

Y a t-il des manip particulières pour que les résolutions dns soient bien "encapsulées" à l'intérieur du vpn, quand j'accéderai au web depuis mon client ?
Tout ce que tu as à faire c'est de reprendre la zone qui se trouve chez ton registrar et de remettre les enregistrements dans la zone que tu as indiqué à Bind. Les résolutions DNS à l'intérieur de ton VPN se feront sans problème si la configuration DNS est correcte et qu'un résolveur est configuré dans resolv.conf.
AlkaSeltZer wrote: Quels sont les avantages de Bind par rapport à Unbound ?
Les deux sont bons, historiquement le plus utilisé c'est Bind, on le retrouve partout, après côté fonctionnalité Unbound reprend tout ce que fait Bind, de ce que j'ai entendu dire il serait même plus performant et fiable.
Oki merci. (:

J'attends que gandi prenne en compte les modifications de serveur de nom, ils mettent du temps ..
Et pour info, en tout cas dans mon cas, le dnssec n'est pas pris en charge par gandi en ce moment.

edit : Bon, tout à l'air ok ! ( en ayant mis push "dhcp-option DNS IP LOCALE" dans la conf openvpn )
Dis moi, comment vérifier que c'est bien bind9 sur le serveur qui bosse pour les résolutions ?
SI tu as mis "dhcp-option DNS IP LOCALE" c'est forcément ton résolveur qui fait le boulot, il va agir comme un cache en envoyant des requêtes aux serveurs racines DNS pour les zones pour lesquelles il n'a pas autorité.

Tu as quoi comme TLD pour ne pas avoir DNSSEC ?
Bon, ça foire. ^^
Depuis 2 jours, j'arrive à faire "fonctionner" le truc, puis le lendemain, ça ne résoud plus rien, le navigateur cherche en boucle. C'doit fonctionner le temps du cache avec les dns externes.
Je pige pas trop, la zone est ok, le fichier de conf semble ok aussi..
ça ne peut pas marcher parce le serveur DNS décrit dans le tutoriel sert uniquement de serveur autoritaire sur une zone, ce n'est pas un cache ni un forwarder. Pour que ça fonctionne, il faut modifier un peu la configuration :
# /etc/bind/named.conf.options

# Liste des clients autorisés
acl localclients {
    localhost;
    localnets;
    IPs_RESEAU_LOCAL/24;
    ...
};

options {
    ...
    allow-recursion { localclients; };
    allow-query { localclients; };
    ...
}
Ok merci, je regarde de ce côté. (:
Maintenant que tu le dis, ça parait évident. (x Booon j'espère que cette fois sera la bonne, mine de rien j'suis là dessus depuis une semaine presque xD
Hello,

Encore moi o/

Toujours la même chose, le lendemain, plus rien. ^^
J'ai modifié named.conf.options comme tu me l'as expliqué, peut-être ai-je fait une boulette :
###################################
#named.conf.options for bind9
###################################

#Definition des clients locaux

acl localclients {

        localhost;
        localnets;
        LOCAL_NETWORK_IP;
};

#Options

options {
        directory "/var/cache/bind";
        dnssec-enable no;
# dnssec-validation auto;
        auth-nxdomain no; # RFC1035
        listen-on { any; };
        listen-on-v6 { any; };

# Autoriser les requêtes récursives locales uniquement
        allow-recursion { localclients; };

# Autoriser les query locales
        allow-query { localclients; };

# Autoriser le cache local
        allow-query-cache { localclients; };

# Ne pas transférer les informations des zones aux DNS secondaires
        allow-transfer { none; };

# Ne pas autoriser la mise à jour des zones maîtres
        allow-update { none; };

# Cacher la version de bind
        version "DNS domain.tld";
};

# Include logging configuration.
        include "/etc/bind/named.conf.logging";
et le named.conf.local :
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

zone "odomain.tld" IN {

        # Zone de type maître
        type master;

        # Fichier de zone
        file "/etc/bind/domain.tld/db.domain.tld";

        # On autorise le transfert de la zone aux serveurs DNS secondaires
        allow-transfer { IP.DNS.SLAVE.1; IP.DNS.SLAVE.2; 127.0.0.1; ::1; };

        # On autorise tout le monde à envoyer des requêtes vers cette zone
        allow-query { any; };

        # Prévenir les serveurs DNS secondaires qu'un changement a été effectué$
        notify yes;
};
La partie d'openvpn conf qui nous intéresse :
# Reseau

server 10.8.0.0 255.255.255.0

push "redirect-gateway def1 bypass-dhcp"

#push dns local
push "dhcp-option DNS 127.0.0.1"
#push "dhcp-option DNS 84.200.69.80"
#push "dhcp-option DNS 84.200.70.40"

keepalive 10 120
C'est peut-être juste dans cette dernière partie qu'il y a une erreur non ? Je ne sais vraiment pas si je dois mettre l'ip de l'interface lo ou autre ..

resolv.conf :
search domain.tld
nameserver 127.0.0.1
Une idée ? x)
Active "dnssec-validation auto" et vérifie que tu ais bien la trust key de la racine ".". Quand tu dis le lendemin ça veut dire quoi ? Que ça marche un jour et pas le lendemain ?
Ok, j'ai activé dnssec-validation auto, j'ai vérifié dans bind.keys, il y a bien un clé pour la racine.
J'ai mis à nouveau mon adresse locale ( 127 etc ) dans le push de server.conf.
J'ai restart openvpn & bind.

Et là cette fois, ça mouline dans le vent ( le navigateur, quand je fais une requête ) tout de suite après la modification.
Ce que je voulais dire en parlant du lendemain, c'est qu'a chaque modif cette semaine, je relançais openvpn et bind ( avec dans le server.conf aucune ligne push DNS externe, mais seulement le push dns local ), et ça fonctionnait, pendant 6 ou 7 heures. Puis j'allais dormir, et au réveil, plus de résolution dns.

edit :
- je n'ai pas fait la partie "Mise en place du serveur DNS secondaire de votre hébergeur" de ton tuto. Je suppose que ça n'a pas d'influence ?
- est-ce qu'iptables ne pourrait pas mettre le dawa dans tout ça ?

edit2 :
Toujours non fonctionnel.
4 jours plus tard
Salutations !

Juste pour infos, je suis actuellement en train de suivre le tuto suivant : http://mondedie.fr/d/5946 , et il semble qu'une petite modif' de la procédure est nécessaire, à savoir que la variable "dnssec-validation auto;" n'est plus interprétée correctement.

En effet, quand il nous est demandé au début du tuto de tester notre zone DNS via la commande :
named-checkconf -z
DNS nous renvoie alors l'erreur suivante :
/etc/bind/named.conf.options:6: boolean expected near 'auto'
J'ai donc fait mes petites recherches sur le net et il semble que seules 2 valeurs sont acceptées : YES / NO

AUTO ne fonctionne actuellement plus.

D'ailleurs si on regarde dans le dernier post de AlkaSeltzer, on peut voir que son fichier 'named.conf.options' a été corrigé en ce sens.

Me concernant, et parce que je vais utiliser le dnssec, j'ai mis l'option à YES.


Plus d'infos ici : http://www.zytrax.com/books/dns/ch7/security.html#dnssec-validation


Cordialement.
Tu es sûr de toi ?

Parce que la doc a toujours spécifié les valeurs yes / no depuis 2011 :

http://web.archive.org/web/20110421004503/http://www.zytrax.com/books/dns/ch7/security.html

J'ai pas de soucis avec la commande named-checkconf -z, ni sur debian (bind 9.8.4) ni sur archlinux (bind 9.10.2, c'est la dernière version). De plus je vois mal l'ISC rendre caduque une valeur d'une directive sans l'avoir dépréciée avant. Normalement on indique avant lorsque ça va devenir obsolète.

Merci pour le retour en tout cas, je vais me renseigner, vérifie ta conf peut-être, tu as quelle version de bind ?

EDIT :

Ok donc après quelques recherches :

Pour les versions >= 9.8 : La directive "dnssec-validation auto" est supportée, de plus il est nécessaire d'avoir les clés des serveurs racines (bind.keys)
Pour les versions <= 9.7 : il n'y a pas d'option "auto"

Source : le site de l'ISC https://www.isc.org/downloads/bind/bind-keys/
Salut Hardware,

oui en effet, j'ai omis de préciser que j'étais en Debian 6.0.10, et donc BIND dans la version qui convient (ici, la 9.7.3). Et forcément, pas de mode 'auto' compatible pour cette version, donc...

Penses-tu qu'une petite MàJ de la procédure est possible, afin de permettre de distinguer les 2 variables entre Debian 6.0.x et Debian 7 ?

J'ai une autre question toutefois :
Dans le tuto il est indiqué que l'on peut utiliser le DNS de Kimsufi "ns.kimsufi.com". Or si je tente un ping, aussi bien sur l'IP que le nom, je n'ai aucun retour (délai d'attente de la demande dépassé), même si je passe par des services de PING sur le Net ; ce qui me bloque dans la validation de DNSSEC puisque le ns.kimsufi.com refuse la validation... Ce serveur est-il réellement toujours fonctionnel ? Sinon, connais-tu d'autres DNS qui permettent DNSSEC gratuitement (gandi et mon serveur dédié, c'est OK) ? J'ai cherché mais je ne dois sans doute pas saisir les bons mots-clés.

D'avance un grand merci,

Cordialement.


EDIT :
Correction concernant le DNS de Kimsufi... j'avais "zappé" la partie Ownercheck... cependant, malgré le renseignement de ma zone DNS avec le ownercheck, quand je tente de valider le DNS Secondaire sur Kimsufi, il m'envoie bouler en me demandant de renseigner le fichier de config... je l'ai placé à différents endroits du fichier de config DNS de mon domaine, mais tjs sans succès (je souligne que le serial est modifié à chaque fois, et que BIND est relancé... j'ai même redémarré le serveur !)... je sèche et je tourne en rond... help please!

re EDIT :
bon c'est bon, ça fonctionne... j'ai pigé pkoi ça ne fonctionnait pas... grosse quiche que je suis : j'ai tout bonnement omis de resigner ma zone. Là c'est bon. Tout semble ok. J'attends demain pour tester si le DNSSec fonctionne correctement.
Allez zouh, je vais au dodo là... j'aime pas quand un truc me résiste, surtout par ma faute
Attention avec la version 9.7, même en mettant "dnssec-validation yes", DNSSEC ne fonctionnera pas. Il faut aussi inclure la clé des serveurs racines dans le fichier named.conf.options :
# /etc/bind/named.conf.options

[...]

managed-keys {
	# ROOT KEY: See https://data.iana.org/root-anchors/root-anchors.xml
	# for current trust anchor information.
        # NOTE: This key is activated by setting "dnssec-validation auto;"
        # in named.conf.
	. initial-key 257 3 8 "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF
		FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX
		bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD
		X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz
		W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS
		Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq
		QxA+Uk1ihz0=";
};
http://ftp.isc.org/isc/bind9/keys/9.7/bind.keys.v9_7
Salutations !

Merci pour l'info. Juste pour indiquer que mon DNSSec semble fonctionner (même si la clé root n'était pas encore dans le fichier named.conf.options), car en testant mon domaine via les 2 sites d'analyse fournis dans le tuto, tout est indiqué comme OK et 'secured'. Pour moi, tel que je le comprends, ça fonctionne normalement.

J'ai toutefois modifié mon named.conf.options en insérant à la fin la clé root puis relançant bind. Je n'ai toutefois pas constaté de changement depuis.

J'appellerai à l'aide en cas de besoin

Merci pour le soutien fourni sur ce site en tout cas. Très pratique et intéressant.

++

---------------------------------------------------------------------
EDIT 1 :
Bon finalement, j'ai besoin de tes lumières...
Sur Firefox, j'ai installé un petit AddOn qui permet de tester le DNSSec et TLSA. Quand je vais sur mon site ruTorrent, il m'indique bien que mon domaine utilise DNSSec (donc ça fonctionne), mais à côté il m'indique "non-existent TLSA record". Je ne vois pas à quoi ça peut correspondre. Le tuto n'en parle pas directement. Est-ce que ça nous concerne ou tant que DNSSec est marqué comme fonctionnel ça suffit ?
Juste pour préciser : sur le site http://dnssec-debugger.verisignlabs.com/, mon domaine est vert partout. Il est d'ailleurs précisé sur chacun des enregistrements que les RRSig sont bien validés par RRSet (donc TLSA, si j'ai bien compris)...
C'est complément différent, là tu parles du protocol TLSA qui permet de lier un domaine avec un certificat SSL grâce au DNS de manière sécurisé avec DNSSEC. Tu peux retrouver la spécification du "DNS-Based Authentication of Named Entities (DANE)" ici : http://tools.ietf.org/html/rfc6698

Il faut que tu rajoutes un enregistrement dans ta zone DNS, par exemple pour mon site (meshup.net), j'ai mis l'enregistrement suivant :
_443._tcp     IN     TLSA    3 0 1     8ab50bf7621262fa794ec7e583ac7913a75c41501c66f90448f6a3f80a8054d4
Protocole/port : TCP/443
TLSA : Type de l'enregistrement
3 : DANE-EE: Domain Issued Certificate
0 : Use full certificate
1 : SHA-256 hash
8ab50bf7621262f... : Fingerprint SHA-256 du certificat SSL
Tu peux obtenir l'empreinte de ton certificat avec :
openssl x509 -in TonCertificat.pem -noout -sha256 -fingerprint
Voir : https://www.huque.com/bin/gen_tlsa

Bienvenue dans le cercle très fermé des sites ayant mise en place DNSSEC/TLSA, ça doit représenter genre (0.001% des sites web lol) ^^
Cercle plutôt hermétique je dirais même... pas simple de suivre l'actualité sur la sécurité, surtout quand ce n'est pas le domaine de prédilection de base...

J'ai visité ton site justement, et effectivement, les 2 sécurités s'activent correctement (DNSSec et TLSA).
J'avais déjà aussi consulté les 2 sites que tu me donnes... mais l'anglais très technique et moi, ça fait 2. Je me débrouille dans la compréhension, mais c'est surtout piger la mécanique qui devient un vrai casse-tête. OVH et toi-même l'expliquez pourtant clairement via ton tuto. "Je comprends vite, mais faut m'expliquer longtemps" - hé hé hé

Donc, avant de me lancer dans de nouvelles modifications, je voulais juste que tu me confirmes que ce que je vais dire ci-dessous est bien ce que je dois faire :
1. extraire mon fingerprint
2. renseigner mon fichier db.domain.tld avec ce fingerprint, en n'omettant pas d'incrémenter le serial
3. resigner ma zone
4. relancer bind

Et là normalement, tout doit être bon !?
(faut vraiment que je me fasse un calepin numérique avec toutes ces infos, sinon je vais me retrouver à nouveau la tête sous l'eau.)

Autre chose, du fait que le DNSSec est mis en place sur mon site, est-il quand même possible d'installer un Certificat de Sécurité ? (Auquel cas, faudra que je refasse les manip' que je viens de citer ci-dessus !)

Bien à toi.

V.
Les étapes sont bonnes oui. Par contre qu'entends tu par "Certificat de Sécurité" ? Un certificat SSL délivré par une autorité de certification ?
Hardware wrote:Les étapes sont bonnes oui. Par contre qu'entends tu par "Certificat de Sécurité" ? Un certificat SSL délivré par une autorité de certification ?
Oui, tout à effet.

Je t'explique pourquoi je demande ça :
- les Certificats SSL délivrés par CACert sont renouvelables tous les 6 mois ;
- ton tuto précise que le renouvellement "recommandé" de la clé ZSK est à faire tous les 3 mois, et la KSK tous les ans ;
- moi, je me dis que je peux renouveler ainsi le SSL et la ZSK tous les 6 mois, et la KSK tous les ans ;

Le besoin en SSL n'est pas tant par sécurité, mais simplement parce que j'aime bien me dire que ma connexion est "certifiée" et sécurisée. Ainsi je n'ai plus de message m'indiquant que la connexion https n'est pas certifiée à cause de l'usage d'un certificat auto-généré.

Toutefois, si je mets en place ce certificat SSL, je devrais alors refaire les étapes de signature de zone. Mais une fois fait, je suis tranquille pendant 6 mois.

Possible que tu me dises que le SSL n'est plus utile, dans le sens ou DNSSec est censé le remplacer à cause d'attaques de plus en plus fréquentes. Mais moi ce que je veux, c'est simplement voir dans la barre d'adresse tous ces boutons verts qui me disent que le site est sécurisé et certifié. C'est juste ça. Je chipote mais bon...

Je rajoute aussi que j'ai l'intention de me servir de mon serveur Kimsufi pour les services suivants :
- mail Dovecot (avec le tuto de ce site) - utilisé aussi bien pour mes 2 domaines
- phpMyAdmin + MariaDB
- créer un domaine secondaire (Server Block) puis d'y installer Wordpress (site associatif)

Selon toi, est-ce réellement utile de posséder un certificat SSL en plus du DNSSec ?

Je te remercie pour les éclaircissements que tu pourrais m'apporter.

V.
Attention, DNSSEC n'a absolument pas vocation à remplacer SSL/TLS, ce sont deux protocoles différents et complémentaires.

- DNSSEC permet de sécuriser cryptographiquement les données envoyées par le DNS.
- SSL/TLS permet d'assurer la confidentialité et l'intégrité des données échangées sur le réseau en chiffrant la communication client / serveur. L'implémentation du protocole HTTPS utilise TLS uniquement pour chiffrer les données qui transitent.

Mais attention, accéder à un site via HTTPS avec le petit cadenas vert dans la barre d'adresse ne veut absolument pas dire que le site est sécurisé, loin de là... HTTPS est l'un des piliers, mais il y a en d'autres, DNSSEC en fait parti.

Un rappel sur ça, par le créateur d'OSSEC : http://dcid.me/notes/2014-oct-26 (c'est assez violent ce qu'il dit mais c'est vraiment la réalité).

Ensuite mettre HTTPS sur son site c'est bien, mais encore faut-il le faire correctement :

- La longueur de la clé privée doit être suffisante : 2048bits minimum
- Utiliser un protocole de chiffrement sans faille majeure connue à ce jour : TLSv1.0, 1.1, 1.2
- Utiliser une suite de ciphers qui assure un chiffrement de haut niveau, on oubli RC4, 3DES & co, c'est obsolète.
- Utiliser le principe Diffie-Hellman pour l'échange des clés.
- Utiliser la PFS (Perfect Forward Secrecy)
- Pleins d'autres choses...

Ma banque est bien loin du perfect malheuresement... :



Un perfect ça serait plutôt Github par exemple :



Tout est dans ce document si tu veux en savoir plus : https://www.ssllabs.com/downloads/SSL_TLS_Deployment_Best_Practices.pdf
et ici : https://wiki.mozilla.org/Security/Server_Side_TLS

Tu peux tester ton site avec cet outil : https://www.ssllabs.com/ssltest/
En bonus, un outil pour faire une conf nginx/apache sécure : https://mozilla.github.io/server-side-tls/ssl-config-generator/

C'est un domaine complexe sur lequel il y a énormement de choses à dire, je vais pas m'étendre parce que c'est pas le sujet du tuto. Mais c'est bien de s'intéresser à ça comme tu le fait.
11 jours plus tard
bonjour.

déjà merci pour ce tuto (en plus des autres quoi ).

j'ai un soucis mais je ne sais pas si cela vient de la propag ou si j'ai un soucis dans la config.

tous les test locaux passent (named-checkconf , named-checkzone...)
mais les test sur mon ndd renvoient tous des erreurs .
par contre les test vers le ns passent:

je voudrais savoir exactement ce qu'il faut mettre dans les fichiers:

/etc/hostname
/etc/resolv.conf
/etc/hosts

car c'est confus sur tous les tuto du net.

mon ndd >> monndd.com
le ns voulu >> ns.monndd.com
mon ip >> 192.168.1.27
mon ip ext >> 10.0.0.1
le nom local du serveur >> lucien

/etc/bind/db.myzone:

monndd.com.   IN SOA ns.monndd.com. postmaster.monndd.com. (
                                2015041202
                                 43200
                                 3600
                                 1216000
                                 86400)
@                       IN NS   ns.monndd.com.
@                       IN NS   ns3.xtremeweb.de.
@                       IN MX 1   mail.monndd.com.
ns                      IN A    10.0.0.1
ns3                     IN A    130.185.108.193
/etc/hostname
ns.monndd.com
/etc/resolv.conf
domain monndd.com
search mondd.com
nameserver 127.0.0.1

/etc/hosts
127.0.0.1       localhost.localdomain   localhost
127.0.1.1       lucien

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

192.168.1.27            lucien.monndd.com     ns.monndd.com ns
192.168.1.27            monndd.com
#127.0.0.1       lucien.monndd.com lucien
depuis http://network-tools.com si je ping "monndd.com" il trouve rien
si je ping "ns.monndd.com" il trouve bien mon ip ext.

donc je pense que j'ai loupé un truc ....
@jeyy : http://mondedie.fr/d/5947/30

Pour le resolv.conf, il faut laisser les DNS par défaut fournis par ton hébergeur. Le serveur DNS décrit dans le tuto est un serveur autoritaire sur une zone, donc il répond uniquement pour résoudre les adresses de la zone définie, ce n'est pas un cache DNS.
ok merci, mais pour le reste est-ce que tu vois quelques chose qui cloche sinon?
parce que ce que je pige pas c'est que tous les test vers "ns.monndd.com" répondent comme je le voudrais pour "monndd.com", et ça je vois pas pourquoi en fait.
re.

bon bin j'ai rajouté :
@                       IN A    10.0.0.1
et ça refonctionne on dirait
3 mois plus tard
Bonjour,

j'aurai besoin d'un peu d'éclaircissement sur le sujet du coin
Je vais donner des exemples, ca m'aidera pour la suite.
Imaginons :
Hostname -> patate
ndd -> douce.com
nameserver -> un truc qui marche -_-'
; ZONE : douce.com
; ------------------------------------------------------------------
$TTL 7200

@       IN      SOA    patate.douce.com. hostmaster.douce.com. (
                                        2014102001 ; Serial
                                        14400      ; Refresh
                                        3600       ; Retry
                                        1209600    ; Expire - 1 week
                                        86400 )    ; Minimum

; NAMESERVERS

@                   IN                NS                   patate.douce.com.
@                   IN                NS                   ns.kimsufi.com.


; Enregistrements A/AAAA

@                   IN                A                        01.02.03.04
@                   IN                AAAA                 1111:1111:1111::1

patate		    IN		      A		     01.02.03.04
patate		    IN		      AAAA		      1111:1111:1111::1

ns1                 IN                A                          01.02.03.04 
ns1                 IN                AAAA                 1111:1111:1111::1

; Sous-domaines - Serveur web
www                 IN                CNAME                douce.com
Le Hosts, devrait donc ressembler à ça ?
127.0.0.1 localhost.localdomain localhost
01.02.03.04            patate.douce.com       patate
111:111:111::1     patate.douce.com       patate
Enfin je crois qu'il y a un truc que j'ai pas trop compris dans tout ça.
Dans le Hostname faut t-il mettre juste un nom (patate) ou le ndd avec(patate.douce.com) ?

A la deuxieme page, tu dis que si l'Hostname est "serveur1" il faut remplacer "ns1" par "serveur1" Ce qui veut dire que dans le tuto, l'Hostname est "ns1" ?
Bonjour à vous !

J'ai il y a quelques jours acheté un serveur Kimsufi pour un projet WEB ..

Alors que j'avais besoin de faire le paramétrage de BIND, je suis tombé sur ce fameux tutoriel qui au passage est vraiment génial !

Maintenant le problème que je rencontre depuis environ 1 heure ..

J'ai donc un domaine acheté chez : godaddy.com (vraiment pas cher et opérationnel avec kimsufi 20 minutes après l'achat )

Le serveur lui, tel que plus haut est chez Kimsufi (un KS-2)

Lorsque je m'occupe de la sécurité du serveur DNS, plus particulièrement sur DNSSEC j'obtiens une erreur bien méchante après cette commande :
dnssec-signzone -eYYYYMMDDHHMMSS -t -g -k Kdomain.tld.ksk.key -o domain.tld db.domain.tld Kdomain.tld.zsk.key
J'ai, bien entendu tout bien remplacer, réaliser les includes dans le fichier db mais, lorsque je tape cette commande j'ai cette erreur qui apparait :
dnssec-signzone: fatal: No self-signed KSK DNSKEY found. Supply an activekey with the KSK flag set, or use '-P'.
Je me suis donc dis, bon ok j'ai dû faire une connerie je supprime les .key/.private et je vais retaper toutes les commandes, mais non, même erreur.

Après quelques recherches sur Google, aucun résultat concret ... J'espère que l'un d'entre vous s'aura me dire comment corriger ce problème

En tout cas, merci à vous par avance, et merci au créateur de ce tutoriel.
J'ai pas trop d'idée, tu as du faire une erreur lors de l'inclusion ou avec les paramètres de la commande dnssec-signzone.
20 jours plus tard
Mettez à jour BIND, un exploit a été publié il y a quelques jours permettant une attaque DDoS.