Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 02/10/2014, à 11:19

padapolo

Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Bonjour à tous,

je fait appel à l'aide aujourd'hui pour la finalisation de mon serveur local car je rencontre quelques derniers soucis.

Un peu de contexte tout d'abord :

Je souhaite disposer d'un seul serveur (hostname : emulserv) sur mon réseau local qui hébergerait plusieurs sites/fonctionnalités :
- Mediawiki à l'adresse : http://mediawiki.monserveur.lan
- Owncloud (version 7) : https://owncloud.monserveur.lan
- un site internet perso : http://www.monserveur.lan

J'ai choisi d'utiliser bind9 comme serveur DNS et NGINX comme serveur HTTP.

L'adresse IP du serveur étant 192.168.1.100

Etat actuel des choses :

Mon routeur distribue bien automatiquement le DNS 192.168.1.100 en premier et il distribue automatiquement un second 192.168.1.1 (adresse du routeur qui lui même va utiliser les DNS du FAI par la suite)

Nginx / mediawiki / owncloud sont configurés et fonctionnent.

Le serveur DNS semble bien fonctionner la plupart du temps quand je tape les adresses sur les ordinateurs du réseau (ubuntu 14 et windows) http://xxx.monserveur.lan.

Mon Problème :

L’accès aux pages fonctionne de manière discontinue (je dirais 20% du temps inaccessibles avec un adresse introuvable dans firefox). Des fois une page est accessible et pas une autre.
Ces discontinuités me gênent et j'aimerai résoudre le problème pour avoir un système fiable.

Je n'arrive pas identifier/reproduire les conditions du problème.

En faisant un nslookup lorsque je n'arrive pas à me connecter, j'obtiens :

$ nslookup 192.168.1.100
Server:		127.0.1.1
Address:	127.0.1.1#53

** server can't find 100.1.168.192.in-addr.arpa: NXDOMAIN

Souvent débrancher le câble réseau Ethernet et le rebrancher quelques secondes après suffit à résoudre le problème (mais pas tout le temps !).

Conclusion :

Mon hypothèse la plus probable est une mauvaise configuration du serveur DNS.

Si une bonne âme pourrait vérifier ma configuration pour savoir si je fais les choses de la mauvaise manière, je lui en serait reconnaissant.

Mes fichiers de config :

db.monserveur.lan

$TTL	604800
@	IN	SOA	emulserv.monserveur.lan.	admin.monserveur.lan.	(
	2014100101	; Serial
	8H		; Refresh
	2H		; Retry
	1W		; Expire
	2D	)	; Negative Cache TTL
;
monserveur.lan.	IN	NS	emulserv.monserveur.lan.
emulserv	IN	A	192.168.1.100
@		IN	A	192.168.1.100
www		IN	A	192.168.1.100
owncloud	CNAME	www
mediawiki	CNAME	www

db.monserveur.lan.inv

$TTL	604800
@	IN	SOA	emulserv.monserveur.lan.	admin.monserveur.lan. (
	2014100101	; Serial
	8H		; Refresh
	2H		; Retry
	1W		; Expire
	2D	)	; Negative Cache TTL
;
	IN	NS	emulserv.monserveur.lan.
100	IN	PTR	emulserv.monserveur.lan.
100	IN	PTR	www.monserveur.lan.

named.conf.options

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

Hors ligne

#2 Le 02/10/2014, à 16:16

PascalHambourg

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

padapolo a écrit :

Mon routeur distribue bien automatiquement le DNS 192.168.1.100 en premier et il distribue automatiquement un second 192.168.1.1 (adresse du routeur qui lui même va utiliser les DNS du FAI par la suite)

Mauvaise idée. Un client n'est pas obligé de respecter l'ordre des DNS fourni par le DHCP voire inscrit dans /etc/resolv.conf. Si pour une raison quelconque le relais DNS du routeur est interrogé pour un nom local, alors il répondra que ce nom n'existe pas et, le client, lui faisant confiance, n'aura pas de raison d'interroger ton serveur. Pour cette raison, les DNS susceptibles d'être interrogés devraient être tous équivalents, ce qui n'est pas le cas ici puisque le DNS du routeur ne connaît pas tes zones locales.

