OVH Community, votre nouvel espace communautaire.

Problème de nom de domaine


duplex13
17/03/2014, 19h33
Bonjour,

Merci pour ces réponses. J'ai acheté mon nom de domaine chez Gandi.

Entre temps j'ai aussi eu des réponses du support dOVH, ce qui me fait dire que pour le moment celui-ci me répond aussi vite sur SYS que sur la plate-forme plus professionnelle.

J'ai suivit cette explication pour avoir un serveur plus sécurisé : http://www.ovh.com/fr/g1082.comment-...re-serveur-dns donc j'ai ajouté
acl "trusted" { 127.0.0.1; ::1; }; dans le named.conf et allow-recursion { trusted; }; dans le named.conf.options.

Je me suis aussi inspiré de http://www.cymru.com/Documents/secur...-template.html pour ajouter quelques lignes dans le fichier option :
transfer-format many-answers;
notify no;
max-transfer-time-in 60;
interface-interval 0;

J'ai supprimé tous les listen.

Vincent

renaudScore42
17/03/2014, 16h23
Citation Envoyé par duplex13
En fait je fais affaire avec Gandi pour les noms de domaine. Et de plus le manager SYS n'est plus le même que le manager OVH et je ne pense pas qu'il y ait encore "Accueil > Mutualisé > Domaines & DNS > Zone DNS (Mode avancé)".

Je pense que le problème principal est que maintenant pour ajouter un domaine dans le serveur DNS secondaire il faut ajouter un champ TXT à la zone du domaine en question sur le serveur dédié et que OVH doit pouvoir accéder au serveur de nom sur le dédié, et donc il faut "ouvrir" ce serveur le temps d'ajouter le domaine. Je m'exprime peut-être pas très correctement, mais c'est la meilleure explication que j'ai trouvé.

Merci encore pour toute l'aide apportée qui, en plus de mes recherches, m'a fait progresser aujourd'hui. Je vais me coucher avec quelques connaissances en plus.

Vincent
Coucou Vincent,

Pour que le serveur secondaire d'ovh puisse avoir ta zone convenablement configuré il faut qu'il ait accès à ton serveur DNS en permanence et non juste le temps de ....

si tu veux s'avoir comme l'architecture DNS (et donc les noms de domaines) fonctionne tu as début de piste sur: http://fr.wikipedia.org/wiki/Domain_Name_System

Donc laisse ton serveur DNS sur ns39888.ip-91-121-26.eu. répondre aux requêtes pour le(s) domaine(s) pour le(s)quel(s) il est autoritaire (d'ailleurs au moment ou je rédige ce billet c'est le cas) ! Bien sur il ne doit pas autoriser les requêtes recursives en dehors de 127.0.0.1, le top serait même qu'il ne fasse pas du tout de récursion et que tu installes un serveur cache DNS pour cela ....

Renaud

renaudScore42
17/03/2014, 16h15
Citation Envoyé par phil
La modification que tu as faite est simple. Tu dis à ton serveur bind d'écouter sur toutes les interfaces, dont l'eth0 au lieu de se limiter au localhost. Regarde ce qui se passe maintenant:


Tu as vu la taille de la réponse par rapport à la requête? Je t'envoie 64 octets, et tu en réponds 409. C'est la base d'une attaque par amplification.

euh bah non il a une zone configurée normalement. Heureusement qu'il doit passer son port d'écoute de 127.0.0.1 à any (bon d'accord pas any, bind sur son IP est moins bourrin) sinon il va avoir du mal à répondre aux requêtes légitimes qui concernant le domaine pour lequel il a déclarer son serveur autoritaire ...

A partir du moment que son serveur ne fait pas de récursion mais qu'il répond uniquement à son domaine il ne fait que respecter le protocole et surtout il n'a pas d'autres choix !

Après l'attaque par amplification n'a rien avoir avec ça puisque son serveur est autoritaire sur son domaine !


Citation Envoyé par phil
Maintenant, si je suis un méchant con, je spoofe l'adr source de mes requêtes DNS avec l'IP du serveur de BBR par exemple parce que je ne l'aime pas Bilan, quand je t'envoie 50Mbps de traffic dns spoofé, tu balances ~325Mbps dans la tronche de BBR. Je n'ai qu'à trouver suffisamment de serveur ouverts comme le tien et boom, avec mon Gbps de bande-passante, BBR se prend facilement 5 à 10 Gbps selon la config dns... Là il pleure.

Mais ça c'est juste le plus facile. Après tout, si tu as mal sécurisé ton bind et que j'arrive à l infecter, je n'ai qu'à modifier tes dns pour que la taille de la réponse à ANY passe à 4OOO octets ! Là ça commence à devenir fun.

Mais bon, tu as ce que tu voulais, ton bind est déclaré en nameserver de ton domaine. J'espère juste pour tout le monde que tu l'as bien sécurisé... Non en fait, je m'en fout. Le jour où ton serveur est utilisé pour attaquer un site web, OVH te le passera en mode rescue aussi sec.
Groumpf c'est faut ... Car si tu était un méchant con (je ne fais que reprendre ton exemple hein il te faudrait crafter pour chaque serveur DNS un requête ANY sur le ou les domaines dont le serveur bind source serait autoritaire ... La faille ne vient pas de la requête ANY en elle même (qui dont on a pas forcément besoin pour ce type d'attaque) mais surtout des serveurs de noms qui font des resolutions (recursives) à n'importe qu'elle demande ...

Hors cette cet aspect n'a rien avoir avec le paramètre "listen" mais plutot "allow-query/allow-recursion" bref ...


Citation Envoyé par phil
Maintenant, tu as une solution simple pour résoudre tous tes problèmes. Tu reviens à un bind sur le localhost et tu copies-colles tes DNS dans l'interface d'OVH et tu déclares les nameservers d'OVH.

Philippe
Non la solution simple si il veut garder le controle de son domaine sur son serveur et non sur ceux d'OVH est de faire ce qu'il fait !

Après je suis d'accord sur une chose, peut etre faut il confier l'infogérance du serveur à quelqu'un qui maitrise la base de l'administration système ?

My 2cents
Renaud

duplex13
25/02/2014, 23h18
En fait je fais affaire avec Gandi pour les noms de domaine. Et de plus le manager SYS n'est plus le même que le manager OVH et je ne pense pas qu'il y ait encore "Accueil > Mutualisé > Domaines & DNS > Zone DNS (Mode avancé)".

Je pense que le problème principal est que maintenant pour ajouter un domaine dans le serveur DNS secondaire il faut ajouter un champ TXT à la zone du domaine en question sur le serveur dédié et que OVH doit pouvoir accéder au serveur de nom sur le dédié, et donc il faut "ouvrir" ce serveur le temps d'ajouter le domaine. Je m'exprime peut-être pas très correctement, mais c'est la meilleure explication que j'ai trouvé.

Merci encore pour toute l'aide apportée qui, en plus de mes recherches, m'a fait progresser aujourd'hui. Je vais me coucher avec quelques connaissances en plus.

Vincent

phil
25/02/2014, 22h44
Auprès de qui as tu acheté ton nom de domaine? OVH ? Si oui, regarde dans ton manageur OVH pour ton nom de domaine. Tu vas dans "Accueil > Mutualisé > Domaines & DNS > Zone DNS (Mode avancé)"
Tu vois à quel point se ressemble la config avec celle de ton bind? En gros tu reproduis la conf de ton bind dans ton manager.

Pour plus d'info sur les dns secondaires => http://tools.ietf.org/html/rfc2182

L'idée du spoofing est simple. J'envoie une requête DNS en udp avec comme adresse source celle de la cible. Mon paquet fait 64 octet. Ton serveur répond avec un paquet de 409 octet vers la source indiquée dans la requête. C'est à dire la cible.

Philippe

duplex13
25/02/2014, 21h08
Je viens d'ajouter le nom de domaine dans le manager SYS (ajouter un domaine dans le manager SYS), puis j'ai repassé la ligne à listen-on { 127.0.0.1; };. Mais tant que n'avais pas ouvert mon Bing à tout écouter, je ne pouvais pas déclarer mon domaine au niveau du manager SYS ce qui me paraît pas terrible.

Citation Envoyé par bbr
Tu devrais aussi changer serial = 1393017414 en format AAAMMJJnn par exemple aujourd'ui pour la première modif : 2014022501
Merci pour la remarque, j'ai aussi corrigé ce problème de serial.

Vincent

duplex13
25/02/2014, 20h56
Merci pour cette longue réponse qui est en partie du chinois pour moi, mais j'ai ma réponse : non ce que je viens de faire n'est pas sécurisé.

Citation Envoyé par phil
Maintenant, tu as une solution simple pour résoudre tous tes problèmes. Tu reviens à un bind sur le localhost et tu copies-colles tes DNS dans l'interface d'OVH et tu déclares les nameservers d'OVH.
Philippe
Par contre cette dernière phrase m'intéresse plus particulièrement : comment fait-on "copies-colles tes DNS dans l'interface d'OVH et tu déclares les nameservers d'OVH. " ? Est-ce l'équivalent de la gestion des DNS secondaire sur le gestionnaire OVH ? Dois-je ajouter un nouveau domaine dans le manager SYS (DNS Secondaires / Ajouter un domaine ) ? Et qu'est ce que les nameservers d'OVH ? Est-ce sdns2.ovh.net ?

Merci d'avance

Vincent

phil
25/02/2014, 19h35
Citation Envoyé par duplex13
Je viens de faire une modification dans le fichier de configuration de BIND et j'ai changé la ligne : "listen-on { 127.0.0.1; };" pour la ligne "listen-on { any; };" et maintenant ça fonctionne.

Est-ce que ça pose problème au niveau sécurité d'avoir fait cette modification ?
La modification que tu as faite est simple. Tu dis à ton serveur bind d'écouter sur toutes les interfaces, dont l'eth0 au lieu de se limiter au localhost. Regarde ce qui se passe maintenant:
user@xxxxxx:/home/bt/transmission$ dig ANY lessportsinfo.info @91.121.26.82

; <<>> DiG 9.7.0-P1 <<>> ANY lessportsinfo.info @91.121.26.82
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6280
;; flags: qr aa rd; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 4
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;lessportsinfo.info. IN ANY

;; ANSWER SECTION:
lessportsinfo.info. 38400 IN MX 5 mail.lessportsinfo.info.
lessportsinfo.info. 38400 IN TXT "v=spf1 a mx a:lessportsinfo.info ip4:91.121.26.82 ip6:2001:41D0:1:6D52::1 ip6:2001:41D0:1:6D52::1 ?all"
lessportsinfo.info. 38400 IN AAAA 2001:41d0:1:6d52::1
lessportsinfo.info. 38400 IN SOA ns39888.ip-91-121-26.eu. root.ns39888.ip-91-121-26.eu. 1393017414 10800 3600 604800 38400
lessportsinfo.info. 38400 IN NS ns39888.ip-91-121-26.eu.
lessportsinfo.info. 38400 IN NS sdns2.ovh.net.
lessportsinfo.info. 38400 IN A 91.121.26.82

;; ADDITIONAL SECTION:
mail.lessportsinfo.info. 38400 IN A 91.121.26.82
mail.lessportsinfo.info. 38400 IN AAAA 2001:41d0:1:6d52::1
ns39888.ip-91-121-26.eu. 38400 IN A 91.121.26.82
ns39888.ip-91-121-26.eu. 38400 IN AAAA 2001:41d0:1:6d52::1

;; Query time: 24 msec
;; SERVER: 91.121.26.82#53(91.121.26.82)
;; WHEN: Tue Feb 25 20:17:01 2014
;; MSG SIZE rcvd: 409
Tu as vu la taille de la réponse par rapport à la requête? Je t'envoie 64 octets, et tu en réponds 409. C'est la base d'une attaque par amplification.

