GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare il server DNS su RHEL 8 / CentOS 8 Linux

Questa guida mostrerà come installare e configurare un server DNS in RHEL 8 / CentOS 8 solo in modalità cache o come server DNS singolo, nessuna configurazione master-slave. Viene fornito un esempio di zona inversa e in avanti.

In questo tutorial imparerai:

  • Come installare un server DNS in RHEL 8 / CentOS 8
  • Come configurare un server per memorizzare nella cache solo il server DNS
  • Come configurare un server come server DNS singolo

Client che risolve una query tramite il server DNS.

Requisiti e convenzioni software utilizzati

Requisiti software e riga di comando Linux
Convenzioni
Categoria Rete
Sistema RHEL 8 / CentOS 8
Software legare
Altro Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando.
Convenzioni # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando
$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato

Prerequisiti

Prima di iniziare si presuppone che:

  • Tu o la tua organizzazione avete già creato un account in Red Hat
  • RHEL 8 / CentOS 8 è già stato scaricato e installato
  • Il sistema è già stato registrato tramite il Subscription
    Manager
  • Hai già configurato un repository locale o remoto

Installazione del server DNS

  1. Installazione Bind
    Installeremo il pacchetto BIND, il più famoso Server DNS Open Source, attraverso il dnf strumento a cui ora yum è basato.
    Il comando da eseguire è:

    #  dnf -y install bind*

    Quale dovrebbe installare tutti questi pacchetti:

    Elenco dei pacchetti di rilegatura

Configurazione del server DNS comune

  1. Configurazione del firewall
    Dobbiamo abilitare il servizio DNS:

    # firewall-cmd --permanent --zone=public --add-service=dns

    e ricarica la configurazione:

    # firewall-cmd --reload
  2. Backup dei file di configurazione principali
    È sempre una buona abitudine fare una copia di backup iniziale dei file di configurazione di bind principali; anche prima di qualsiasi modifica.

    #  cp /etc/named.conf /etc/named.conf.org
    #  cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.org
    
    
  3. Verifica della configurazione di rete
    Un Server DNS deve avere un indirizzo IP statico, verifichiamo che sia il caso:

    $  cat /etc/sysconfig/network-scripts/ifcfg-enp0s3|egrep -i "boot|ipaddr|mask|gateway"

    Che, ad esempio, produce i seguenti risultati:

    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=10.0.0.63
    NETMASK=255.255.255.0
    GATEWAY=10.0.0.1
    

    Ovviamente la tua configurazione di rete potrebbe essere diversa, ancora una volta l'indirizzo IP deve essere statico.

  4. Scelta del nome di dominio
    Per impostare un nome di dominio completo o un FQDN

    #  hostnamectl set-host name dns-srv.vulcansys-local.com

    Ovviamente puoi scegliere un altro nome, qui ho inventato un nome di dominio che sembra non essere stato registrato in nessuna organizzazione.

  5. Configurazione del resolver
    Stiamo per configurare il resolv.conf file. Le prime righe devono essere:

    search vulcansys-local.com
    nameserver 10.0.0.63
    

    Questo è sia nel server che in qualsiasi client che interroga il nostro DNS; ovviamente devi aggiungere un secondo name server per risolvere siti internet o qualsiasi altro dominio.

  6. Disabilitazione della configurazione automatica DNS di Network Manager
    Non vogliamo che Network Manager modifichi resolv.conf file. Per farlo aggiungiamo semplicemente la riga
    :dns=none nel file /etc/NetworkManager/NetworkManager.conf e ricarichiamo il servizio:

    #  systemctl reload NetworkManager
  7. Abilitazione del servizio di collegamento all'avvio
    Dobbiamo assicurarci che il servizio DNS sia avviato con il sistema, quindi:

    #  systemctl enable named

Tipi di server DNS

È possibile configurare un server DNS per funzionare in una delle seguenti modalità, solo una alla volta:

  • Server radice
  • Server singolo
  • Server secondario
  • Server di sola memorizzazione nella cache
  • Server di inoltro

