GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare e utilizzare Unbound in Ubuntu 20.04

Unbound è un server di memorizzazione nella cache DNS ricorsivo, di convalida, molto sicuro e distribuito gratuitamente con licenza BSD. Unbound supporta DNS-over-TLS e DNS-over-HTTPS per aumentare la privacy online consentendo ai client di crittografare la propria connessione. A seconda della configurazione di rete, Unbound può supportare sia IPV4 che IPV6. L'installazione e la configurazione di Unbound nelle distribuzioni Linux è abbastanza semplice e diretta. Il pacchetto Unbound è disponibile nella maggior parte dei sistemi operativi moderni, inclusi CentOS, Ubuntu, Fedora. Le aziende che utilizzano il proprio dominio per servire applicazioni o siti Web internamente possono utilizzare unbound come server DNS. In questo articolo impareremo come installare e configurare un Unbound server in Ubuntu 20.04.

Installazione

L'installazione del server di risoluzione dei nomi Unbound in Ubuntu 20.04 è molto semplice e facile. Esegui il comando seguente per installare il pacchetto

$ sudo apt install unbound -y

Uscita:

Inoltre, esegui il comando seguente per installare pacchetti aggiuntivi che utilizzeremo per controllare le configurazioni del server DNS

$ sudo apt install bind-utils net-tools -y

Al termine dell'installazione, è possibile trovare il contenuto del file di configurazione utilizzando il comando:

$ cat /etc/unbound/unbound.conf

Uscita :

L'output mostra che dalla directory unbound.conf.d verranno caricati tutti i file .conf.

Creiamo un nuovo file di configurazione nella directory /etc/unbound/unbound.conf.d directory. In questo esempio ho creato un unbound_test.conf file. Puoi avere la tua ipotesi.

Aprire il file utilizzando l'editor di testo e aggiungere la seguente configurazione di esempio. Puoi modificare i parametri di conseguenza.

$ sudo nano /etc/unbound/unbound.conf.d/unbound_test.conf
server:

port: 53

verbosity: 0

num-threads: 2

outgoing-range: 512

num-queries-per-thread: 1024

msg-cache-size: 32m

interface: 127.0.0.1

interface: 192.168.5.5

rrset-cache-size: 64m

cache-max-ttl: 86400

infra-host-ttl: 60

infra-lame-ttl: 120

outgoing-interface: 192.168.0.2

access-control: 127.0.0.0/8 allow

access-control: 192.168.5.0/24 allow

username: unbound

directory: "/etc/unbound"

logfile: "/var/log/unbound.log"

use-syslog: no

hide-version: yes

so-rcvbuf: 4m

so-sndbuf: 4m

do-ip4: yes

do-ip6: no

do-udp: yes

do-tcp: yes
Now create a log file and assign permission to write logs

$ sudo touch /var/log/unbound.log
$ sudo chown unbound:unbound /var/log/unbound.log

Riavvia il servizio Unbound per caricare la configurazione

$ sudo service unbound restart

Utilizzare il comando seguente per abilitare il servizio

$ sudo service unbound enable

Controlla se il servizio non associato è in esecuzione o non utilizza il comando:

$ sudo service unbound status

uscita :

Esegui il comando seguente per verificare quale porta non associata è in ascolto

$ sudo netstat -anlpt | grep LIST

Uscita:

L'output mostra che il servizio Unbound è in ascolto sulla porta 53 per accettare le richieste.

Spiegazione del file di configurazione:

porta :Porta in ascolto per Unbound

nascondi-versione :non visualizzare la versione di non vincolata

usa-syslog :specifica se vuoi scrivere i log in syslog

nome utente :Utente, sotto il quale viene eseguito unbound

verbosità :il livello di registro che va da 0 a 4 e 4 è il livello di registro di debug

interfaccia :Interfacce in cui verranno ascoltate le richieste non associate

interfaccia in uscita :Interfaccia attraverso la quale arriva Internet

num-thread :Numero di thread, consigliato per specificare lo stesso numero di core del processore

Apri la porta DNS nel firewall.

Una volta creato il file di configurazione, è necessario aprire una porta DNS per consentire ai client LAN locali di connettersi al server DNS di sola cache Unbound.

$ sudo ufw allow from any to any port 53 proto tcp
$ sudo ufw allow from any to any port 53 proto udp

Per controllare la regola del firewall, esegui il seguente comando

$ sudo ufw status

Uscita :

Ora siamo arrivati ​​al punto finale per testare il nostro nuovo server DNS Unbound. Per i test possiamo usare lo scavare comando fornito con il pacchetto precedentemente installato bind-utils . Eseguire alcune query DNS nel server DNS effettivo. Per questo esempio, ho interrogato kernel.org per il test. Puoi avere la tua ipotesi.

$ dig kernel.org @localhost

Uscita:

Il tempo di risposta è di 4 msec nella prima query. Poiché abbiamo configurato il server DNS non associato, la query è ora memorizzata nella cache. Per verificare la cache DNS, esegui la seguente query con lo stesso nome di dominio.

$ dig kernel.org @localhost

Ora puoi scoprire che il tempo della query è 0 msec.

Se si desidera testare la configurazione del server DNS non associato dai client LAN, interrogare la risposta DNS che punta all'IP del server DNS non associato. (Nel mio caso l'IP del mio server DNS non legato è 192.168.178.130)

$ dig kernel.org @192.168.178.130

Ottimizzazione

La configurazione predefinita di Unbound funziona bene per utenti limitati, ma nel caso in cui sia necessario fornire un servizio a un numero elevato di utenti, è necessario apportare determinate ottimizzazioni. Ecco alcune opzioni di ottimizzazione che puoi implementare per ottenere prestazioni elevate.

num-thread: Metti lo stesso numero di core della CPU sul sistema, ad esempio, inserisci il valore 4 per 2 CPU con 2 core ciascuna.

so-reuseport:sì In Linux, questo aiuta a migliorare le prestazioni UDP

intervallo in uscita :puoi impostare il valore più grande possibile a seconda del numero di core.

così-sndbuf: Questo valore può essere impostato su un valore maggiore 4m o 8m per un server occupato.

Per maggiori dettagli puoi fare riferimento a

https://nlnetlabs.nl/documentation/unbound/howto-optimise/

Conclusione

Nell'articolo, abbiamo spiegato come installare e configurare il server di risoluzione dei nomi Unbound in Ubuntu con la configurazione di base. Alcuni test sono stati eseguiti utilizzando il comando dig per verificare la configurazione del server Unbound. Inoltre, abbiamo imparato come interrogare le risposte DNS dal client LAN locale utilizzando l'IP del server Unbound. Qualsiasi feedback e suggerimento sarà molto apprezzato.


Ubuntu
  1. Come installare e utilizzare Wine su Ubuntu 20.04

  2. Come installare e utilizzare FFmpeg su Ubuntu 18.04

  3. Come installare e utilizzare Wine su Ubuntu 18.04

  4. Come installare e utilizzare Curl su Ubuntu 18.04

  5. Come installare e utilizzare Docker in Ubuntu 20.04

Come installare e utilizzare AngularJS su Ubuntu

Come installare e utilizzare Maldet su Ubuntu 20.04

Come installare e utilizzare Telnet su Ubuntu 20.04

Come installare e utilizzare Ubuntu Cleaner

Come installare e utilizzare VeraCrypt su Ubuntu 22.04

Come installare e utilizzare Kaffeine in Ubuntu 22.04