GNU/Linux >> Linux Esercitazione >  >> Linux

Configurazione del proprio servizio di nomi (DNS) con ISPConfig

Internet funziona con numeri IP e per ottenere da un nome di dominio all'indirizzo del suo numero IP viene utilizzato il DNS del Domain Name System. Puoi impostare il tuo servizio nomi o utilizzare, ad esempio, il servizio nomi del tuo provider di hosting. In ogni caso, imposti una mappatura da un nome di dominio completo a un numero IP. Ad esempio, FQDN mail.howtoforge.com ha l'indirizzo 78.46.214.220.

Questo tutorial utilizza il nome di dominio xyzzy.tld. Host Name è un nome dato a un host, ad esempio foobar. La combinazione di nome host e nome di dominio fornisce un nome di dominio completo qualificato come FQDN, ad esempio foobar.xyzzy.tld.

Se il dominio deve essere utilizzato al di fuori della propria organizzazione, il dominio deve essere registrato. Il registrar richiede due name server. Almeno alcuni registrar consentono la prima registrazione e i server dei nomi possono essere forniti in seguito, forse fino a un mese dopo. Ma il registrar minaccia di revocare il tuo nome di dominio a meno che non ottenga due server dei nomi funzionanti.

Se si desidera eseguire i propri server dei nomi, sono necessari due host del server dei nomi. Se disponi di un solo host, puoi configurarlo per eseguire siti Web, e-mail, database ecc. e servizi di nomi, ma il secondo server dei nomi deve essere organizzato in qualche modo.

Se fornisci il servizio dei nomi solo all'interno della tua organizzazione, non è necessario registrare il dominio e puoi avere un solo server dei nomi.

La parte ISPConfig di questo tutorial presuppone che sia stata installata una configurazione multiserver, con un host con tutto tranne il servizio nomi e due host per il servizio nomi. Tre padroni di casa in tutto. I nomi host sono web, ns1 e ns2. Puoi utilizzare solo due host se il web esegue anche il servizio dei nomi e anche gli altri host sono server dei nomi.

Il servizio dei nomi ha record di diversi tipi. Imposta i record A sul numero IP dei tuoi host. Se viene utilizzato IPv6, è un record AAAA. Se hai tre host, imposta tre record A. Imposta due record NS sui nomi host del server dei nomi.

Raccogli le informazioni necessarie in questo modo:

host o dominio Indirizzo IP Utilizzato per
xyzzy.tld 192.168.260.71 indirizzo della pagina web
web 192.168.250.71 server web
ns1 192.168.250.73 server dei nomi
ns2 192.168.258.75 server dei nomi

1.1 Utilizzo di ISPConfig 3.x

Installa i tre host e ISPConfig su di essi utilizzando la configurazione multiserver. Ho usato Debian GNU/Linux 9.5 e ISPConfig 3.1.12 durante il test di questo tutorial.

Se prevedi di avere più domini, è più facile impostare i modelli DNS. Vedere il manuale ISPConfig capitolo 4.8.1.3 Modelli. Qui viene aggiunto un solo dominio, quindi i modelli non vengono utilizzati.

Vai alla scheda DNS e premi "Aggiungi nuova zona DNS manualmente". Questa zona è il file di configurazione per il tuo dominio, puoi considerare che è più o meno la stessa cosa del dominio che desideri utilizzare.

Gli screenshot mostrano come compilare il modulo della zona DNS. Se stai configurando questa zona per un cliente, inserisci il cliente nel modulo. Puoi lasciarlo vuoto se imposti questa zona per te stesso o non desideri creare clienti in ISPConfig.

Salva e vai alla scheda Record.

Nella scheda Record, aggiungi i record premendo il pulsante verde per il record desiderato. Ad esempio, per ottenere un record A premere il pulsante verde con A. Quando si scrivono nomi host FQDN, ricordarsi di aggiungere il carattere punto "." alla fine del nome. Alcuni campi nei moduli DNS di ISPConfig lo richiedono per creare una voce del servizio dei nomi che funzioni correttamente. È più facile scriverlo sempre che ricordarsi dove non serve.

Puoi aggiungere più record se vuoi.

