22
0
Fork 0

relecture [1/N]

This commit is contained in:
Gregory Colpart 2017-07-26 19:53:00 -04:00
parent ac0e266500
commit dedb64fe04
1 changed files with 25 additions and 30 deletions

View File

@ -1,43 +1,38 @@
---
categories: openbsd network dns
title: HowtoUnbound
categories: openbsd network DNS
title: Howto Unbound
---
* Documentation : <https://www.unbound.net/documentation/index.html>
* Rôle Ansible : <https://forge.evolix.org/projects/ansible-roles/repository/show/unbound>
* Man page : <https://man.openbsd.org/unbound>
Unbound est un serveur DNS récursif avec cache et sachant faire de la
validation DNSSEC. Contrairement à [Bind](../HowtoBind), il ne sait pas
faire autorité pour un domaine. Il a été écrit et est maintenu par
[NLnet Labs](https://www.nlnetlabs.nl/).
[Unbound](https://www.unbound.net/) est un serveur DNS récursif. Il gère du cache et la validation DNSSEC. Par rapport à [Bind](HowtoBind) il est léger et sécurisé, mais il ne sait pas faire autorité pour un domaine. Il a été écrit et est maintenu par [NLnet Labs](https://www.nlnetlabs.nl/).
Du fait de la légèreté, de sa modernité et par conséquent de sa
meilleure sécurité, unbound a remplacé bind dans un certain nombre de
projet libre.
## Installation
# Installation
## Debian
Sous Debian 9, on installe la version 1.6.0
### Debian
~~~
# apt install unbound
$ /usr/sbin/unbound -h | tail -5
Version 1.6.0
linked libs: libevent 2.0.21-stable (it uses epoll), OpenSSL 1.1.0f 25 May 2017
linked modules: dns64 python validator iterator
BSD licensed, see LICENSE in source package for details.
Report bugs to unbound-bugs@nlnetlabs.nl
~~~
## OpenBSD
### OpenBSD
Unbound est intégré dans la base d'OpenBSD, il n'y a donc pas besoin
de l'installer.
Unbound est intégré dans la base d'OpenBSD, il est donc déjà présent.
Attention, Unbound est dans un chroot, sa configuration n'est pas présente dans `/etc` mais dans `/var/unbound/etc`.
Néanmoins comme unbound est dans un chroot, sa configuration n'est pas
présente dans `/etc` mais dans `/var/unbound/etc`.
# Configuration
## Configuration
Un exemple de configuration basique mais suffisante en l'absence de cas
particulier :
Un exemple de configuration basique mais suffisante en l'absence de cas particulier :
~~~
server:
@ -62,7 +57,7 @@ server:
En plus de la documentation, on peut se référer à [unbound.conf(5)](https://man.openbsd.org/unbound.conf).
## Sous OpenBSD
### Sous OpenBSD
On active unbound dans `rc.conf.local` et on démarre le daemon !
@ -71,9 +66,9 @@ On active unbound dans `rc.conf.local` et on démarre le daemon !
# rcctl start unbound
~~~
# FAQ
## FAQ
## Utiliser un serveur dns particulier pour une zone
### Utiliser un serveur dns particulier pour une zone
On pourra forwarder certaines requêtes vers un serveur différent en rajoutant les directives ci-dessous :
@ -90,7 +85,7 @@ Dans le cas présent, les requêtes concernent une zone locale, ainsi afin d'év
domain-insecure: "foo.local."
~~~
## Rajouter / modifier un enregistrement DNS
### Rajouter / modifier un enregistrement DNS
Parfois on veut pouvoir modifier un enregistrement DNS, par exemple
quand on a un VPN. On peut utiliser `/etc/hosts` pour les champs A
@ -102,12 +97,12 @@ mais pas pour les MX. On peut donc utiliser unbound pour mentir :
local-data: "fakemx.example.com. IN A 192.168.1.3"
~~~
## Configuration sur un routeur
### Configuration sur un routeur
Il NE faut PAS mettre une configuration de type
~~~
interface: 0.0.0.0
interface: 0.0.0.0
~~~
car unbound ne va pas forcément répondre avec la bonne interface et on peut avoir des erreurs du type
@ -119,13 +114,13 @@ $ dig @ipdurouteur
Il faut lister explicitement toutes les interfaces sur lesquelles on souhaite qu'unbound écoute.
## dig +trace ne fonctionne pas
### dig +trace ne fonctionne pas
C'est certainement parce que le client a une autorisation insuffisante
pour ce type de requête particulier. Il faut donc remplacer dans la
directive `access-control:` le mot-clé `allow` par `allow_snoop`.
## Avoir des statistiques
### Avoir des statistiques
On peut facilement accéder à des statistiques avec [unbound-control(8)](https://man.openbsd.org/unbound-control).