In questo articolo descriveremo solo come configurare un server di sola memorizzazione nella cache e un server singolo.

Un server DNS di sola memorizzazione nella cache non ospita alcuna zona e non è autorevole per un particolare dominio; quando il server viene avviato inizialmente, non ha informazioni memorizzate nella cache e le informazioni vengono ottenute nel tempo man mano che le richieste dei client sono
soddisfatte.

Un server DNS primario o singolo è autorevole per un dominio, ma non abbiamo alta disponibilità e quindi se è inattivo o irraggiungibile nessuna query DNS per il dominio funzionerà, a meno che non sia memorizzata nella cache o duplicata nel file statico /etc/hosts .

NOTA
Quello che abbiamo configurato finora è comune qualunque sia la “modalità di configurazione” che sceglieremo.
  1. Memorizzazione nella cache solo del server DNS
    Ci assicuriamo che le seguenti righe siano modificate/configurate in named.conf file:

    listen-on port 53 { 127.0.0.1; 10.0.0.63; };
    #listen-on-v6 port 53 { ::1; };
    allow-query { 127.0.0.1; 10.0.0.0/24; };
    recursion yes;
    allow-recursion { 127.0.0.1; 10.0.0.0/24; };
    

    Per semplicità qui il server non sarà in ascolto su un indirizzo IPv6 ( la riga relativa è quindi commentata ). Per verificare se la configurazione è OK possiamo eseguire il comando:

    #  named-checkconf

    se tutto va bene non viene restituito alcun output. Infine abbiamo bisogno che il servizio ricarichi la sua configurazione:

    #  systemctl reload named
  2. Server DNS singolo
    Nel caso in cui scegliamo questo tipo, sarà il nostro server DNS autorevole incaricato di qualsiasi risoluzione dei nomi nel dominio che abbiamo scelto. Anche qui modificheremo /etc/named.conf :

    listen-on port 53 { localhost; 10.0.0.63; };
    #listen-on-v6 port 53 { ::1; };
    allow-query { 127.0.0.1; 10.0.0.0/24; };
    recursion no;

    In questa guida, per semplicità, non stiamo impostando il servizio di binding per l'ascolto su un indirizzo IPv6.

    L'opzione recursion no si assicura che il DNS non faccia tutto il lavoro per fornire una risposta a una particolare query, ma delegherà ai server root se necessario e ad altri server autorevoli l'attività per quei nomi sconosciuti o IP. In altre parole:un server autorevole non deve essere ricorsivo .

    Successivamente dobbiamo specificare i nostri file di zona; qui configureremo una zona diretta (per risolvere un IP da un nome) e una zona inversa (per risolvere un nome dato un indirizzo IP) ciascuno nel suo file specifico, aggiungendo le seguenti righe al file named.rfc1912.zones file:

    zone "vulcansys-local.com" IN {
                   type master;
                   file "forward.zone";
                   allow-update { none; };
    };
    
    zone "63.0.0.10.in-addr.arpa" IN {
                   type master;
                   file "reverse.zone";
                   allow-update { none; };
    };

    L'opzione allow-update si riferisce agli aggiornamenti dinamici DNS, ciò significa che un'applicazione in un host può aggiungere un record DNS; per motivi di sicurezza questo è disabilitato di default e quindi solo l'amministratore di sistema può aggiungere record e manualmente.

    Ora dobbiamo creare i file forward.zone e reverse.zone . Di solito i file di zona si trovano all'interno della
    directory /var/named come possiamo dedurre dalla directory opzione nel named.conf file di configurazione.

    Il nostro forward.zone il file conterrà:

    $TTL     1D
    @        IN  SOA dns-srv.vulcansys-local.com. root.vulcansys-local.com. (
                          2019022400 ; serial
                          3h         ; refresh
                          15         ; retry
                          1w         ; expire
                          3h         ; minimum
                                                                                )
    
             IN  NS dns-srv.vulcansys-local.com.
    dns-srv  IN  A  10.0.0.63
    
    

    E il reverse.zone file:

    $TTL     1D
    @        IN  SOA dns-srv.vulcansys-local.com. root.vulcansys-local.com. (
                          2019022400 ; serial
                          3h         ; refresh
                          15         ; retry
                          1w         ; expire
                          3h         ; minimum
                                                                                )
    
             IN  NS dns-srv.vulcansys-local.com.
    63       IN  PTR  dns-srv.vulcansys-local.com

    Nei file di configurazione menzionati SOA (Start Of Authority) definisce i parametri globali per la zona (dominio); può essere specificato un solo Resource Record (la riga con la parola chiave SOA con il nostro nome di dominio completo). Il tempo di partenza ($TTL) è per impostazione predefinita 1 giorno (o 86400 secondi) e dovrebbe essere temporaneamente ridotto se si modifica una voce in questo file di configurazione poiché indica al server DNS per quanto tempo memorizzare nella cache le informazioni recuperate. La cosa più importante è ricordare di terminare qualsiasi nome di dominio completo in questi file di configurazione con un punto .

    Qui root.vulcansys-local.com è l'indirizzo e-mail e 2019022400 un campo seriale che in pratica serve per tenere traccia di qualsiasi modifica nel file di zona e convenzionalmente è nella forma YYYYmmddss , dove ss è un numero a due cifre.

    Nel file inverso potresti aver notato che tutto sembra uguale tranne l'ultima riga. Lì specifichiamo con PTR una ricerca inversa che si risolverà in 10.0.0.63; basta digitare l'ultima cifra 63 che identifica l'host (poiché netmask è 255.255.255.0 ).

    Ora ci assicuriamo di avere le autorizzazioni corrette:

    #  chgrp named /var/named/reverse.zone
    #  chgrp named /var/named/forward.zone
    
    

    Per verificare che i file di zona siano configurati correttamente puoi impartire i comandi:

    #  named-checkzone vulcansys-local.com /var/named/forward.zone
    #  named-checkzone 10.0.0.63 /var/named/reverse.zone
    

    E per verificare la configurazione complessiva:

    #  named-checkconf -v

    Se tutto va bene possiamo ricaricare il servizio:

    #  systemctl reload named