La pallina rossa con un numero nella parte superiore della finestra del pannello ISPConfig mostra che il salvataggio su disco è in corso. Il numero mostra quanti record devono ancora essere scritti. Attendi due minuti o finché la pallina rossa non scompare prima di eseguire il test, altrimenti potresti testare le vecchie configurazioni.

Se hai bisogno di più server dei nomi, o forse avevi un solo host su cui hai installato ISPConfig, puoi aggiungere host alla configurazione di ISPConfig. Per gli host che eseguono solo il servizio dei nomi, è sufficiente anche un piccolo host. Se puoi installare Linux e ISPConfig sull'host e ha un indirizzo IP statico, puoi usarlo come server dei nomi. Puoi eseguirlo nel tuo ufficio oa casa, ma l'indirizzo IP statico potrebbe essere difficile da ottenere o costoso. I provider di hosting hanno offerte piccole ed economiche e puoi ottenere quell'indirizzo IP statico. Puoi configurare una configurazione multiserver ISPConfig, in cui un host è da qualche parte e l'altro host è da qualche altra parte.

Se sei confuso, leggi il manuale di ISPConfig.

1.2 Utilizzo del servizio nomi Providers

Salta questo se hai già utilizzato ISPConfig per impostare il servizio nomi.

Se i tuoi host sono su un provider di hosting, probabilmente offrono un servizio DNS per i loro clienti di hosting. Oppure potresti trovare un provider di servizi DNS.

Su come utilizzare quei servizi, è difficile dare consigli precisi. Probabilmente ogni provider ha un sistema diverso. Tuttavia, tutti hanno bisogno che tu inserisca le informazioni che hai raccolto nella tabella all'inizio.

Leggi il capitolo precedente e adattati al modulo di input del tuo provider.

È molto probabile che il provider di hosting o il provider DNS esegua un set di server dei nomi e tutti i clienti DNS li utilizzano. I server dei nomi sono probabilmente denominati ns1.yourprovider.com, ns2.yourprovider.com. Il provider può offrire record di colla, quindi i tuoi server dei nomi vengono visualizzati come ns1.xyzzy.tld, ns2.xyzzy.tld invece. Esamina le istruzioni del tuo fornitore se sono disponibili record di colla e come utilizzarli.

1.3 Test

Ricordarsi di controllare che il servizio nomi ora funzioni correttamente. Accedi all'host ns1 o ns2 e inizia il test. Questo esempio è in esecuzione su Debian GNU/Linux 9.5 Stretch, suppongo che Ubuntu sia praticamente lo stesso. Altri sistemi operativi potrebbero essere diversi. Se stai testando su Windows, non ha il comando host, usa invece nslookup.

[email protected]:~# host web.xyzzy.tld 192.168.250.73
Using domain server:
Name: 192.168.250.73
Address: 192.168.250.73#53
Aliases: 

web.xyzzy.tld has address 192.168.250.71
[email protected]:~#

Il test precedente mostra che il server dei nomi utilizzato è 192.168.250.73 e risolve il nome web.xyzzy.tld nel numero IP 192.168.250.71, che è quello che vogliamo in questo caso. Testarlo in questo modo è utile perché

  • Il comando host verifica il servizio dei nomi, se esegui il ping del nome host potrebbe cercare prima nel file /etc/hosts e quindi potrebbe non testare affatto il servizio dei nomi.
  • il numero IP nel comando host dopo l'FQDN è l'indirizzo del server dei nomi a cui viene inviata la query. In questo modo siamo sicuri di testare il server dei nomi che abbiamo appena impostato.
  • Il numero IP viene utilizzato per il server dei nomi anziché il nome host, poiché se il servizio nomi non funziona il nome potrebbe non risolversi nel numero IP previsto, quindi è meglio utilizzare direttamente l'indirizzo IP.

Controlla altri nomi host che hai impostato in modo simile.

  • Se l'indirizzo IP restituito è errato, correggilo
  • Se non lo trovi, controlla l'ortografia
  • Se non lo trovi, controlla il punto alla fine dell'FQDN in ISPConfig dove hai scritto i nomi
  • Se "connessione scaduta, nessun server può essere raggiunto":il server dei nomi non è in esecuzione o la connessione di rete è persa. Controllare la rete con il ping del numero IP, ad esempio. Verifica che l'host sia in esecuzione. Verifica che il servizio dei nomi sia in esecuzione, su Debian e Ubuntu con
    systemctl status bind9.service
    .
  • Se tutto quanto sopra non riesce a ottenere un servizio nomi funzionante, vai al capitolo Strumenti.