Lorsque la résolution ne fonctionne pas comme tu veux, commence par faire un requête interrogeant explicitement ton serveur DNS pour voir si c'est lui ou le resolver local qui a un problème. Par exemple :

nslookup monserveur.lan 192.168.1.100

Ta commande nslookup ne faisait que demander le reverse de l'adresse 192.168.1.100 au resolver local, et non interroger le serveur DNS à l'adresse 192.168.1.100.

Dernière modification par PascalHambourg (Le 02/10/2014, à 16:17)

Hors ligne

#3 Le 03/10/2014, à 10:16

padapolo

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Salut,

merci pour le temps passé à lire ma problématique et pour la réponse.

Effectivement cela a bien l'air d'être une problème de choix de serveur dns :
- la commande "nslookup owncloud.monserveur.lan 192.168.1.100" -> pas d'erreur.
- la commande nslookup owncloud.monserveur.lan 192.168.1.1" -> même erreur que précédemment : "** server can't find 100.1.168.192.in-addr.arpa: NXDOMAIN"

J'ai donc supprimé le second DNS pour n'avoir que le DNS de mon routeur (192.168.1.100)
J'arrive donc bien a aller sur les pages de mon serveur (http://xxx.monserveur.lan) mais plus sur les pages internet.

J'ai donc ajouté les serveurs dns de mon fai (j'ai aussi testé ceux de google comme ci dessous) dans la zone forwarders du fichier named.conf.options

options {
	directory "/var/cache/bind";
	forwarders {
		8.8.8.8;
		8.8.4.4;
	};
	dnssec-validation auto;
	auth-nxdomain no;    # conform to RFC1035
	listen-on-v6 { any; };
};

Cependant, impossible d'avoir accès aux pages internet.
J'ai du rater un truc.
Une idée ?

Hors ligne

#4 Le 03/10/2014, à 12:33

PascalHambourg

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Pour n'avoir que le DNS de ton serveur, tu veux dire ?

Je répète comme à chaque fois : un navigateur web n'est pas un outil adapté au diagnostic de problèmes réseau ou DNS. Quelle est l'erreur retournée lors d'une requête DNS pour un domaine extérieur avec dig/host/nslookup ?

BIND n'a pas besoin de forwarders. Il sait très bien faire la résolution récursive complète lui-même en interrogeant directement les différents serveurs faisant autorité (racine, TLD, domaine...). Par contre il doit évidemment avoir accès à internet pour contacter ces serveurs (définition de la passerelle, filtrage...). Est-ce le cas ? Tu peux vérifier en lançant une requête DNS vers un serveur DNS extérieur quelconque (Google, FAI...) depuis un shell de la machine qui fait tourner BIND. Sinon, tu peux définir comme forwarder l'adresse du routeur qui est sur le réseau local.

Hors ligne

#5 Le 06/10/2014, à 09:01

padapolo

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Salut,
j'ai pu refaire des tests ce matin.

1) Mon serveur dispose bien d'un acces internet :

$ nslookup fnac.com
Server:		192.168.1.100
Address:	192.168.1.100#53

Non-authoritative answer:
Name:	fnac.com
Address: 195.42.251.40

2) Mon pc sur le réseau accède bien aux pages de mon routeur :

$ nslookup monserver.lan owncloud.monserveur.lan
Server:		owncloud.monserveur.lan
Address:	192.168.1.100#53

Name:	monserveur.lan
Address: 192.168.1.100

3) Mon pc sur le réseau n'accède pas à internet en passant par le serveur (serveur avec ou sans forwarders dans named.conf.options) :

$ nslookup monserveur.lan fnac.com
;; connection timed out; no servers could be reached

Du coup, je me dit que c'est mon serveur qui ne fait pas ce qu'il faut et que ma config bind9 n'est peut etre pas correcte.

