Changer de DNS
Le wiki : Accueil - Administrateur - Bureautique - Développeur - Intégrateur - Marketing - Multimédia - Objets numériques - Jeux - We make Hack
Changer de DNS
DNS est l’abréviation de Domain Name System, système de noms de domaine.
Pourquoi changer de résolveur DNS ? Le serveur DNS habituel des Français est celui proposé par leur FAI et/ou par Google. Liste des serveurs DNS des principaux FAI : Liste des serveurs DNS des principaux FAI. Ceux-ci peuvent mentir, parfois involontairement, après une attaque d'empoisonnement du cache DNS. Les résolveurs DNS menteurs sont utilisés pour nuire à la concurrence ou censurer des sites Internet. Exemple de DNS menteurs : Fichier:Unbound-Liste-DNS-Menteurs-Regies pub.txt.zip
Utiliser les DNS de Google offre le listing des sites que vous visitez à cette entreprise qui saura presque tout de vous. Google utilise ces données pour mieux se renseigner sur les habitudes des utilisateurs et cibler sa publicité.
Il est possible d'utiliser son propre résolveur de DNS, ou, les DNS d'un autre service comme OpenDNS.
Les avantages d'avoir son propre serveur DNS
Serveur local rapide
Installer un serveur DNS sur son réseau local réduit notablement le temps que prennent les requêtes DNS. En configurant le serveur pour qu'il conserve les données en cache, les requêtes se feront sans intermédiaires en profitant des performances de votre réseau local. Cela rendra la navigation plus fluide. L’avantage de ce serveur est que les adresses sont cherchées directement, sans passer par Google ou un FAI et qu’elles sont mises en cache pour un usage future indépendamment du navigateur ou autre programme qui en a besoin.
Portabilité
Le serveur de DNS unbound fonctionne aussi bien sous Linux que Windows et Mac OSX.
Sécurité
On gagne en confidentialité.
Conserver la neutralité de son internet
Les requêtes envoyées à notre serveur sont transmises directement aux serveurs racines si il est configuré pour.
Si on passe par un serveur DNS contrôlé par un organisme, une société ou un état, nos requêtes peuvent être analysées pour diverses raisons.
Enregistrement des habitudes de surf, priorisation ou limitation du débit vers certains sites, faire mentir le serveur et par exemple faire disparaître des sites de votre internet.
Censure de l'accès à certains noms de domaine
Fermer l'accès aux domaines des régies publicitaires comme googlesyndication.com, doubleclick.net, ads.youtube.com, adserver.yahoo.com. Configurer son serveur de DNS pour que ces noms de domaines pointent vers une adresse ip ne pouvant rien renvoyer ce qui empêchera l'affichage des pubs.
Conférences sur le DNS
Installer unbound
Manuel : https://unbound.net/documentation/index.html
IPv4 ou IPv6
Dans le doute, configurer vos DNS avec IPv4 et IPv6. Si le DNS ne marche plus, configurer uniquement en IPv6, ou, uniquement en IPv4 si ça ne marche pas en IPv6.
Le projet Kame fait danser une tortue si la connexion est configurée en IPV6 : http://www.kame.net
Désactiver IPv6
# Le protocole Internet version 6 (IPv6) fournit une nouvelle couche Internet de la suite de protocoles TCP/IP qui remplace le protocole Internet version 4 (IPv4) et offre de nombreux avantages. # Si vous n'utilisez pas IPv6, désactivez IPv6 :
# De manière temporaire : sudo bash -c 'echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6'
# De manière permanente : sudo bash -c 'echo "net.ipv6.conf.all.disable_ipv6=1" >> /etc/sysctl.conf'
# Redémarrer : sudo sysctl -p
Installer unbound sur GNU/Linux Debian Stretch
Utilisation par défaut de dnsmasq
# Par défaut, le gestionnaire réseau (NetworkManager) lance un serveur DNS local (dnsmasq). # Demander à NetworkManager ne ne plus lancer dnsmasq : sudo sed -i 's/dns=dnsmasq/#dns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf sudo service network-manager restart
Installer le paquet unbound
sudo apt-get install unbound
# The following additional packages will be installed:
# libfstrm0 libprotobuf-c1 libunbound2 unbound-anchor
# Paquets suggérés :
# apparmor
# Les NOUVEAUX paquets suivants seront installés :
# libfstrm0 libprotobuf-c1 libunbound2 unbound unbound-anchor
Configurer Unbound
sudo nano /etc/unbound/unbound.conf.d/myconf.conf
# Ajouter la configuration : server: do-ip6: no interface: 127.0.0.1 access-control: 0.0.0.0/0 refuse access-control: ::0 refuse access-control: 127.0.0.0/8 allow access-control: ::1 allow cache-min-ttl: 86400
forward-zone: name: "." forward-addr: 80.67.169.12 # DNS 1 de FDN forward-addr: 80.67.169.40 # DNS 2 de FDN
do-ip6: no: Demander à unbound de ne pas requêter ni répondre en ipv6. interface: 127.0.0.1 : Il ne sera en écoute que sur l'interface locale donc pas accessible de l'extérieur de la machine. access-control: … : Par mesure de sécurité, je demande à unbound de ne répondre qu'aux requêtes provenant de la machine elle-même. forward-addr: … : Quand unbound n'a pas un domaine en cache, il ira demander à ces serveurs. Utiliser ceux de FDN qui sont non censurés. cache-min-ttl: 86400 : Certain propriétaires de domaine mettent des durées de vie (TTL) ridiculement basse pour leur enregistrement DNS, parfois seulement 60 ou 120 secondes, ce qui force unbound a refaire des requêtes vers l'extérieur. Force le TTL à 24 heures.
# Redémarrer : sudo service unbound restart
# Configurer la connexion réseaude NetworkManager pour pointer sur 127.0.0.1: Clic-droit sur l'icône réseau > Modification des connexions… > choisir une connexion > Modifier… > Paramètres IPv4 > Serveurs DNS > 127.0.0.1.
# Connaître la vitesse de résolution DNS avec drill. # Regarder la ligne ;; Query time: xxx msec. Lors de la seconde interrogation, vous devriez voir 0 msec. sudo apt install ldnsutils drill google.be
# Afficher le cache de unboud : sudo unbound-control dump_cache | grep "^[^#;]" | less
Modifier les paramètres réseau
Dans les paramètres réseau, modifier manuellement la connexion. Depuis l'onglet Paramètres IPv4 ajouter 127.0.0.1 dans Serveurs DNS supplémentaires. Pour l'onglet Paramètres IPv6 ajouter ::1 dans Serveurs DNS supplémentaires.
Appliquer les changements
sudo sed -i 's/dns=dnsmasq/#dns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf sudo service network-manager restart sudo service unbound stop sudo /etc/init.d/dns-clean restart # sudo apt-get install nscd - Installer ce paquet pour vider le cache DNS. sudo /etc/init.d/nscd restart sudo unbound -c /etc/unbound/unbound.conf sudo unbound-anchor -a "/var/lib/unbound/root.key" sudo service unbound start
unbound-checkconf
unbound-checkconf unbound-checkconf: no errors in /etc/unbound/unbound.conf
Connaître les DNS utilisés
cat /etc/resolv.conf
# Rendu par défaut : nameserver 127.0.0.53 search home
Téléchargement de la liste des serveurs DNS racines
# Téléchargement de la liste des serveurs DNS racines cd /var/lib/unbound/ && wget -c ftp://ftp.internic.net/domain/named.cache # Mise en place de cette liste pour le serveur Unbound mv named.cache root.hints && chown unbound:unbound root.hints
Modifier la configuration de unbound
Modifier le fichier de configuration de unbound installé par défaut : /etc/unbound/unbound.conf
Configuration initiale
# Unbound configuration file for Debian. # # See the unbound.conf(5) man page. # # See /usr/share/doc/unbound/examples/unbound.conf for a commented # reference config file. # # The following line includes additional configuration files from the # /etc/unbound/unbound.conf.d directory. include: "/etc/unbound/unbound.conf.d/*.conf"
Exemple à tester
server: statistics-interval: 0 extended-statistics: yes statistics-cumulative: yes verbosity: 3 interface: 127.0.0.1 #interface: 10.8.0.1 ## la passerelle VPN port: 53 do-ip4: yes do-ip6: no do-udp: yes do-tcp: no access-control: 127.0.0.0/8 allow ## j'autorise mon serveur # access-control: 10.8.0.0/24 allow ## j'autorise le réseau établie avec OpenVPN # access-control: 10.0.2.3 allow ## Test pour autoriser VirtualBox sur la machine virtuelle access-control: 0.0.0.0/0 refuse ## j'interdis tout le reste de l'Internet ! auto-trust-anchor-file: "/var/lib/unbound/root.key" root-hints: "/var/lib/unbound/root.hints" hide-identity: yes hide-version: yes harden-glue: yes harden-dnssec-stripped: yes use-caps-for-id: yes cache-min-ttl: 3600 cache-max-ttl: 86400 prefetch: yes num-threads: 6 msg-cache-slabs: 16 rrset-cache-slabs: 16 infra-cache-slabs: 16 key-cache-slabs: 16 rrset-cache-size: 256m msg-cache-size: 128m so-rcvbuf: 1m unwanted-reply-threshold: 10000 do-not-query-localhost: yes val-clean-additional: yes ## Bloquer certaines pubs - Le fichier hosts le fait également. local-zone: "doubleclick.net" redirect local-data: "doubleclick.net A 127.0.0.1" local-zone: "googlesyndication.com" redirect local-data: "googlesyndication.com A 127.0.0.1" local-zone: "googleadservices.com" redirect local-data: "googleadservices.com A 127.0.0.1" local-zone: "google-analytics.com" redirect local-data: "google-analytics.com A 127.0.0.1" local-zone: "ads.youtube.com" redirect local-data: "ads.youtube.com A 127.0.0.1" local-zone: "adserver.yahoo.com" redirect local-data: "adserver.yahoo.com A 127.0.0.1" # local-zone: "ask.com" redirect # Est aussi un moteur de recherche. # local-data: "ask.com A 127.0.0.1" use-syslog: yes logfile: /var/log/unbound.log harden-dnssec-stripped: yes cache-min-ttl: 3600 cache-max-ttl: 86400 prefetch: yes prefetch-key: yes
Cette configuration est proposée depuis : https://memo-linux.com/debian-installer-le-serveur-dns-unbound/
Autoriser une IP pour un VPN
A suivre par la suite. Attribution d'une ip pour la passerelle VPN. Dans mon cas, je suis sur une machine virtuelle sans VPN. J'autorise par contre l'ip de la machine virtuelle, sur unbound.
Ajouter un nameserver
Ajouter la ligne nameserver 127.0.0.1
dans le fichier de configuration /etc/resolv.conf
Avec la version de Debian Stretch utilisée, /etc/resolv.conf
est généré par NetworkManager. La ligne nameserver 127.0.0.1
est bien présente.
Fichier de configuration généré par défaut :
# Generated by NetworkManager search 208.67.222.222 nameserver 10.0.2.3 nameserver 127.0.0.1 nameserver ::1
Tests du serveur Unbound
Relance du service Unbound
/etc/init.d/unbound restart
Vérifier le status
# Lancer la commande systemctl status unbound
.
# Unbound ne semble pas se lancer : unbound.service - Unbound DNS server Loaded: loaded (/lib/systemd/system/unbound.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Sat 2017-08-19 17:49:27 CEST; 31s ago Docs: man:unbound(8) Process: 5317 ExecStart=/usr/sbin/unbound -d $DAEMON_OPTS (code=exited, status=1/FAILURE) Process: 5310 ExecStartPre=/usr/lib/unbound/package-helper root_trust_anchor_update (code=exited, status=0/SUC Process: 5307 ExecStartPre=/usr/lib/unbound/package-helper chroot_setup (code=exited, status=0/SUCCESS) Main PID: 5317 (code=exited, status=1/FAILURE) août 19 17:49:27 stretch-test systemd[1]: unbound.service: Failed with result 'exit-code'. août 19 17:49:27 stretch-test systemd[1]: unbound.service: Service hold-off time over, scheduling restart. août 19 17:49:27 stretch-test systemd[1]: Stopped Unbound DNS server. août 19 17:49:27 stretch-test systemd[1]: unbound.service: Start request repeated too quickly. août 19 17:49:27 stretch-test systemd[1]: Failed to start Unbound DNS server. août 19 17:49:27 stretch-test systemd[1]: unbound.service: Unit entered failed state. août 19 17:49:27 stretch-test systemd[1]: unbound.service: Failed with result 'exit-code'.
Vérifier l'erreur :
unbound -d -v [1503159172] unbound[5879:0] notice: Start of unbound 1.6.0. [1503159172] unbound[5879:0] error: can't bind socket: Address already in use for ::1 [1503159172] unbound[5879:0] fatal error: could not open ports
Je redémarre la machine virtuelle. Je test à nouveau et arrive à lancer unbound. Unbound est maintenant lancé.
systemctl status unbound
● unbound.service - Unbound DNS server Loaded: loaded (/lib/systemd/system/unbound.service; enabled; vendor preset: Active: active (running) since Sat 2017-08-19 18:48:39 CEST; 1min 48s ago Docs: man:unbound(8) Process: 520 ExecStartPre=/usr/lib/unbound/package-helper root_trust_anchor_up Process: 500 ExecStartPre=/usr/lib/unbound/package-helper chroot_setup (code=e Main PID: 558 (unbound) Tasks: 1 (limit: 4915) CGroup: /system.slice/unbound.service └─558 /usr/sbin/unbound -d
Vérifier la résolution de nom à partir du serveur
Installer Drill apt install ldnsutils
Exemple
drill @127.0.0.1 memo-linux.com ;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 45978 ;; flags: qr rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;; memo-linux.com. IN A ;; ANSWER SECTION: memo-linux.com. 60 IN A 46.105.44.210 ;; AUTHORITY SECTION: ;; ADDITIONAL SECTION: ;; Query time: 147 msec ;; SERVER: 127.0.0.1 ;; WHEN: Sun Aug 20 00:41:25 2017 ;; MSG SIZE rcvd: 48
Test de résolution de nom depuis un poste client connecté au VPN
drill @10.8.0.1 memo-linux.com Error: error sending query: Could not send or receive, because of network error
Cette erreur est normale, je n'ai pas de VPN configuré. L'ajout de l'IP 10.8.0.1 est un exemple pour autoriser l'IP d'un VPN. L'IP 10.8.0.1 n'a pas besoin d'être ajoutée dans la configuration dans mon cas.
Note - Effacer le cache DNS sous Debian
Les 3 services suivants ne sont pas installés par défaut.
Ils peuvent servir à effacer le cache des DNS.
# /etc/init.d/nscd restart # /etc/init.d/dnsmasq restart # /etc/init.d/named restart
Installer et configurer unbound sur GNU Linux Mint Sarah
Installer unbound :sudo apt-get install unbound
. Le fichier de configuration présenté en exemple dans la documentation :/usr/share/doc/unbound/examples/unbound.conf
. Modifier le fichier de configuration de unbound installé par défaut :/etc/unbound/unbound.conf
. Remplacer le contenu avec cette configuration fonctionnelle :/etc/unbound/unbound.conf
. Dans ce fichier, penser à modifierle nom du domaine local
etl'adresse IP de l'interface réseau
.
Les détails du paquet unbound sur GNU Linux Mint Sarah
apt-cache show unbound
Package: unbound Priority: optional Section: universe/net Installed-Size: 2054 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Original-Maintainer: Debian DNS Packaging <pkg-dns-devel@lists.alioth.debian.org> Architecture: amd64 Version: 1.5.8-1ubuntu1 Depends: adduser, dns-root-data, openssl, unbound-anchor, libc6 (>= 2.17), libevent-2.0-5 (>= 2.0.10-stable), libpython2.7 (>= 2.7), libssl1.0.0 (>= 1.0.0) Filename: pool/universe/u/unbound/unbound_1.5.8-1ubuntu1_amd64.deb Size: 485258 MD5sum: 7e81dd1035e709fb3c51f25fae2c578f SHA1: bf7492ec7ae289a45e4a0ba85ab6306204ff004a SHA256: c200401eaf164013ac5e1efbae13ced04430fb27e73867b159f987d85d0dfffc Description-en: validating, recursive, caching DNS resolver Unbound is a recursive-only caching DNS server which can perform DNSSEC validation of results. It implements only a minimal amount of authoritative service to prevent leakage to the root nameservers: forward lookups for localhost, reverse for 127.0.0.1 and ::1, and NXDOMAIN for zones served by AS112. Stub and forward zones are supported. This package contains the unbound daemon. Description-md5: fbeecad8349f6b3042087b256bc69b68 Enhances: munin-node Homepage: https://www.unbound.net/ Bugs: https://bugs.launchpad.net/ubuntu/+filebug Origin: Ubuntu
Tutoriel du Hollandais volant
Suite aux dernières modifications, le code ci-dessous n'est plus utilisé pour le moment, sur ma configuration.
Dans les paramètres réseau, modifier manuellement la connexion. Depuis l'onglet ipv4 avec la valeur Server : 127.0.0.1 et pour ipv6 Serveur : ::1.
$ sudo sed -i 's/dns=dnsmasq/#dns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf [sudo] Mot de passe de user : $ sudo service network-manager restart $ sudo service unbound stop # Pour flusher les dns sur ubuntu uniquement : sudo /etc/init.d/dns-clean start $ sudo /etc/init.d/dns-clean restart $ sudo unbound -c /etc/unbound/unbound.conf $ sudo unbound-anchor -a "/var/lib/unbound/root.key" $ sudo service unbound start $ nmcli dev show | grep DNS IP4.DNS[1]: 192.168.1.1 IP4.DNS[2]: 127.0.0.1 IP6.DNS[1]: ::1
Source : https://lehollandaisvolant.net/?d=2015/07/07/23/58/05-installer-son-propre-serveur-dns-sous-ubuntu
Tester la configuration
unbound-checkconf /etc/unbound/unbound.conf:71: error: unknown keyword 'prefer-ip6' /etc/unbound/unbound.conf:71: error: stray ':' /etc/unbound/unbound.conf:71: error: unknown keyword 'no' /etc/unbound/unbound.conf:212: error: unknown keyword 'use-systemd' /etc/unbound/unbound.conf:212: error: stray ':' /etc/unbound/unbound.conf:212: error: unknown keyword 'yes' /etc/unbound/unbound.conf:515: error: unknown keyword 'serve-expired' /etc/unbound/unbound.conf:515: error: stray ':' /etc/unbound/unbound.conf:515: error: unknown keyword 'no' /etc/unbound/unbound.conf:708: error: unknown keyword 'ipsecmod-enabled' /etc/unbound/unbound.conf:708: error: stray ':' /etc/unbound/unbound.conf:708: error: unknown keyword 'yes' /etc/unbound/unbound.conf:719: error: unknown keyword 'ipsecmod-max-ttl' /etc/unbound/unbound.conf:719: error: stray ':' /etc/unbound/unbound.conf:719: error: unknown keyword '3600' /etc/unbound/unbound.conf:723: error: unknown keyword 'ipsecmod-ignore-bogus' /etc/unbound/unbound.conf:723: error: stray ':' /etc/unbound/unbound.conf:723: error: unknown keyword 'no' /etc/unbound/unbound.conf:778: error: syntax error read /etc/unbound/unbound.conf failed: 19 errors in configuration file
Tester le fonctionnement et le cache
Exemple à suivre.
$ dig fark.com A @192.168.1.22 ; <<>> DiG 9.8.3-P1 <<>> fark.com A @192.168.1.22 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60299 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;fark.com. IN A ;; ANSWER SECTION: fark.com. 43200 IN A 64.191.171.200 ;; Query time: 234 msec ;; SERVER: 192.168.1.22#53(192.168.1.22) ;; WHEN: Sat Mar 21 13:16:54 2015 ;; MSG SIZE rcvd: 42 Verify the record is now in unbound’s cache. # unbound-control dump_cache|grep fark.com ns2.fark.com. 43197 IN A 23.253.56.58 fark.com. 43197 IN A 64.191.171.200 ns1.fark.com. 43197 IN A 64.191.171.194 fark.com. 43197 IN NS ns1.fark.com. fark.com. 43197 IN NS ns2.fark.com.
Utiliser wicd pour arriver à se connecter en cas de perte du réseau
En cas de perte du réseau : su - cd /etc cp resolv.conf-dns-orange-et-opendns.bak resolv.conf cp : voulez-vous écraser 'resolv.conf' ? y
cat resolv.conf-dns-orange-et-opendns.bak # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 127.0.2.1 nameserver 80.10.246.2 nameserver 8.8.8.8 search 208.67.222.222 208.67.220.220
En cas de crash de network-manager : /etc/init.d/network-manager restart
Lenteur de réseau - Error Network
Sinon, voir à tester connman https://duckduckgo.com/?q=conman+wicd&t=lm&ia=web https://duckduckgo.com/?q=connman+linux&t=lm&ia=web
Retour des forums http://forum.ubuntu-fr.org/viewtopic.php?pid=21877696#p21877696
Installer unbound sous Fedora
Source : http://www.dsfc.net/internet/dns/unbound-cache-dns-pour-linux/
Installer unbound sous Windows
Source : http://korben.info/installer-serveur-dns-unbound.html
Vider le cache DNS sous Microsoft Windows
Fonctionne pour les systèmes Win XP, Win ME, Win 2000 et Win 98 :
Démarrer -> Exécuter -> tapez cmd Dans la fenêtre DOS, tapez ipconfig /flushdns Et voilà ! Votre cache DNS a été vidé.
Configurer le réseau avec les DNS publiques de Google
Les deux adresses suivantes peuvent être utilisées en même temps, l'une en primaire et l'autre en secondaire.
Adresses IP DNS publiques de Google IPv4
8.8.8.8 8.8.4.4
Adresses IP DNS publiques de Google IPv6
2001: 4860: 4860 :: 8888 2001: 4860: 4860 :: 8844
Utiliser les adresses IP DNS publiques de Google avec Linux
Méthode pour utiliser les DNS publiques de Google. Suivre cette méthode pour configurer et utiliser d'autres DNS publiques que Google.
Changer de DNS avec /etc/resolv.conf
Ne pas confondre ce fichier de configuration avec le programme resolvconf qui porte presque le même nom.
Configurer/etc/resolv.conf
. Dans le cas le plus simple, c'est ce fichier/etc/resolv.conf
qui dresse la liste des serveurs.
Afficher la configuration actuelle de/etc/resolv.conf
avec la commandecat /etc/resolv.conf
. Configurer/etc/resolv.conf
avec la commandesudo nano /etc/resolv.conf
. Plus d'informations sur/etc/resolv.conf
avec le manuelman resolv.conf
.
# Commenter les lignes de nameserver qui apparaissent par défaut, ici, sur GNU/Linux Mint. # nameserver 127.0.2.1 # search 8.8.8.8 2001 4860 8888
# Ajouter plusieurs lignes de nameserver si vous avez plusieurs serveurs de noms de domaine. # Pour IPv4 : nameserver 8.8.8.8 nameserver 8.8.4.4 # Pour IPv6 : nameserver 2001:4860:4860::8888 nameserver 2001:4860:4860::8844 # Pour IPv6 uniquement, vous pouvez utiliser Google Public DNS64 au lieu des adresses IPv6 ci-dessus.
Sauvegarder et quitter.
Redémarrer les clients internet utilisés : sudo /etc/init.d/unbound restart
.
Est-ce que unbound est bien le client à redémarrer ?
Noter que d'autres programmes de configuration dynamique remplacent les réglages effectués dans/etc/resolv.conf
. Si le programmeresolvconf
ou le démonnetwork-manager
est utilisé, cette méthode ne marche pas étant donné que ces logiciels génèrent/etc/resolv.conf
. Le logiciel client DHCP écrase également les paramètres de/etc/resolv.conf
. La configuration présentée ne restera pas dans/etc/resolv.conf
.
Modifier les paramètres du démonnetwork-manager
en mode graphique. Modifier directement le fichier de configuration du client DHCP. Sinon, utiliser le programmeresolvconf
.
Changer de DNS avec network-manager
Si vous utilisez une interface graphique, il est probable quenetwork-manager
soit installé. Si vous ne trouvez pas Connexions réseau comme expliqué ci-dessous, il est probable que network-manager ne soit pas installé. Si votre distribution n'utilise pas network-manager, vos paramètres DNS sont probablement à configurer dans/etc/resolv.conf
.
Depuis le menu de lancement des programmes, faire une recherche sur "Connexions réseau". Sinon, naviguer avec le menu de lancement des programmes, et chercher dans "Paramètres" ou "Préférences" pour lancer "Connexions réseau". Sélectionner alors la connexion à configurer.
Depuis l'onglet configuration IPv4 : Sélectionner la méthode "Adresses automatiques uniquement (DHCP)" et ajouter l'adresse IP du DNS désiré. Vous pouvez configurer plusieurs résolveurs DNS en les séparant par des espaces. Pour finir, cliquez sur "Enregistrer".
Pour IPv4 : 8.8.8.8 8.8.4.4 (Un simple espace pour séparer les IPv4.) Pour IPv6 : 2001: 4860: 4860 :: 8888 2001: 4860: 4860 :: 8844 (Un simple espace pour séparer les IPv6.) Pour IPv6 : vous pouvez utiliser Google Public DNS64 au lieu des adresses IPv6.
Informations complémentaires sur network-manager depuis le wiki de Debian : https://wiki.debian.org/fr/NetworkManager
Préférer le mode graphique pour configurer network-manager. Pour une configuration manuelle, vérifier si le fichier de configuration pour network-manager existe avec le chemin : /etc/sysconfig/network-scripts/ifcfg-*. Modifier à ce moment la le contenu du fichier avec les données suivantes : DNS1=127.0.0.1 DNS2=8.8.8.8 DNS3=8.8.4.4
Configurer le logiciel client DHCP
# Sauvegarder/etc/resolv.conf
.sudo cp /etc/resolv.conf /etc/resolv.conf.bak
# Modifier /etc/dhcp/dhclient.conf sur Debian. # Modifier /etc/dhcp/dhclient.conf sur GNU/Linux Mint.sudo nano /etc/dhcp/dhclient.conf
# Si il existe une ligne contenant domain-name-servers, penser à commenter les valeurs existantes. # Ajouter la ligne suivante : # Pour IPv4prepend domain-name-servers 8.8.8.8, 8.8.4.4;
# Pour IPv6prepend domain-name-servers 2001:4860:4860::8888, 2001:4860:4860::8844;
# Pour IPv6 uniquement, vous pouvez utiliser Google Public DNS64 au lieu des adresses IPv6 ci-dessus.
Sauvegarder, quitter l'éditeur.
Redémarrer les clients internet utilisés : sudo /etc/init.d/unbound restart
.
Tester le fonctionnement de la configuration. Problème actuel - Pas d'accès à mon site internet depuis le domicile - Message posté sur Debian User french : https://lists.debian.org/debian-user-french/2017/08/msg00054.html
Changer de DNS avec le programme resolvconf
Pour des réglages complexes, utiliser resolvconf est le bon choix. Pour des configurations simples, c'est probablement excessif.
Le programme resolvconf garde la trace des informations du système sur les serveurs de noms de domaine actuellement disponibles.
Le programme resolvconf s'occupe de synchroniser /etc/resolv.conf
.
Le programme resolvconf est optionnel sur les systèmes Debian.
Il agit comme un intermédiaire entre les programmes qui fournissent des informations sur les serveurs de noms de domaine (par exemple les clients dhcp) et les programmes qui les utilisent (par exemple resolver).
Quand resolvconf est correctement installé, le fichier de configuration /etc/resolv.conf est remplacé par un lien symbolique pointant vers le fichier /etc/resolvconf/run/resolv.conf. Le résolveur utilisera le fichier de configuration généré dynamiquement par resolvconf à cet emplacement /etc/resolvconf/run/resolv.conf.
Le programme resolvconf est en général seulement nécessaire quand un système a plusieurs programmes qui ont besoin de modifier de façon dynamique les informations sur les serveurs de noms de domaine. Sur un système simple où les serveurs de noms de domaine ne changent pas souvent ou bien ne sont modifiés que par un programme, le fichier de configuration /etc/resolv.conf est suffisant.
Si le programme resolvconf est installé, vous n'aurez pas à modifier à la main le fichier de configuration resolv.conf car il sera changé de façon dynamique par les programmes. Si vous avez besoin de définir vous-même les serveurs de noms de domaine, comme pour une interface statique, ajouter au fichier de configuration interfaces du répertoire /etc/network/interfaces une ou plusieurs ligne(s) : dns-nameservers 12.34.56.78 12.34.56.79
Mettez la ligne indentée dans un paragraphe iface, par exemple juste après la ligne gateway. Entrez les adresses IP des serveurs de noms de domaine dont vous avez besoin après dns-nameservers, toutes sur la même ligne, séparées par des espaces.
Le programme resolvconf est un ajout plutôt récent à Debian et plusieurs anciens programmes ont besoin d'être mis à jour ou reconfigurés pour fonctionner correctement avec lui. Si vous rencontrez des problèmes, regardez /usr/share/doc/resolvconf/README qui contient des informations sur la manière de faire fonctionner resolvconf avec d'autres programmes.
Tester
# Tester le temps de réponse du serveur de DNS : dig @8.8.8.8 tux-planet.fr | grep "time"
Dans votre navigateur, entrer une URL de nom d'hôte comme "https://www.google.com". Si cela se résout correctement : Avec Google Public DNS64 sur un système IPv6 uniquement, marquer la page et essayer d'accéder à la page à partir du signet. Avec une adresse URL de nom d'hôte IPv4 uniquement comme "https://ipv4.google.com". Si ces tests fonctionnent, tout fonctionne correctement.
Si cela ne fonctionne pas : Réinitialiser les modifications DNS que vous avez effectuées et exécuter les tests à nouveau.
Si cela ne fonctionne toujours pas : Il y a possiblement un problème avec vos paramètres réseau.
Configurer les DNS Publiques de Google pour Windows, Mac OS et Linux - Ainsi que pour routeur et mobile : https://developers.google.com/speed/public-dns/docs/using Résolution des erreurs : https://developers.google.com/speed/public-dns/docs/troubleshooting Google Publique DNS64 : https://developers.google.com/speed/public-dns/docs/dns64
Configurer le réseau avec des DNS publiques différents de Google
Obtenir d'autres DNS avec la commande host mondns.eu.org
OpenDNS
Site officiel : https://www.opendns.com
Les DNS IPv4 de OpenDNS 208.67.222.222,208.67.220.220
Exemple pour le fichier de configuration /etc/dhcp/dhcpclient.conf : https://pastebin.com/pj3gLv3v
Opennicproject
Serveurs DNS 100% neutres, gratuits, sans tracking et libre de toute censure gouvernementale.
À l'origine, OpenNIC est un serveur racine qui se veut être une alternative à l'ICANN.
Il résolvait uniquement ses propres extensions de noms de domaine (TLD) mais depuis 2006, il résout de la même façon que l'ICANN.
Transparent par rapport aux DNS que vous utilisez actuellement sauf qu'en plus, il résout des extensions amusantes comme le .geek ou le .free.
https://www.opennic.org https://www.opennicproject.org https://wiki.opennic.org/start https://servers.opennicproject.org Proposer votre propre serveur TLD : https://wiki.opennic.org/doku.php
Exemple :
ns10.fr.dns.opennic.glue IPv4 87.98.175.85 IPv6 2001:41d0:2:73d4::100
PuntCAT
Site officiel : http://www.servidordenoms.cat
109.69.8.51 2a00:1508:0:4::9
FDN
Site officiel : https://www.fdn.fr/actions/dns/
IPv4 80.67.169.12 et 80.67.169.40 IPv6 2001:910:800::12 et 2001:910:800::40 Vérification du fonctionnement ns0.fdn.org et ns1.fdn.org
Censurfridns
Utiliser les Resolver d'activistes, au Danemark, pour un internet libre.
Exemple :
anycast.censurfridns.dk / 91.239.100.100 / 2001:67c:28a4:: ns1.censurfridns.dk / 89.233.43.71 / 2002:d596:2a92:1:71:53::
http://www.censurfridns.dk
Autres possibilités pour changer de DNS
Comodo
Source : https://www.comodo.com/secure-dns/ 8.26.56.26 8.20.247.20
Verisign
Source : htttp://www.verisign.com/fr_FR/innovation/public-dns
German Privacy Foundation
87.118.100.175 (Ports: 53, 110) 94.75.228.29 (Ports: 53, 110, DNSSEC) 87.118.104.203 (Ports: 53, 110,DNSSEC) 62.141.58.13 (Ports: 53, 110, HTTPS-DNS, DNSSEC) 87.118.109.2 (Ports: 53, 110, DNSSEC)
He
Source : http://he.net
DNS Advantage
https://www.neustar.biz/security/dns-services
156.154.70.1 156.154.71.1
SecureDNS
Source : http://securedns.dnsbycomodo.com
Une liste de DNS publiques gratuits
Source : http://greycoder.com/list-free-public-domain-name-services-dns/
Tester les DNS les plus appropriés
Source : https://code.google.com/p/namebench/
Vérifier que vous n'avez pas un DNS Leak ou un VPN en rade
Source : http://whoer.net Source : http://browserspy.dk Source : https://dnsleaktest.com
Désactiver IP6 qui présente des risques de leak
Source : http://ipv6leak.com
Notes complémentaires à vérifier
Ajouter un local-zone
Conseil de Ascito, membre actif sur Développez.
#/etc/unbound/unbound.conf.d % sudo gedit root-auto-trust-anchor-file.conf
local-zone: "googleadservices.com" redirect local-data: "googleadservices.com A 127.0.0.1"
Ralentissements sur facebook.fr
Ici mon objectif initial est de trouver des informations sur le ralentissement de facebook qui le rendent inutilisable.
fbstatic-a.akamaihd.net contribue souvent au ralentissement.
Vider le cache de unbound pour un seul domaine
sudo unbound-control flush_zone fbstatic-a.akamaihd.net
Afficher les ip des DNS de notre configuration
nmcli dev show | grep DNS
IP4.DNS[1]: 192.168.1.1 IP4.DNS[2]: 127.0.0.1 IP6.DNS[1]: ::1
Vérifier le status de unbound
sudo unbound-control status
version: 1.5.8 verbosity: 1 threads: 1 modules: 2 [ validator iterator ] uptime: 4723 seconds options: control(ssl) unbound (pid 2698) is running...
Utiliser la commande nslookup
nslookup facebook.com
Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: Name: facebook.com Address: 31.13.71.36
La réponse Non-authoritative answer est essentiellement une réponse en cache ou transmise à partir du serveur DNS local, ici, unbound.
Fondamentalement, un serveur de noms non autorisé est celui qui ne contient pas les enregistrements de la zone interrogée.
Le DNS local n'aura probablement pas les enregistrements de noms de facebook, par exemple.
On obtient les serveurs de noms autorisés pour un domaine donné avec host -t ns facebook.com
host -t ns facebook.com facebook.com name server a.ns.facebook.com. facebook.com name server b.ns.facebook.com.
Exécuter la commande nslookup avec un de ces serveurs, par exemple nslookup facebook.com a.ns.facebook.com, la réponse est autorisée.
Server: a.ns.facebook.com Address: 69.171.239.12#53 Name: facebook.com Address: 31.13.77.36
Retourner un enregistrement NS avec nslookup. Saisir nslookup. Un prompt apparait. Saisir set type=NS puis entrée. Saisir le domaine puis entrée. Le résultat est affiché.
nslookup > set type=NS > facebook.com
Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: facebook.com nameserver = a.ns.facebook.com. facebook.com nameserver = b.ns.facebook.com. Authoritative answers can be found from: a.ns.facebook.com has AAAA address 2a03:2880:fffe:c:face:b00c:0:35 a.ns.facebook.com internet address = 69.171.239.12 b.ns.facebook.com has AAAA address 2a03:2880:ffff:c:face:b00c:0:35 b.ns.facebook.com internet address = 69.171.255.12
Installer traceroute
sudo apt install traceroute
Modifier le fichier hosts
Changer l'ip cible de facebook pour une destination plus proche en changeant l'adresse IP liée au nom de domaine, depuis le fichier hosts. Faire une recherche sur le sommaire sécurité, depuis ce wiki, pour plus d'informations.
Activer IPV6 sur la Box
Ajouter une adresse IP statique pour Facebook
Source : http://vinodkotiya.blogspot.fr/2010/02/solution-for-facebook-staticakfbcdnnet.html
Utiliser un VPN
Le VPN ne va pas vous aider à surfer plus vite, mais, il peut, dans le cas de ralentissements anormaux, vous aider à obtenir une connexion à facebook.
https://www.le-vpn.com/fr/debloquer-facebook/
Résolution du problème de ralentissement sur facebook
Un reboot de la box orange peut permettre de pouvoir naviguer à nouveau normalement. Seul le site Facebook et Discord ont été ralentis.
Quelques erreurs pouvant être rencontrées
Server returned error NXDOMAIN
# Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018-0001, retrying transaction with reduced feature level UDP
sudo nano /etc/systemd/resolved.conf
[Resolve] DNS=8.8.8.8 8.8.4.4 #FallbackDNS= #Domains= #LLMNR=no #MulticastDNS=no #DNSSEC=no # Cache=yes # DNSStubListener=yes
sudo systemctl restart systemd-resolved
systemctl status systemd-resolved ● systemd-resolved.service - Network Name Resolution Loaded: loaded (/lib/systemd/system/systemd-resolved.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2019-11-06 17:19:46 CET; 2min 41s ago Docs: man:systemd-resolved.service(8) https://www.freedesktop.org/wiki/Software/systemd/resolved https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients Main PID: 16017 (systemd-resolve) Status: "Processing requests..." Tasks: 1 (limit: 4915) CGroup: /system.slice/systemd-resolved.service └─16017 /lib/systemd/systemd-resolved nov. 06 17:19:46 nom_de_machine systemd[1]: Starting Network Name Resolution... nov. 06 17:19:46 nom_de_machine systemd-resolved[16017]: Positive Trust Anchors: nov. 06 17:19:46 nom_de_machine systemd-resolved[16017]: . IN DS 19036 8 2 49aac11d7b6f6446702e54a1...fd2ce1cdde32f24e8fb5 nov. 06 17:19:46 nom_de_machine systemd-resolved[16017]: . IN DS 20326 8 2 e06d44b80b8f1d39a95c0b0d...683457104237c7f8ec8d nov. 06 17:19:46 nom_de_machine systemd-resolved[16017]: Negative trust anchors: 10.in-addr.arpa 16.172.in-addr.arpa 17.172.in-addr.arpa 18.172.in-addr.arpa 19.172.in-addr.arpa 20 nov. 06 17:19:46 nom_de_machine systemd-resolved[16017]: Using system hostname 'nom_de_machine'. nov. 06 17:19:46 nom_de_machine systemd[1]: Started Network Name Resolution.
Vérifier le reverse DNS sur son serveur Linux
Définition du reverse DNS
# De nombreux serveurs de messagerie sont configurés pour rejeter les mails entrants de chaque adresse IP qui n'aurait pas de DNS inversé.
Tester son serveur et ses domaines avec mxtoolbox : https://mxtoolbox.com/ReverseLookup.aspx
Reverse DNS lookup : https://en.wikipedia.org/wiki/Reverse_DNS_lookup
Vérifier le reverse DNS avec la commande dig
dig -x 139.99.173.195 ; <<>> DiG 9.11.3-1ubuntu1.12-Ubuntu <<>> -x 139.99.173.195 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40491 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;195.173.99.139.in-addr.arpa. IN PTR ;; ANSWER SECTION: 195.173.99.139.in-addr.arpa. 0 IN PTR visionduweb.fr. 195.173.99.139.in-addr.arpa. 0 IN PTR green-adn.com. ;; Query time: 0 msec ;; SERVER: 127.0.0.53#53(127.0.0.53) ;; WHEN: Tue Jun 02 04:49:27 CEST 2020 ;; MSG SIZE rcvd: 111
Vérifier le reverse DNS avec la commande host
# Vérifier ou tester le DNS inversé sur le système d'exploitation Linux : host <adresse IP>
# Étonnant, il n'y a que deux domaines qui sont retournés. J'aurais pensé un seul ou tous, mais, pourquoi uniquement deux ? A suivre. host 139.99.173.195 195.173.99.139.in-addr.arpa domain name pointer visionduweb.fr. 195.173.99.139.in-addr.arpa domain name pointer green-adn.com.
Vérifier le reverse DNS avec la commande nslookup
nslookup 139.99.173.195 195.173.99.139.in-addr.arpa name = visionduweb.fr. 195.173.99.139.in-addr.arpa name = green-adn.com. Authoritative answers can be found from:
Autres serveurs DNS
BIND
Plus complexe que unbound qui est peut être plus approprié pour les novices et les personnes pressées. Soit résolveur, soit serveur faisant autorité. Ne pas faire les deux. Monter une machine, pour chaque tâche.
Vidéo : https://www.youtube.com/watch?v=KFHZL6bxsUo
Source : https://www.isc.org/downloads/bind/ Source : https://doc.ubuntu-fr.org/bind9 Tutoriel : https://www.informatiweb-pro.net/admin-systeme/linux/10--debian-ubuntu-installer-et-configurer-un-serveur-dns-bind.html
DNSMasq
Source : https://doc.ubuntu-fr.org/configuration_serveur_dns_dhcp
Depuis Ubuntu 12.04, network-manager intègre DNSMasq ce qui provoque des perturbations dans la résolution DNS pour un réseau local reposant sur Bind9 par exemple.
Le symptôme est simple, parfois l'infrastructure DNS fonctionne, parfois non. La solution ici est de désactiver DNSMasq dans network-manager.
sudo nano /etc/NetworkManager/NetworkManager.conf
Et de commenter la ligne "dns=dnsmasq" de cette façon:
#dns=dnsmasq
Il faut aussi désactiver le service dnsmasq au démarrage :
sudo update-rc.d -f dnsmasq remove
Redémarrer network-manager.
sudo service network-manager restart
PowerDNS
Source : https://doc.ubuntu-fr.org/pdns
D'autres liens à consulter
https://homeserver-diy.net/wiki/index.php?title=Installer_et_configurer_son_serveur_DNS_connect%C3%A9_aux_serveurs_root_avec_Unbound#Installation_d.27Unbound https://homeserver-diy.net/wiki/index.php?title=Installer_et_configurer_son_serveur_DNS_connect%C3%A9_aux_serveurs_root_avec_Unbound https://www.dsfc.net/infrastructure/reseau/passage-de-unbound-et-dnscrypt-en-ipv6-sous-windows/ https://blog.heckel.xyz/2013/07/18/how-to-dns-spoofing-with-a-simple-dns-server-using-dnsmasq/ https://memo-linux.com/dnscrypt-dnsmasq-sur-archlinuxmanjaro-chiffrez-toutes-les-requetes-dns/ https://www.debian-fr.org/t/unbound-resolution-delegation-noms-locaux-non-qualifies/55023 http://www.lolokai.com/blog/2012/11/09/definir-une-adresse-ip-statique-sous-debianubuntu/ Avoir son propre résolveur : http://www.bortzmeyer.org/son-propre-resolveur-dns https://doc.ubuntu-fr.org/utilisateurs/vrinse/brouillons/unbound_brouillon http://www.commentcamarche.net/contents/518-dns-systeme-de-noms-de-domaine https://linuxfr.org/forums/general-general/posts/probleme-de-dns-avec-bbox https://technet.microsoft.com/fr-fr/library/cc754143(v=ws.11).aspx https://korben.info/installer-unbound-serveur-dns-sous-linux.html https://openclassrooms.com/courses/gerer-son-nom-de-domaine http://assiste.com/Comment_vider_le_cache_DNS_de_Linux.html https://doc.ubuntu-fr.org/configuration_serveur_dns_dhcp https://korben.info/installer-serveur-dns-unbound.html http://korben.info/installer-serveur-dns-unbound.html https://memo-linux.com/ubuntu-serveur-dns-unbound/ https://freedom-ip.com/forum/viewtopic.php?id=399 https://doc.ubuntu-fr.org/dns_dynamique https://calomel.org/unbound_dns.html http://korben.info/dns-google.html https://doc.ubuntu-fr.org/unbound https://doc.ubuntu-fr.org/pdns
Consulter pdns-tools
pdns-tools - Tools for DNS debugging by PowerDNS
Créer un tunnel avec ICMP Tunnel
Définition de ICMP tunnel
Source : https://en.wikipedia.org/wiki/ICMP_tunnel
Contourner un filtrage
Changer de DNS ne suffit pas pour contourner un filtrage, il faut utiliser un VPN ou un tunnel ICMP.
Analyser son domaine pour savoir si il est bloqué en Chine : https://www.comparitech.com/privacy-security-tools/blockedinchina/ Logiciel pour lancer un tunnel ICMP sous Windows : https://sourceforge.net/projects/itun/?SetFreedomCookie Vérifier la disponibilité de son site : https://downforeveryoneorjustme.com http://www.linux-france.org/prj/edu/archinet/systeme/ch09s02.html http://www.commentcamarche.net/contents/521-le-protocole-icmp Source : https://github.com/DhavalKapil/icmptunnel https://en.wikipedia.org/wiki/ICMP_tunnel https://korben.info/icmp-tunnel.html
Bibliographie
Configure your network settings to use Google Public DNS : https://developers.google.com/speed/public-dns/docs/using?csw=1 Installer unbound serveur DNS sous Linux : https://korben.info/installer-unbound-serveur-dns-sous-linux.html Debian installer le serveur DNS unbound : https://memo-linux.com/debian-installer-le-serveur-dns-unbound/ Source : https://www.commentcamarche.com/faq/8725-opendns-un-dns-rapide-et-utile
Analyser les enregistrements MX : https://mxtoolbox.com Analyser les DNS : http://www.dnsinspect.com No IP : https://www.noip.com
NAVIGATION
PARTICIPER ET PARTAGERBienvenue sur le wiki de Amis SH. De nombreuses pages sont partagées sur ce wiki. Créer un compte utilisateur pour participer sur le wiki. Les pages présentées sur le wiki évoluent tous les jours. Certaines recherches sont peu abouties et incluent des erreurs. Utiliser la recherche interne du wiki pour trouver votre contenu. La page de discussion de Amis SH vous permet de poser vos questions. Consulter le site amis-sh.fr pour installer votre propre serveur web. Améliorer le contenu des pages avec vos retours depuis l'onglet discussion. Ce contenu ne doit pas servir à nuire à autrui ou à un système informatique. Protéger votre système Linux ou Windows avec cette page dédiée à la sécurité. |
SOUTENIR CE WIKISoutenir le wiki avec un don en monnaie numérique : AEON - Bitcoins - Bitcoins Cash - Bitcoins Gold - Bitcore - Blackcoins - Basic Attention Token - Bytecoins - Clams - Dash - Monero - Dogecoins - Ğ1 - Ethereum - Ethereum Classique - Litecoins - Potcoins - Solarcoins - Zcash OBTENIR DE LA MONNAIE NUMERIQUEObtenir gratuitement de la monnaie numérique : Miner de la cryptomonnaie. |