Controlla le informazioni sulla zona, in particolare i server dei nomi, in questo modo:

[email protected]:~# dig @192.168.250.73 xyzzy.tld

; <<>> DiG 9.10.3-P4-Debian <<>> @192.168.250.73 xyzzy.tld
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64352
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

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

;; ANSWER SECTION:
xyzzy.tld.		3600	IN	A	192.168.250.71

;; AUTHORITY SECTION:
xyzzy.tld.		3600	IN	NS	ns1.xyzzy.tld.
xyzzy.tld.		3600	IN	NS	ns2.xyzzy.tld.

;; ADDITIONAL SECTION:
ns1.xyzzy.tld.		3600	IN	A	192.168.250.73
ns2.xyzzy.tld.		3600	IN	A	192.168.250.75

;; Query time: 0 msec
;; SERVER: 192.168.250.73#53(192.168.250.73)
;; WHEN: Fri Aug 10 15:41:53 EEST 2018
;; MSG SIZE  rcvd: 122

[email protected]:~#

Dig ottiene il server dei nomi a cui invia la query dal parametro @. Inserisci lì il numero IP del server dei nomi.

Se dig mostra correttamente i record NS e i numeri IP corretti per i server dei nomi nei record A, le cose stanno andando bene.

Ora esegui il test sopra utilizzando l'altro server dei nomi, non è necessario accedere a ns2, basta eseguire nuovamente i comandi ma utilizzare il numero IP dell'altro server. Questo per assicurarsi che anche l'altro name server funzioni come dovrebbe.

Puoi testare ulteriormente impostando la tua workstation per utilizzare questi nuovi server dei nomi che hai impostato. Devi cambiare i server DNS sulla tua workstation cercalo come farlo per il tuo sistema operativo in manuale o da Internet. In Linux puoi modificare il file /etc/resolv.conf. In Windows è nelle impostazioni di rete (lo stesso posto in cui hai impostato l'ottenimento automatico dell'indirizzo IP).

1.4 Servizio nome inverso

Salta questo se non hai bisogno del servizio nome inverso (i record PTR).

Il servizio nome inverso risolve il nome quando viene fornito l'indirizzo IP. È l'operazione inversa del solito servizio nomi.

Se imposti il ​​servizio dei nomi all'interno della tua organizzazione, puoi configurare il servizio dei nomi inverso negli stessi server dei nomi. Quando usi ISPConfig, crea prima la zona inversa e poi i record PTR in quella zona per ogni numero IP che hai.

Se il servizio dei nomi inversi deve funzionare da Internet pubblico, non è possibile utilizzare il proprio server dei nomi poiché molto probabilmente non è un server dei nomi autorevole per la zona inversa IP. Se lo è, dovresti saperlo. Contatta il tuo fornitore di servizi o la società che ti ha fornito i tuoi numeri IP, chiedi loro di impostare il servizio nome inverso. Indica loro i record PTR di cui hai bisogno o scopri come utilizzare l'interfaccia utente Web che la società di hosting probabilmente fornisce per l'utilizzo del servizio nome inverso.

Per impostare il servizio nome inverso con ISPConfig, creare la zona DNS per il servizio inverso, deve essere denominata con i primi tre ottetti del numero IP in ordine inverso con ".in-addr.arpa" aggiunto alla fine. In questo caso i numeri IP provengono dalla sottorete 192.168.250/24, quindi la zona inversa è denominata 250.168.192.in-addr.arpa. Ricordati di aggiungere anche i record NS alla zona inversa.

In quella zona inversa, crea record PTR in questo modo:

Il test è facile con il comando host, in questo modo:

[email protected]:~# host 192.168.250.71 192.168.250.73
Using domain server:
Name: 192.168.250.73
Address: 192.168.250.73#53
Aliases: 

71.250.168.192.in-addr.arpa domain name pointer web.xyzzy.tld.

È possibile impostare più record PTR per lo stesso numero IP. Quindi la query inversa li restituisce tutti. Potresti non volerlo, quindi non farlo a meno che tu non sappia cosa stai facendo.