Maintenant, si je suis un méchant con, je spoofe l'adr source de mes requêtes DNS avec l'IP du serveur de BBR par exemple parce que je ne l'aime pas Bilan, quand je t'envoie 50Mbps de traffic dns spoofé, tu balances ~325Mbps dans la tronche de BBR. Je n'ai qu'à trouver suffisamment de serveur ouverts comme le tien et boom, avec mon Gbps de bande-passante, BBR se prend facilement 5 à 10 Gbps selon la config dns... Là il pleure.

Mais ça c'est juste le plus facile. Après tout, si tu as mal sécurisé ton bind et que j'arrive à l infecter, je n'ai qu'à modifier tes dns pour que la taille de la réponse à ANY passe à 4OOO octets ! Là ça commence à devenir fun.

Mais bon, tu as ce que tu voulais, ton bind est déclaré en nameserver de ton domaine. J'espère juste pour tout le monde que tu l'as bien sécurisé... Non en fait, je m'en fout. Le jour où ton serveur est utilisé pour attaquer un site web, OVH te le passera en mode rescue aussi sec.

Maintenant, tu as une solution simple pour résoudre tous tes problèmes. Tu reviens à un bind sur le localhost et tu copies-colles tes DNS dans l'interface d'OVH et tu déclares les nameservers d'OVH.

Philippe

bbr
25/02/2014, 17h43
Tu devrais aussi changer serial = 1393017414 en format AAAMMJJnn par exemple aujourd'ui pour la première modif : 2014022501

duplex13
25/02/2014, 17h16
Re-bonjour,

C'est encore moi.

Je viens de faire une modification dans le fichier de configuration de BIND et j'ai changé la ligne : "listen-on { 127.0.0.1; };" pour la ligne "listen-on { any; };" et maintenant ça fonctionne.

Est-ce que ça pose problème au niveau sécurité d'avoir fait cette modification ?

Merci à phil pour ton aide

Vincent

duplex13
25/02/2014, 16h53
Lorsque je fait un dig le sur mon serveur, j'ai la réponse suivante :
"
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> www.lessportsinfo.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30167
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.lessportsinfo.info. IN A

;; ANSWER SECTION:
www.lessportsinfo.info. 38400 IN A 91.121.26.82

;; AUTHORITY SECTION:
lessportsinfo.info. 38400 IN NS sdns2.ovh.net.
lessportsinfo.info. 38400 IN NS ns39888.ip-91-121-26.eu.

;; ADDITIONAL SECTION:
ns39888.ip-91-121-26.eu. 38400 IN A 91.121.26.82
ns39888.ip-91-121-26.eu. 38400 IN AAAA 2001:41d0:1:6d52::1

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Feb 25 17:50:34 2014
;; MSG SIZE rcvd: 164

"

Et depuis un serveur distant, il répond :
"
; <<>> DiG 9.3.2 <<>> lessportsinfo.info
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 2184
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;lessportsinfo.info. IN A

;; Query time: 0 msec
;; SERVER: 46.105.101.40#53(46.105.101.40)
;; WHEN: Tue Feb 25 17:54:53 2014
;; MSG SIZE rcvd: 36
"

C'est comme si le serveur BIND n'avait pas accès à l'extérieur du serveur.

Vincent

duplex13
25/02/2014, 16h37
Citation Envoyé par phil
Bon moi je vois ça. Ce qui laisse penser, si ton serveur a bien l'IP 91.121.26.82, que ton serveur bind n'est pas lancé.
Philippe
Pourtant lorsque je fait un ps -ef, j'ai bien la ligne "bind 4311 1 0 16:32 ? 00:00:00 /usr/sbin/named -u bind" et lorsque je vais dans System Information de Webmin, j'ai bien BIND DNS Server Up.

J'avoue que je me sens assez perdu.

Merci pour les réponses.

Vincent

phil
25/02/2014, 16h29
Et une dernière:

user@xxxxxx:~$ nmap -A 91.121.26.82

Starting Nmap 5.00 ( http://nmap.org ) at 2014-02-25 17:24 CET
Interesting ports on ns39888.ip-91-121-26.eu (91.121.26.82):
Not shown: 987 closed ports
PORT STATE SERVICE VERSION
21/tcp open ftp ProFTPD 1.3.4a
25/tcp open smtp Postfix smtpd
|_ smtp-commands: EHLO ns39888.ip-91-121-26.eu, PIPELINING, SIZE 10240000, VRFY, ETRN, STARTTLS, AUTH PLAIN LOGIN, AUTH=PLAIN LOGIN, ENHANCEDSTATUSCODES, 8BITMIME, DSN
42/tcp open ssh OpenSSH 6.0p1 Debian 4 (protocol 2.0)
| ssh-hostkey: 1024 c0:fd:08:f1:a7:7e:a0:3f:39:45:e3:d6:34:76:4c:0d (DSA)
|_ 2048 61:08:e5:bc:c9:19:01:32:47:03:74:74:98:99:21:17 (RSA)
80/tcp open http Apache httpd 2.2.22 ((Debian))
|_ html-title: 403 Forbidden
110/tcp open pop3 Dovecot pop3d
|_ pop3-capabilities: USER CAPA RESP-CODES UIDL PIPELINING STLS TOP SASL(PLAIN)
143/tcp open imap Dovecot imapd
|_ imap-capabilities: LOGIN-REFERRALS STARTTLS IMAP4rev1 ENABLE AUTH=PLAIN LITERAL+ IDLE SASL-IR ID
443/tcp open http Apache httpd 2.2.22 ((Debian))
|_ html-title: Site doesn't have a title (text/html).
445/tcp filtered microsoft-ds
587/tcp open smtp Postfix smtpd
|_ smtp-commands: EHLO ns39888.ip-91-121-26.eu, PIPELINING, SIZE 10240000, VRFY, ETRN, STARTTLS, AUTH PLAIN LOGIN, AUTH=PLAIN LOGIN, ENHANCEDSTATUSCODES, 8BITMIME, DSN
993/tcp open ssl/imap Dovecot imapd
|_ imap-capabilities: IMAP4rev1 AUTH=PLAIN ENABLE ID LITERAL+ IDLE SASL-IR LOGIN-REFERRALS
995/tcp open ssl/pop3 Dovecot pop3d
|_ pop3-capabilities: USER CAPA UIDL PIPELINING RESP-CODES TOP SASL(PLAIN)
10000/tcp open ssl/snet-sensor-mgmt?
20000/tcp open ssl/unknown
2 services unrecognized despite returning data. If you know the service/version, please submit the following fingerprints at http://www.insecure.org/cgi-bin/servicefp-submit.cgi :

phil
25/02/2014, 16h26
Bon moi je vois ça. Ce qui laisse penser, si ton serveur a bien l'IP 91.121.26.82, que ton serveur bind n'est pas lancé.

user@xxxxxx:~$ nslookup www.lessportsinfo.info
Server: 127.0.0.1
Address: 127.0.0.1#53

** server can't find www.lessportsinfo.info: SERVFAIL

user@xxxxxx:~$ dig www.lessportsinfo.info

; <<>> DiG 9.7.0-P1 <<>> www.lessportsinfo.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 34157
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.lessportsinfo.info. IN A

;; Query time: 37 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Feb 25 17:21:24 2014
;; MSG SIZE rcvd: 40

user@xxxxxx:~$ nslookup
> server 91.121.26.82
Default server: 91.121.26.82
Address: 91.121.26.82#53
> www.lessportsinfo.info
^C
user@xxxxxx:~$ telnet 91.121.26.82 53
Trying 91.121.26.82...
telnet: Unable to connect to remote host: Connection refused
Philippe

duplex13
25/02/2014, 16h10
Bonjour,

Je n'ai pas modifié la configuration DNS de Virtualmin à part l'ajout du IN TXT, car je n'y connais rien en serveur de nom et le fichier d'enregistrement du domaine est le suivant :
"
$ttl 38400
@ IN SOA ns39888.ip-91-121-26.eu. root.ns39888.ip-91-121-26.eu. (
1393017414
10800
3600
604800
38400 )
@ IN NS ns39888.ip-91-121-26.eu.
@ IN NS sdns2.ovh.net.
lessportsinfo.info. IN A 91.121.26.82
www.lessportsinfo.info. IN A 91.121.26.82
ftp.lessportsinfo.info. IN A 91.121.26.82
m.lessportsinfo.info. IN A 91.121.26.82
localhost.lessportsinfo.info. IN A 127.0.0.1
webmail.lessportsinfo.info. IN A 91.121.26.82
admin.lessportsinfo.info. IN A 91.121.26.82
mail.lessportsinfo.info. IN A 91.121.26.82
lessportsinfo.info. IN MX 5 mail.lessportsinfo.info.
lessportsinfo.info. IN TXT "v=spf1 a mx a:lessportsinfo.info ip4:91.121.26.82 ip6:xxx:xxx:xx::x ip6:xxx:xxx:xx::x ?all"
lessportsinfo.info. IN AAAA xxx:xxx:xx::x
www.lessportsinfo.info. IN AAAA xxx:xxx:xx::x
ftp.lessportsinfo.info. IN AAAA xxx:xxx:xx::x
m.lessportsinfo.info. IN AAAA xxx:xxx:xx::x
webmail.lessportsinfo.info. IN AAAA xxx:xxx:xx::x
admin.lessportsinfo.info. IN AAAA xxx:xxx:xx::x
mail.lessportsinfo.info. IN AAAA xxx:xxx:xx::x
ownercheck.lessportsinfo.info. IN TXT "le_code"
"

Vincent

phil
25/02/2014, 16h02
Bonjour

Qu'as tu mis comme configuraion de ta zone DNS ?

Pourquoi as-tu déclaré ton serveur en ns de ton domaine? AS-tu bien vérifié que la conf de bind dessus était correcte?

Philippe

duplex13
25/02/2014, 15h44
Bonjour

J'ai installé une Debian 7.4 et avec ça Virtualmin (serveur ns39888.ip-91-121-26.eu).

J'ai ajouté un serveur virtuel avec le nom de domaine lessportsinfo.info pour tester mon nouveau serveur.

J'ai modifié les serveurs de nom dans mon interface Gandi DNS1 = ns39888.ip-91-121-26.eu et DNS2 = sdns2.ovh.net il y a déjà 4 jours de ça.

Mais je n'arrive pas à atteindre l'adresse lessportsinfo.info

J'ai des erreurs DNS (http://www.dnsstuff.com/tools#dnsRep...portsinfo.info) :
- "SOA Record Check" : No nameservers provided an SOA record for the zone. You should configure your nameservers to have a master slave relationship. The update of the zone information to the slave nameservers should be handled through the SOA record.
- "MX Record Check" : No MX records exist within the zone. This is legal, but if you want to receive E-mail on this domain, you should have MX record(s). The program can't continue in a case like this, so we are assuming you don't receive mail on this domain.

J'ai tenté d'ajouter sur le manager SYS un domaine pour l'associer au DNS secondaire, mais j'ai eu le message comme ici (http://forum.kimsufi.com/showthread....ter-un-domaine) et j'ai ajouté dans la configuration BIND du domaine : "ownercheck.lessportsinfo.info. IN TXT "le_code"". Mais le manager SYS ne veut pas prendre en compte mon ajout.

Je ne sais pas où se situe l'erreur. Je vais continuer à chercher, mais je pense que c'est vraiment une erreur de débutant, donc si quelqu'un peut m'aider j'en serais ravi.

Merci d'avance

Vincent