Configurazione client

  1. Configurazione del firewall
    Dobbiamo configurare il firewall come spiegato sopra con il server. Per semplicità presumo che il client sia anche un RHEL 7 o 8.
  2. Configurazione del resolver
    Il primo nameserver deve essere il nostro server DNS, anche qui assicurati che il Network Manager non alteri il file resolv.conf.
  3. Impostazione del nome host
    Per coerenza, a qualsiasi client nel dominio verrà assegnato un nome host FQDN.

Infine verifichiamo che la nostra configurazione DNS funzioni, da un client, provando a eseguire il ping del server DNS per nome.

Client che risolve una query tramite il server DNS.

Conclusione

La configurazione di un server DNS è un compito che qualsiasi amministratore serio dovrebbe aver svolto almeno una volta e in RHEL 8 il modo per farlo non è difficile.


Cent OS
  1. Come installare redmine su RHEL 8 / CentOS 8 Linux

  2. Come installare il server vnc su RHEL 8 / CentOS 8

  3. Come installare Puppet su CentOS 8 / RHEL 8

  4. Come installare Puppet 6.x su CentOS 7 / RHEL 7

  5. CentOS / RHEL 7:come installare la GUI

Come installare WordPress su RHEL 8 / CentOS 8 Linux

Come installare GIMP su CentOS 8 / RHEL 8 Linux

Come installare il server Redis su CentOS 8 / RHEL 8

Come installare Zabbix Server 4.x su CentOS 6 / RHEL 6

Come installare Zabbix Server 5.0/4.0 su CentOS 7/RHEL 7

Come installare la GUI su CentOS 8 / RHEL 8 Server Linux minimo