Se configuri un server di posta, ad esempio mail.xyzzy.tld, devi impostare il record PTR poiché la maggior parte dei server di posta verifica che il numero IP di invio si risolva nel nome host utilizzato dal server di posta.

1.5 Strumenti

Se sospetti che il servizio nomi non sia stato avviato, verifica con

systemctl status bind9.service

Se mostra "Attivo:attivo (in esecuzione)...", il servizio nomi funziona. Non preoccuparti della possibile "risoluzione di rete irraggiungibile... AAAA " -lines, se le ottieni significa che non hai una rete IPv6 disponibile.

Se il servizio nomi è in esecuzione ma il test con il comando host non restituisce risposte, è possibile che il file di zona sia difettoso. Usa named-checkzone se bind non accetta la zona. Il file di zona difettoso è (su Debian GNU/Linux) nel file /etc/bind/pri.err, ovvero .err aggiunto alla fine del nome del file. Controlla in questo modo:

[email protected]:~# named-checkzone  250.168.192.in-addr.arpa /etc/bind/pri.250.168.192.in-addr.arpa.err
zone 250.168.192.in-addr.arpa/IN: has no NS records
zone 250.168.192.in-addr.arpa/IN: not loaded due to errors.
[email protected]:~#

Ripara gli errori, in ISPConfig se lo hai configurato utilizzando il pannello ISPConfig.

Potrebbero esserci errori nel file di registro, interrompere e avviare il servizio dei nomi e vedere cosa c'è nel file /var/log/syslog. Ad esempio con

grep named /var/log/syslog

Esistono siti Web che controllano l'impostazione del servizio nomi, puoi utilizzare i motori di ricerca su Internet per trovarli. Conosco zonecheck.org, mxtoolbox.com, zonemaster.net.

1.6 Richiedere assistenza

Se si chiede aiuto sul forum, nascondere il nome di dominio rende difficile aiutare. Se riveli qual è il dominio, è facile controllare la configurazione e dare consigli se qualcosa non va. Se non puoi rivelare pubblicamente il nome di dominio e utilizzare questo Tutorial e la documentazione di Interwebs non aiuta, trova qualcuno di cui ti puoi fidare con il tuo nome di dominio e chi conosce il servizio di nomi, quindi chiedi aiuto a quella persona con il tuo dominio.

1.7 Registrazione di un dominio

Quando il tuo servizio nomi funziona correttamente per la tua zona, puoi registrarlo, oppure se era già registrato in precedenza ora puoi aggiungere i server dei nomi alla registrazione e il dominio è disponibile da Internet, dopo 4 – 48 ore mentre le informazioni sul servizio nomi viaggia per il mondo.

Se registri xyzzy.tld e ha il server dei nomi ns1.xyzzy.tld, fornisci i numeri IP per i server dei nomi anziché i nomi host. Se fornisci solo il nome host ns1.xyzzy.tld, come si trova il server dei nomi? L'unico posto in cui è disponibile il numero IP è su ns1.xyzzy.tld ma come accedervi senza conoscere il numero IP? Un altro modo per risolvere questo dilemma è usare i record di colla (vedi in precedenza), quindi puoi usare i nomi invece dei numeri IP per i tuoi server dei nomi.

Quando registri un altro dominio plugh.tld, puoi assegnare i name server come nomi host ns1.xyzzy.tld e ns2.xyzzy.tld poiché il dominio xyzzy.tld è già ben registrato e i nameserver sono noti.


Linux
  1. Configurazione dei reindirizzamenti delle porte in Linux con ncat

  2. Configurazione dell'inoltro del dominio con ISPConfig 3.1.xx

  3. Server dei nomi dello spazio rack

  4. Trasferisci il tuo hosting DNS su Rackspace

  5. Come scrivere il tuo modulo del kernel Linux con un semplice esempio

Configura il tuo risolutore DNS su Debian 10 Buster con BIND9

Come eseguire il proprio server dei nomi con ISPConfig e providerdomain.de (Schlund)

Come eseguire i propri server DNS (primari e secondari) con ISPConfig 3 (Debian Squeeze)

Server Freenas NAS fai-da-te - Costruisci il tuo NAS con Freenas

Che cos'è il DNS e come funziona il DNS? (Nozioni fondamentali sul server dei nomi di dominio)

Come mappare l'IP statico sul tuo dominio (con l'esempio di GoDaddy)