Centos/Redhat BIND normalmente viene eseguito come processo denominato di proprietà dell'utente denominato non privilegiato. A volte BIND viene installato anche utilizzando Funzionalità chroot di Linux non solo per l'esecuzione denominata come utente denominato, ma anche per limitare i file denominati possono vedere.
Una volta installato, named viene ingannato nel pensare che la directory /var/named/chroot sia effettivamente la directory root o /. Pertanto, i file con nome che si trovano normalmente nella directory /etc si trovano invece nella directory /var/named/chroot/etc, e quelli che ti aspetteresti di trovare in /var/named si trovano in realtà in /var/named/chroot/var /nome.
Il vantaggio della funzione chroot è che se un hacker entra nel tuo sistema tramite un exploit BIND, l'accesso dell'hacker al resto del tuo sistema è isolato dai file nella directory chroot e nient'altro. Questo tipo di sicurezza è anche noto come chroot jail.
Puoi installare l'RPM aggiuntivo di chroot usando questo comando.
Per installare abbiamo bisogno di configurare il repository Yum.
[root@SRV01 ~]# yum install bind bind-chroot
Plugin caricati:più velocemirror
Determinazione dei mirror più veloci
myrepo | 1,1 kB 00:00
primario.xml.gz | 878 kB 00:00
myrepo 2508/2508
Impostazione del processo di installazione
Analisi degli argomenti di installazione del pacchetto
Risoluzione delle dipendenze
Ci sono ancora transazioni non terminate. Potresti considerare di eseguire prima yum-complete-transaction per completarle.
–> Esecuzione del controllo delle transazioni
—> Pacchetto bind-chroot.i386 30:9.3.4-10.P1.el5 da aggiornare
—> Pacchetto bind.i386 30:9.3.4-10.P1.el5 da aggiornare
–> Risoluzione delle dipendenze completata
Dipendenze risolte
==============================================================
Dimensioni del repository della versione Arch del pacchetto
==============================================================
Installazione:
bind i386 30:9.3.4-10.P1.el5 myrepo 953 k
bind-chroot i386 30:9.3.4-10.P1.el5 myrepo 42 k
Riepilogo transazione
==============================================================
Installa 2 pacchetti
Aggiorna 0 pacchetti
Rimuovi 0 pacchetti
Dimensione totale del download:995 k
Va bene [s/n]:s
Download dei pacchetti:
(1/2):bind-chroot-9.3.4-10.P1.el5.i386.rpm | 42 kB 00:00
(2/2):bind-9.3.4-10.P1.el5.i386.rpm | 953 kB 00:00
———————————————————————————–
Totale 1,8 MB/s | 995 kB 00:00
Esecuzione di rpm_check_debug
Esecuzione del test delle transazioni
Test transazione completata
Test transazione riuscito
Transazione in corso
Installazione:vincolare [1/2]
Installazione:bind-chroot [2/2]
Installato:bind.i386 30:9.3.4-10.P1.el5 bind-chroot.i386 30:9.3.4-10.P1.el5
Completato!
Ora la radice DNS sarà solo /var/named/chroot. Quindi prima copia il file di configurazione denominato da /var/named/chroot/etc/
[root@SRV01 denominato]# cp /usr/share/doc/bind-9.3.4/sample/etc/* /var/named/chroot/etc/
Quindi copia il file della zona di esempio dalla directory /var/named/chroot/var/named.
[root@SRV01 denominato]# cp -a /usr/share/doc/bind-9.3.4/sample /var/named/* /var/named/chroot/var/named/
cp:sovrascrivere `/var/named/chroot/var/named/slaves/my.ddns.internal.zone.db'? si
cp:sovrascrivere `/var/named/chroot/var/named/slaves/my.slave.internal.zone.db'? si
Una volta terminata la copia di esempio, ora dobbiamo aggiungere il keygen dns al file di configurazione, ad esempio /var/named/chroot/etc/named.conf. per creare il dns keygen usa il seguente comando.
[root@SRV01 named]# dns-keygen
31LAA52EawiHZBOsTR1qeuMa36IU11i80zCgmTWOUL6DJ8vGcC
Inserisci sopra in /var/named/chtoot/etc/named.conf
[root@SRV01 named]# vi /etc/named.conf
chiave ddns_key
{
algoritmo hmac-md5;
segreto 31LAA52EawiHZBOsTR1qeuMa36IU11i80zCgmTWOUL6DJ8vGcC;
};
Modifica nuovamente /var/named/chroot/etc/named.conf, inserisci i dettagli della zona secondo i requisiti del tuo dominio. Il file seguente è una configurazione minima per eseguire il server DNS. puoi copiarlo e usarlo anche per il tuo ambiente.
[root@SRV01 denominato]# vi /var/named/chroot/etc/named.conf
opzioni
{
directory “/var/named”; // l'impostazione predefinita
file di dump “data/cache_dump.db”;
file di statistiche “data/named_stats.txt”;
memstatistics-file “data/named_mem_stats.txt”;
};
registrazione
{
canale default_debug {
file “data/named.run”;
gravità dinamica;
};
};
zone “geeksite.in” IN { —–> Nome della zona di punta
digitare master;
file “geeksite.in.zone”; —–> Nome del file in cui è stata salvata la zona
consentire aggiornamento { nessuno; };
};
zona “4.65.10.in-addr.arpa” IN { —–> Nome della Zona inversa
digitare master;
file “4.65.10.rev.zone”; —–> Nome del file in cui è stata salvata la zona
consentire aggiornamento { nessuno; };
};
chiave ddns_key
{
algoritmo hmac-md5;
segreto 31LAA52EawiHZBOsTR1qeuMa36IU11i80zCgmTWOUL6DJ8vGcC;
};
Successivamente è necessario disporre del file della zona di inoltro (geeksite.in.zone) nella directory /var/named/chroot/var/named/.
Copia /var/named/chroot/var/namded/localhost.zone come /var/named/chroot/var/named/geeksite.in.zone.
[root@SRV01 denominato]# cp /var/named/chroot/var/named/localhost.zone /var/named/chroot/var/named/geeksite.in.zone
Esistono alcune parole chiave speciali per i file di zona
record A-A
NS - Server dei nomi
MX -Mail per Exchange
CN - Nome canonico
Modificare opportunamente il file di zona. Assicurati che l'intero nome di dominio termini con punto(.).
[root@SRV01 named]# vi /var/named/chroot/var/named/geeksite.in.zone
$TTL 86400 @ IN SOA ns1.geeksite.in. [email protected]. (
42; seriale (d. adams)
3H; aggiorna
15 milioni; riprova
1W; scadenza
1D); minimo
IN NS ns1.geeksite.in.
IN A 10.65.4.55
www IN A 10.65.4.55
mail IN A 10.65.4.55
ns1 IN A 10.65.4.55
server IN A 10.65.4.55
geeksite.in. IN MX 10 mail.geeksite.in.
Successivamente è necessario disporre del file della zona inversa (4.65.10.rev.zone) nella directory /var/named/chroot/var/named/.
Copia /var/named/chroot/var/namded/named.local come /var/named/chroot/var/named/4.65.10.rev.zone
[root@SRV01 denominato]# cp /var/named/chroot/var/named/named.local /var/named/chroot/var/named/4.65.10.rev.zone
Modificalo in modo appropriato secondo la tua richiesta.
[root@SRV01 named]# vi /var/named/chroot/var/named/4.65.10.rev.zone
$TTL 86400 @ IN SOA ns1.geeksite.in. [email protected]. (
1997022700; Seriale
28800; Aggiorna
14400; Riprova
3600000; Scade
86400); Minimo
IN NS ns1.geeksite.in.
55 IN PTR geeksite.in.
55 IN PTR mail.geeksite.in.
55 IN PTR www.geeksite.in.
55 IN PTR server.geeksite.in.
55 IN PTR ns1.geeksite.in.
Riavvia il servizio utilizzando il seguente comando
[root@SRV01 denominato]# servizio denominato riavvio
Basta testare il server usando il comando per controllare la zona di inoltro.
[root@SRV01 named]# host geeksite.in
geeksite.in ha l'indirizzo 10.65.4.55
La posta di geeksite.in è gestita da 10 mail.geeksite.in
Questo è per la zona inversa.
[root@SRV01 denominato]# host 10.65.4.55
55.4.65.10.in.addr.arpa puntatore del nome di dominio geeksite.in.
Questi comandi sopra sono abbastanza buoni per controllare il DNS. Per saperne di più sui dettagli sulla risoluzione dei DNS possiamo usare Dig o Nslookup