Mainos / Advertisement:

Ero sivun ”Bind9” versioiden välillä

Kohteesta Taisto
Siirry navigaatioon Siirry hakuun
 
(6 välissä olevaa versiota samalta käyttäjältä ei näytetä)
Rivi 1: Rivi 1:
 +
<languages/>
 +
<translate>
 +
<!--T:1-->
 
Bind9 on yleisin Linuxissa käytetty nimipalvelinohjelmisto. Sen asennus ja konfigurointi on helppoa ja siitä voi tehdä varanimipalvelimen Windows palvelimen rinnalle.
 
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.
 
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 ==
+
== Asennus == <!--T:2-->
  
 +
<!--T:3-->
 
Asennetaan bind9. Tämä paketti löytyy sekä verkosta, että Debianin asennuslevyltä DVD1.
 
Asennetaan bind9. Tämä paketti löytyy sekä verkosta, että Debianin asennuslevyltä DVD1.
  
  [[aptitude]] install bind9
+
  <!--T:4-->
 +
[[aptitude]] install bind9
  
== Konfigurointi ==
+
== Konfigurointi == <!--T:5-->
  
=== Verkko ===
+
=== Verkko === <!--T:6-->
  
 +
<!--T:7-->
 
Määritä nimipalvelimeen staattiset IP-osoitteet. DNS palvelimen kanssa tulee ongelmia jos IP-osoite on dynaaminen.
 
Määritä nimipalvelimeen staattiset IP-osoitteet. DNS palvelimen kanssa tulee ongelmia jos IP-osoite on dynaaminen.
  
   nano /etc/network/interfaces
+
   <!--T:8-->
 +
nano /etc/network/interfaces
  
   auto eth0
+
   <!--T:9-->
 +
auto eth0
 
       address 192.168.0.1
 
       address 192.168.0.1
 
       netmask 255.255.255.0
 
       netmask 255.255.255.0
 
       gateway 192.168.1.254
 
       gateway 192.168.1.254
  
 +
<!--T:10-->
 
Tallenna tiedosto ja käynnistä verkkopalvelu uudelleen. Varmista, että verkkoyhteys toimii.
 
Tallenna tiedosto ja käynnistä verkkopalvelu uudelleen. Varmista, että verkkoyhteys toimii.
  
=== DNS Asiakas (Client) ===
+
=== DNS Asiakas (Client) === <!--T:11-->
  
 +
<!--T:12-->
 
Palvelimen tulee käyttää itseään nimipalvelimena joten /etc/resolv.conf tiedostoon pitää asettaa linuxin oma ip-osoite.
 
Palvelimen tulee käyttää itseään nimipalvelimena joten /etc/resolv.conf tiedostoon pitää asettaa linuxin oma ip-osoite.
  
  nano /etc/resolv.conf
+
  <!--T:13-->
 +
nano /etc/resolv.conf
  
  nameserver 192.168.0.1
+
  <!--T:14-->
 +
nameserver 192.168.0.1
 
  search testaus.local
 
  search testaus.local
  
  nameserver 192.168.0.1 = Nimipalvelimen IP-osoite, eli tässä tapauksessa oma IP.
+
  <!--T:15-->
 +
nameserver 192.168.0.1 = Nimipalvelimen IP-osoite, eli tässä tapauksessa oma IP.
  
  search testaus.local = Vain jos on domain
+
  <!--T:16-->
 +
search testaus.local = Vain jos on domain
  
=== Ensisijainen DNS palvelin ===
+
=== Ensisijainen DNS palvelin === <!--T:17-->
  
 +
<!--T:18-->
 
Seuraavaksi tehdään tiedosto ''/etc/bind/named.conf.local'', jonne kopioidaan ''/etc/bind/named.conf.default-zones'' tiedostosta mallit kahdesta ensimmäisestä zonesta.
 
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
+
  <!--T:19-->
 +
nano /etc/bind/named.conf.local
  
 +
<!--T:20-->
 
Lisää tiedostoon:
 
Lisää tiedostoon:
  
  zone "testaus.local" {
+
  <!--T:21-->
 +
zone "testaus.local" {
 
             type master;                            ''<small>#Tähän slave, jos haluat tehdä linuxista toissijaisen dnspalvelimen</small>''
 
             type master;                            ''<small>#Tähän slave, jos haluat tehdä linuxista toissijaisen dnspalvelimen</small>''
 
             file "/etc/bind/db.testaus.local";      ''<small>#Slavea käyttäessä: file "db.testaus.local"; </small>''
 
             file "/etc/bind/db.testaus.local";      ''<small>#Slavea käyttäessä: file "db.testaus.local"; </small>''
Rivi 54: Rivi 72:
 
  };
 
  };
  
 +