4) Pour revenir au message précédent, oui je voulais que tous les pc disposent seulement du DNS du serveur (192.168.1.100) pour forcer le passage par lui (pas de problème de priorité de DNS sur les clients du coup). Mais au final cette histoire de distribution et priorité de dns ne passe qu'au second plan après le point 3) je me dis

Hors ligne

#6 Le 06/10/2014, à 12:26

pires57

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Que renvois

dig

sur le serveur ?


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#7 Le 06/10/2014, à 15:08

padapolo

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Par je ne sais quel miracle, le comportement du réseau semble celui être souhaité.
J'ai configuré le pc client manuellement avec seulement le dns du serveur. (j'avais deja testé vendredi pourtant)
Pour rappel mes fichiers de conf sont identiques à mon premier post.

Maintenant j'obtiens :

sur le client :

$ nslookup monserveur.lan europe1.fr
;; connection timed out; no servers could be reached
$ nslookup europe1.fr
Server:		127.0.1.1
Address:	127.0.1.1#53

Non-authoritative answer:
Name:	europe1.fr
Address: 85.116.42.16
$ dig europe1.fr

; <<>> DiG 9.9.5-3-Ubuntu <<>> europe1.fr
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50344
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 11

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;europe1.fr.			IN	A

;; ANSWER SECTION:
europe1.fr.		600	IN	A	85.116.42.16

;; AUTHORITY SECTION:
fr.			169379	IN	NS	d.nic.fr.
fr.			169379	IN	NS	f.ext.nic.fr.
fr.			169379	IN	NS	d.ext.nic.fr.
fr.			169379	IN	NS	e.ext.nic.fr.
fr.			169379	IN	NS	g.ext.nic.fr.

;; ADDITIONAL SECTION:
d.ext.nic.fr.		169379	IN	A	192.5.4.2
d.ext.nic.fr.		169379	IN	AAAA	2001:500:2e::2
d.nic.fr.		169379	IN	A	194.0.9.1
d.nic.fr.		169379	IN	AAAA	2001:678:c::1
e.ext.nic.fr.		169379	IN	A	193.176.144.22
e.ext.nic.fr.		169379	IN	AAAA	2a00:d78:0:102:193:176:144:22
f.ext.nic.fr.		169379	IN	A	194.146.106.46
f.ext.nic.fr.		169379	IN	AAAA	2001:67c:1010:11::53
g.ext.nic.fr.		169379	IN	A	194.0.36.1
g.ext.nic.fr.		169379	IN	AAAA	2001:678:4c::1

;; Query time: 38 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Mon Oct 06 15:46:12 CEST 2014
;; MSG SIZE  rcvd: 363
$dig owncloud.monserveur.lan

; <<>> DiG 9.9.5-3-Ubuntu <<>> owncloud.emulsar.lan
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37923
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;owncloud.monserveur.lan.		IN	A

;; ANSWER SECTION:
owncloud.monserveur.lan.	604800	IN	CNAME	www.monserveur.lan.
www.monserveur.lan.	604800	IN	A	192.168.1.100

;; AUTHORITY SECTION:
monserveur.lan.		604800	IN	NS	emulserv.monserveur.lan.

;; ADDITIONAL SECTION:
emulserv.monserveur.lan.	604800	IN	A	192.168.1.100

;; Query time: 0 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Mon Oct 06 15:50:18 CEST 2014
;; MSG SIZE  rcvd: 122

sur le serveur :

$ dig europe1.fr

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> europe1.fr
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13015
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 10

;; QUESTION SECTION:
;europe1.fr.			IN	A

;; ANSWER SECTION:
europe1.fr.		206	IN	A	85.116.42.16

;; AUTHORITY SECTION:
fr.			168985	IN	NS	g.ext.nic.fr.
fr.			168985	IN	NS	d.ext.nic.fr.
fr.			168985	IN	NS	e.ext.nic.fr.
fr.			168985	IN	NS	d.nic.fr.
fr.			168985	IN	NS	f.ext.nic.fr.

;; ADDITIONAL SECTION:
d.ext.nic.fr.		168985	IN	A	192.5.4.2
d.ext.nic.fr.		168985	IN	AAAA	2001:500:2e::2
d.nic.fr.		168985	IN	A	194.0.9.1
d.nic.fr.		168985	IN	AAAA	2001:678:c::1
e.ext.nic.fr.		168985	IN	A	193.176.144.22
e.ext.nic.fr.		168985	IN	AAAA	2a00:d78:0:102:193:176:144:22
f.ext.nic.fr.		168985	IN	A	194.146.106.46
f.ext.nic.fr.		168985	IN	AAAA	2001:67c:1010:11::53
g.ext.nic.fr.		168985	IN	A	194.0.36.1
g.ext.nic.fr.		168985	IN	AAAA	2001:678:4c::1

;; Query time: 0 msec
;; SERVER: 192.168.1.100#53(192.168.1.100)
;; WHEN: Mon Oct  6 23:48:30 2014
;; MSG SIZE  rcvd: 352
$ nslookup europe1.fr
Server:		192.168.1.100
Address:	192.168.1.100#53

Non-authoritative answer:
Name:	europe1.fr
Address: 85.116.42.16

Je trouve quand même ça bizarre car rien n'a changé par rapport à ce matin.
Est ce que ça pourrait être une histoire de cache quelconque ? (J'étais peut être fatigué et j'ai oublié de faire un restart de la config bind, j'ai pourtant redémarré le serveur et le client plusieurs fois avant de poster ...)
de plus nslookup monserveur.lan europe1.fr cela voudrait-il dire que le chemin par le serveur ne fonctionne pas ?

Hors ligne

#8 Le 12/10/2014, à 08:13

chefdelegion

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Salut, je pense que c'est un probleme d'acl, je peux te passer la config que j'ai fais pour les dns local de la boite, pour les dns de base j'utilise Centos

options {
	listen-on port 53 { 127.0.0.1; 192.168.1.11; };
	listen-on-v6 port 53 { ::1; };
	directory 	"/var/named";
	dump-file 	"/var/named/data/cache_dump.db";
	statistics-file "/var/named/data/named_stats.txt";
	memstatistics-file "/var/named/data/named_mem_stats.txt";
	allow-query     { localhost; 192.168.1.0/24;};
        allow-transfer{ localhost; 192.168.1.12; };   ### Slave DNS IP ###
	/* 
	 - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
	 - If you are building a RECURSIVE (caching) DNS server, you need to enable 
	   recursion. 
	 - If your recursive DNS server has a public IP address, you MUST enable access 
	   control to limit queries to your legitimate users. Failing to do so will
	   cause your server to become part of large scale DNS amplification 
	   attacks. Implementing BCP38 within your network would greatly
	   reduce such attack surface 
	*/
	recursion yes;

	dnssec-enable yes;
	dnssec-validation yes;
	dnssec-lookaside auto;

	/* Path to ISC DLV key */
	bindkeys-file "/etc/named.iscdlv.key";

	managed-keys-directory "/var/named/dynamic";

	pid-file "/run/named/named.pid";
	session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
	type hint;
	file "named.ca";
};

zone "phs.lan" IN {
type master;
file "forward.phs";
allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "reverse.phs";
allow-update { none; };
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

j'espere que sa t'aidera


Xubuntu  14.04 LTS sur tous les postes.
Debian/FreeBSD pour les serveurs.
OMV/FreeNAS pour les serveurs NAS/SAN
New blog : http://aurelienh.shost.ca

Hors ligne

#9 Le 12/10/2014, à 09:14

pires57

Re : Config serveur bind9 et hébergement de plusieurs sites (reseau local)

Si tu veut je peut t'envoyer une doc que j'ai faite et qui pourrait te servir d'exemple.
Pour cela envoie moi ton mail en privé je t'enverrais cette doc.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne