Pages : 1
#1 Le 23/04/2013, à 15:19
- bouxroute
problème sur une zone 'forward' de BIND
Hello
J'héberge certains domaines dont je ne peux pas modifier les serveurs DNS indiqués sur leur registrar respectifs. Ceux-ci pointent actuellement sur mon serveur de DNS perso "dns1.domaine.com".
Afin de faciliter la gestion de ces nombreux domaines, je suis passé sur un webservice externe de gestion de DNS ( Route 53 d'Amazon pour ne pas le citer ).
J'avais dans l'idée d'indiquer à dns1.domaine.com de forwarder toutes les demandes de résolution qu'il recevrait sur les IP d'amazon. Donc en gros:
[client: demande de résolution de truc.fr] => [dns1.domaine.com: forward de la requête sur amazon] => [amazon: résolution de la requête]
Or, voici mon problème: bind est sécurisé pour ne pas être "ouvert" à la résolution de n'importe quel domaine, avec dans le named.conf.options :
allow-query { localhost;};
allow-recursion { localhost; };
allow-transfer {none;};
...ce qui oblige à autoriser les demandes de résolutions zone par zone, et donc uniquement des domaines qu'on héberge. Exemple sur named.conf:
zone "exemple.fr" IN {
type master;
file "/etc/bind/exemple.fr";
allow-query {any;};
};
Le résultat obtenu: depuis une machine extérieure, on arrive bien à résoudre notre domaine hébergé, mais pas un domaine inconnu de named.conf ( 'google.fr' dans l'exemple ci-dessous ):
# dig @dns1.domaine.com www.exemple.fr
; <<>> DiG 9.7.3 <<>> @dns1.domaine.com www.exemple.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62893
;; flags: qr aa rd; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;www.exemple.fr. IN A
;; ANSWER SECTION:
www.exemple.fr. 36000 IN A 123.456.78.90
# dig @dns1.domaine.com www.google.fr
; <<>> DiG 9.7.3 <<>> @dns1.klikissi.com www.google.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 63145
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;www.google.fr. IN A
Jusque là, tout est normal. J'en viens à mon soucis de zone 'forward'. Celle-ci ressemble à ça dans named.conf:
zone "exemple2.fr" IN {
type forward;
forward only;
forwarders { 205.251.192.140; 205.251.196.27; 205.251.199.225; 205.251.195.11; };
};
...mais voilà, avec ma configuration 'fermée' de named.conf.options, impossible d'obtenir une réponse depuis une machine extérieure:
# dig @dns1.domaine.com www.exemple2.fr
; <<>> DiG 9.7.3 <<>> @dns1.domaine.com www.exemple2.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 1725
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;www.exemple2.fr. IN A
Suivant la logique générale, je devrais pouvoir indiquer spécifiquement à la zone concernée que le domaine doit être résolu depuis l'extérieur, donc avec par exemple:
zone "exemple2.fr" IN {
allow-query {any;};
type forward;
forward only;
forwarders { 205.251.192.140; 205.251.196.27; 205.251.199.225; 205.251.195.11; };
};
malheureusement cette option n'est pas valide pour les type 'forward', comme le signale le syslog:
named[2959]: /etc/bind/named.conf:49: option 'allow-query' is not allowed in 'forward' zone 'exemple2.fr'
Donc, comment faire en sorte que cette zone soit résolvable sans pour autant retirer mes sécurités globales dans named.conf.options ?
merci d'avance pour votre aide.
Hors ligne
Pages : 1