<!--T:22-->
 
* zone "testaus.local" = verkkosi toimialue.
 
* 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
 
* zone "0.168.192.in-addr.arpa" Käänteinen nimipalvelu, eli verkko-osoite väärinpäin kirjoitettuna = 192.168.0.X -> 0.168.192
Rivi 59: Rivi 78:
 
* file = tiedostopolku, missä on nimipalvelun tietokannat.
 
* file = tiedostopolku, missä on nimipalvelun tietokannat.
  
 +
<!--T:23-->
 
Db. tiedostojen nimillä ei ole kummempaa merkitystä, mutta tiedostojen pitää olla sen nimiset kuin ne on tiedostossa ''named.conf.local''  .
 
Db. tiedostojen nimillä ei ole kummempaa merkitystä, mutta tiedostojen pitää olla sen nimiset kuin ne on tiedostossa ''named.conf.local''  .
  
 +
<!--T:24-->
 
Slavea käyttäessä muista muuttaa tiedostopolkua. Näin tallennetaan cacheen, /var/cache/bind/ hakemistoon.
 
Slavea käyttäessä muista muuttaa tiedostopolkua. Näin tallennetaan cacheen, /var/cache/bind/ hakemistoon.
  
==== Forward DNS ====
+
==== Forward DNS ==== <!--T:25-->
  
 +
<!--T:26-->
 
Nyt editoidaan ''/etc/bind/db.local'' tiedostoa ja tallennetaan se uudelleen ''db.testaus.local'' nimellä.
 
Nyt editoidaan ''/etc/bind/db.local'' tiedostoa ja tallennetaan se uudelleen ''db.testaus.local'' nimellä.
  
  $TTL    3600
+
  <!--T:27-->
 +
$TTL    3600
 
  @      IN      SOA    testaus.local. root.testaus.local. (
 
  @      IN      SOA    testaus.local. root.testaus.local. (
 
                               2        ; Serial
 
                               2        ; Serial
Rivi 81: Rivi 104:
  
  
 +
<!--T:28-->
 
* NS records -> Nimipalvelimet (Varmista että on piste, esim. ns.domain.local. , sillä tämä tekee siitä FQDN:än (Fully Qualified Domain Name))
 
* 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
 
* A records -> IPv4-osoite, johon nimi osoitetaan
Rivi 88: Rivi 112:
  
  
 +
<!--T:29-->
 
VINKKI! Voit määrittää useita CNAMEja:
 
VINKKI! Voit määrittää useita CNAMEja:
  
  @      IN      NS      LNXSRV.testaus.local.
+
  <!--T:30-->
 +
@      IN      NS      LNXSRV.testaus.local.
 
  LNXSRV  IN      A      192.168.0.1
 
  LNXSRV  IN      A      192.168.0.1
 
  WINSRV  IN      A      192.168.0.2
 
  WINSRV  IN      A      192.168.0.2
Rivi 97: Rivi 123:
 
  admin  IN      CNAME  WINSRV
 
  admin  IN      CNAME  WINSRV
  
==== Reverse DNS ====
+
==== Reverse DNS ==== <!--T:31-->
  
 +
<!--T:32-->
 
Seuraavaksi vuorossa on ''/etc/bind/db.127'' tiedosto ja se tulee tallentaa nimellä ''db.0.168.192.in-addr.arpa.''
 
Seuraavaksi vuorossa on ''/etc/bind/db.127'' tiedosto ja se tulee tallentaa nimellä ''db.0.168.192.in-addr.arpa.''
  
  $TTL    3600
+
  <!--T:33-->
 +
$TTL    3600
 
  @      IN      SOA    testaus.local. root.testaus.local. (
 
  @      IN      SOA    testaus.local. root.testaus.local. (
 
                               2        ; Serial
 
                               2        ; Serial
Rivi 116: Rivi 144:
  
  
 +
<!--T:34-->
 
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.
 
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.
  
 +
<!--T:35-->
 
Käynnistetään lopuksi bind9 uudelleen
 
Käynnistetään lopuksi bind9 uudelleen
  
  service bind9 restart
+
  <!--T:36-->
 +
service bind9 restart
  
 +
<!--T:37-->
 
TAI
 
TAI
  
  /etc/init.d/bind9 restart
+
  <!--T:38-->
 +
/etc/init.d/bind9 restart
  
=== Toissijainen DNS palvelin ===
+
=== Toissijainen DNS palvelin === <!--T:39-->
  
 +
<!--T:40-->
 
Avaa konfigurointitiedosto:
 
Avaa konfigurointitiedosto:
  
  nano /etc/bind/named.conf.local
+
  <!--T:41-->
 +
nano /etc/bind/named.conf.local
  
  
  zone "testaus.local" {
+
  <!--T:42-->
 +
zone "testaus.local" {
 
         type slave;
 
         type slave;
 
         file "db.testaus.local";
 
         file "db.testaus.local";
Rivi 144: Rivi 180:
 
  };
 
  };
  
 +
<!--T:43-->
 
* Type = Slave (toissijainen)
 
* Type = Slave (toissijainen)
 
* File = Tiedosto, johon tallennetaan DNS tietueet
 
* File = Tiedosto, johon tallennetaan DNS tietueet
 
* Masters = Ensisijainen DNS palvelin, josta haetaan DNS tietueet
 
* Masters = Ensisijainen DNS palvelin, josta haetaan DNS tietueet
  
 +
<!--T:44-->
 
Varmista että ensisijainen nimipalvelimesi sallii tietojen lähetyksen toissijaiselle nimipalvelimelle.
 
Varmista että ensisijainen nimipalvelimesi sallii tietojen lähetyksen toissijaiselle nimipalvelimelle.
  
 +
<!--T:45-->
 
Konfigurointiohje kuinka konfiguroida Windows DNS palvelin niin, että se lähettää tiedot toissijaiselle nimipalvelimelle:
 
Konfigurointiohje kuinka konfiguroida Windows DNS palvelin niin, että se lähettää tiedot toissijaiselle nimipalvelimelle:
  
 +
<!--T:46-->
 
[[DNS_Server#Bind_Secondaries | Windows ensisijaisena DNS palvelimena]]
 
[[DNS_Server#Bind_Secondaries | Windows ensisijaisena DNS palvelimena]]
  
=== Ongelmanratkaisua ===
+
=== 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 === <!--T:47-->
 +
 +
<!--T:48-->
 
Ajamalla Debianin terminaalissa seuraava komento, joka tarkistaa konfigurointitiedostot:
 
Ajamalla Debianin terminaalissa seuraava komento, joka tarkistaa konfigurointitiedostot:
  
   named-checkconf -z
+
   <!--T:49-->
 +
named-checkconf -z
  
 +
<!--T:50-->
 
Jos tulostaa tyhjää niin kaikki on OK.
 
Jos tulostaa tyhjää niin kaikki on OK.
  
 +
<!--T:51-->
 
Seuraava komento testaa zonet.  
 
Seuraava komento testaa zonet.  
  
   named-checkzone -z
+
   <!--T:52-->
 +
named-checkzone -z
  
 +
<!--T:53-->
 
Muita komentoja:
 
Muita komentoja:
  
  
  
  dig domain.com
+
  <!--T:54-->
 +
dig domain.com
  
  dig 8.8.8.8
+
  <!--T:55-->
 +
dig 8.8.8.8
  
 +
<!--T:56-->
 
Asiakaskoneella voit testata DNS palvelun toimivuutta
 
Asiakaskoneella voit testata DNS palvelun toimivuutta
  
  nslookup
+
  <!--T:57-->
 +
nslookup
  
 +
<!--T:58-->
 
Esimerkiksi Forward DNS:
 
Esimerkiksi Forward DNS:
  
  nslookup www.google.com
+
  <!--T:59-->
 +
nslookup www.google.com
  
 +
<!--T:60-->
 
Esimerkiksi Reverse DNS:
 
Esimerkiksi Reverse DNS:
  
  nslookup 8.8.8.8
+
  <!--T:61-->
 +
nslookup 8.8.8.8
  
== DDNS - Dynaaminen DNS päivitys ==
+
== DDNS - Dynaaminen DNS päivitys == <!--T:62-->
  
 +
<!--T:63-->
 
Dynaaminen DNS päivitys mahdollistaa IP-osoitteiden automaattisen päivityksen nimipalveluun.
 
Dynaaminen DNS päivitys mahdollistaa IP-osoitteiden automaattisen päivityksen nimipalveluun.
  
 +
<!--T:64-->
 
https://wiki.debian.org/DDNS
 
https://wiki.debian.org/DDNS
  
  
== Lähteet ==
+
== Lähteet == <!--T:65-->
  
 +
<!--T:66-->
 
https://wiki.debian.org/Bind9
 
https://wiki.debian.org/Bind9
 +
 +
</translate>
 +
 +
[[Category:Linux]]
 +
[[Category:DNS Server]]

Nykyinen versio 8. toukokuuta 2015 kello 13.53

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: