Mainos / Advertisement:

Bind9

Kohteesta Taisto
Versio hetkellä 8. toukokuuta 2015 kello 13.53 – tehnyt Minh (keskustelu | muokkaukset) (→‎Forwarders)
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun
Muut kielet:
English • ‎suomi

Bind9 on yleisin Linuxissa käytetty nimipalvelinohjelmisto. Sen asennus ja konfigurointi on helppoa ja siitä voi tehdä varanimipalvelimen Windows palvelimen rinnalle. Esimerkissämme käytämme verkkoa 192.168.0.0/24 ja Linux palvelimen nimi on LNXSRV ja IP on verkon ensimmäinen osoite.

Asennus

Asennetaan bind9. Tämä paketti löytyy sekä verkosta, että Debianin asennuslevyltä DVD1.

aptitude install bind9

Konfigurointi

Verkko

Määritä nimipalvelimeen staattiset IP-osoitteet. DNS palvelimen kanssa tulee ongelmia jos IP-osoite on dynaaminen.

 nano /etc/network/interfaces
 auto eth0
     address 192.168.0.1
     netmask 255.255.255.0
     gateway 192.168.1.254

Tallenna tiedosto ja käynnistä verkkopalvelu uudelleen. Varmista, että verkkoyhteys toimii.

DNS Asiakas (Client)

Palvelimen tulee käyttää itseään nimipalvelimena joten /etc/resolv.conf tiedostoon pitää asettaa linuxin oma ip-osoite.

nano /etc/resolv.conf
nameserver 192.168.0.1
search testaus.local
nameserver 192.168.0.1 = Nimipalvelimen IP-osoite, eli tässä tapauksessa oma IP.
search testaus.local = Vain jos on domain

Ensisijainen DNS palvelin

Seuraavaksi tehdään tiedosto /etc/bind/named.conf.local, jonne kopioidaan /etc/bind/named.conf.default-zones tiedostosta mallit kahdesta ensimmäisestä zonesta.

nano /etc/bind/named.conf.local

Lisää tiedostoon:

zone "testaus.local" {
            type master;                            #Tähän slave, jos haluat tehdä linuxista toissijaisen dnspalvelimen
            file "/etc/bind/db.testaus.local";      #Slavea käyttäessä: file "db.testaus.local"; 
       };
zone "0.168.192.in-addr.arpa" {
       type master;                                 #Tähän slave, jos haluat tehdä linuxista toissijaisen dnspalvelimen
       notify no;
       file "/etc/bind/db.0.168.192.in-addr.arpa"; #Slavea käyttäessä: file "db.0.168.192.in-addr.arpa"; 
};
  • zone "testaus.local" = verkkosi toimialue.
  • zone "0.168.192.in-addr.arpa" Käänteinen nimipalvelu, eli verkko-osoite väärinpäin kirjoitettuna = 192.168.0.X -> 0.168.192
  • type master = DNS-palvelimen tyyppi, ensisijainen (master) tai toissijainen (slave).
  • file = tiedostopolku, missä on nimipalvelun tietokannat.

Db. tiedostojen nimillä ei ole kummempaa merkitystä, mutta tiedostojen pitää olla sen nimiset kuin ne on tiedostossa named.conf.local .

Slavea käyttäessä muista muuttaa tiedostopolkua. Näin tallennetaan cacheen, /var/cache/bind/ hakemistoon.

Forward DNS

Nyt editoidaan /etc/bind/db.local tiedostoa ja tallennetaan se uudelleen db.testaus.local nimellä.

$TTL    3600
@       IN      SOA     testaus.local. root.testaus.local. (
                             2         ; Serial
                        604800         ; Refresh
                         86400         ; Retry
                       2419200         ; Expire
                        604800 )       ; Negative Cache TTL
;
@       IN      NS      LNXSRV.testaus.local.
@       IN      A       192.168.0.1
LNXSRV  IN      A       192.168.0.1
www     IN      CNAME   LNXSRV                                                  


  • NS records -> Nimipalvelimet (Varmista että on piste, esim. ns.domain.local. , sillä tämä tekee siitä FQDN:än (Fully Qualified Domain Name))
  • A records -> IPv4-osoite, johon nimi osoitetaan
  • AAAA records -> IPv6-osoite, johon nimi osoitetaan
  • CNAME -> Alias nimi joka osoitetaan A tai AAAA records.


VINKKI! Voit määrittää useita CNAMEja:

@       IN      NS      LNXSRV.testaus.local.
LNXSRV  IN      A       192.168.0.1
WINSRV  IN      A       192.168.0.2
www     IN      CNAME   LNXSRV
mail    IN      CNAME   LNXSRV
admin   IN      CNAME   WINSRV

Reverse DNS

Seuraavaksi vuorossa on /etc/bind/db.127 tiedosto ja se tulee tallentaa nimellä db.0.168.192.in-addr.arpa.

$TTL    3600
@       IN      SOA     testaus.local. root.testaus.local. (
                             2         ; Serial
                        604800         ; Refresh
                         86400         ; Retry
                       2419200         ; Expire
                        604800 )       ; Negative Cache TTL
;
             
@       IN      NS      LNXSRV. testaus.local.                                
1       IN      PTR     testaus.local.                              #
1       IN      PTR     LNXSRV.testaus.local.


Reverse DNS ei laiteta koko IP-osoitetta. Verkostamme (192.168.0.0/24) vain viimeinen numero IP-osoitteesta merkitään bind9 konfiguraatioon, esimerkiksi palvelimemme (LNXSRV) IP-osoite on 192.168.0.1 joten merkitsemme vain numeron 1.

Käynnistetään lopuksi bind9 uudelleen

service bind9 restart

TAI

/etc/init.d/bind9 restart

Toissijainen DNS palvelin

Avaa konfigurointitiedosto:

nano /etc/bind/named.conf.local


zone "testaus.local" {
       type slave;
       file "db.testaus.local";
       masters {192.168.0.250;};
 };
zone "0.168.192.in-addr.arpa" {
      type slave;                                
      file "db.0.168.192.in-addr.arpa";
      masters {192.168.0.250;};
};
  • Type = Slave (toissijainen)
  • File = Tiedosto, johon tallennetaan DNS tietueet
  • Masters = Ensisijainen DNS palvelin, josta haetaan DNS tietueet

Varmista että ensisijainen nimipalvelimesi sallii tietojen lähetyksen toissijaiselle nimipalvelimelle.

Konfigurointiohje kuinka konfiguroida Windows DNS palvelin niin, että se lähettää tiedot toissijaiselle nimipalvelimelle:

Windows ensisijaisena DNS palvelimena

Forwarders

Voit määrittää DNS palvelimelle forwarders palvelimen IP-osoitteen konffeihin. Kun paikallisesta palvelimesta ei löydy vastausta dns kyselyihin, se lähtetetään eteenpäin toiselle nimipalvelimelle, joka määritetty forwarders palvelimena. Jos ei ole määritetty, käytetään root palvelimia, jotka on ennalta määritetty.

 nano /etc/bind/named.conf.options

Määritä forwarders dns palvelimen IP-osoite.

 forwarders {
   0.0.0.0;
 };

Allow-query

Allow-query määrittää miten bind9 vastaa kyselyihin. Oletuksena bind9 ei forwardoi DNS kyseitä, jotka ovat tulleet toisesta aliverkosta.

Suosittelemme määrittämään näin:

 allow-query {
   any;
 };

Ongelmanratkaisua

Ajamalla Debianin terminaalissa seuraava komento, joka tarkistaa konfigurointitiedostot:

 named-checkconf -z

Jos tulostaa tyhjää niin kaikki on OK.

Seuraava komento testaa zonet.

 named-checkzone -z

Muita komentoja:


dig domain.com
dig 8.8.8.8

Asiakaskoneella voit testata DNS palvelun toimivuutta

nslookup

Esimerkiksi Forward DNS:

nslookup www.google.com

Esimerkiksi Reverse DNS:

nslookup 8.8.8.8

DDNS - Dynaaminen DNS päivitys

Dynaaminen DNS päivitys mahdollistaa IP-osoitteiden automaattisen päivityksen nimipalveluun.

https://wiki.debian.org/DDNS


Lähteet

https://wiki.debian.org/Bind9

Mainos / Advertisement: