Linux tjenestedrift obligatorisk laboppgave 1

DNS

En fungerende navnetjener er en av byggeklossene i infrastrukturen for et IT system. Du skal i denne laboppgaven installere din egen navnetjener på din VMware Linux. Denne navnetjeneren skal benyttes av deg videre i dette semesteret, det er defor ikke mulig å hoppe over denne oppgaven da senere laboppgaver vil være avhengig av en velfungerende DNS tjener. En navnetjener må ha en fast IP adresse, vi benytter derfor nettverket 192.168.200.0/24 konsekvent, se forøvrig oppgaven om forberedleser til DNS lab for hvordan sette opp fast IP adresse.

Installasjon av bind

Den mest benyttede utgaven av navnetjeneren DNS heter bind, denne kommer fra http://www.isc.org/. Programvaren heter bind, mens prosessen som opprettes på systemet heter named

Valg av installasjons type

Du kan selv velge om du vil foreta en binær eller kildekode basert installasjon. Etterhver bør du beherske begge typer. Læreboken Linux som informasjonstjener omhandler DNS i kapittel 8. Installasjon av bind er omtalt i kapittel 8.5.5. Vi installerer ved hjelp av apt.

Pakkebasert installasjon anbefales da en får mye ferdig her. Alle kommandoer kjøres som superbruker, benytt kommando sudo bash for å få et shell med root tilgang før du starter opp.

Kjør kommandoen apt-get update
Installer bind9 ved hjelp av apt-get install bind9.

Etter installasjonen vil DNS tjeneren være startet automatisk.
  1. Konfigurasjonsfiler ligger i mappen /etc/bind
  2. Det følger med en liste over root navnetjenerene på Internett i filen db.root, men du kan laste ned en ny versjon fra FTP.RS.INTERNIC.NET. De som har lyst kan gjøre dette, dette er frivillig. Framgangsmåten er beskrevet i kapittel 8.5.5.1 nederst på s 251 i læreboka. Last ned filen domains/named.root vhja. FTP, legges i mappen /etc/bind/db.root. Ta kopi av den gamle først i samme mappen og gi den navnet db.root.org. Sonen "." (root) definert i named.conf skal peke til denne filen. Verifiser den nedlastede filen ved å laste ned .md5 filen med samme navn og benytt kommando

    md5sum --check named.root.md5


    for verifikasjon.
  3. Oppstart av named daemon. Som regel er denne startet etter en installasjon på Ubuntu, benytt kommando sudo rndc status i et terminalvindu for å sjekke om denne er oppe og kjører. Startes evt med kommando /etc/init.d/bind9 start
DNS skal nå være installert og forhåpentligvi operativ. Benytt dig  for å teste ut om din DNS tjener virker.

Test av DNS tjener med dig

> dig @127.0.0.1 www.hin.no

Dersom alt er satt opp riktig skal navnetjeneren returnere åfullt operativ, prøv gjerne andre navn for å verifisere dette. 127.0.0.1 er IP adressen for ditt eget system (den interne adressen) så kommandoen angir at du skal benytte din egen navnetjener og ikke den som systemet ditt er satt opp med.

Oppsett av forward og reverse lookup zones for egen sone

Du skal i det følgende konfigurere bind til å være ansvarlig for en primær navnesone som du selv bestemmer navnet på, men den skal tilhøre navnetreet dt.hin.no. Navnetjeneren skal også settes opp til å være sekundær ålabben. bind er beskrevet i kapittel 8.5.5 s 250 i læreboka. Velg et ikke støtende navn for din sone, erstatt.xxx videre i oppgaven med dette navnet. I katalogen http://kark.hin.no/sysadm/lab1/bind/ ligger maler som kan benyttes ved oppsett av konfig filene.

  1. Redigering av filen /etc/bind/named.conf.local. Her skal du legge inn en definisjon for din egen sone xxx.dt.hin.no, angi at DNS tjeneren din er er master for denne og angi hvilken fil sonen er definert i.
  2. Etter enhver endring av konfigurasjonsfilene (.conf) må named lese disse på nytt benytt rndc reconfig
  3. Oppsett av egen sone under dt.hin.no. Eksempler på de ulike sonefilene finner du i læreboka kap. 8.5.5.4. Du kan ta en kopi av filen db.empty, gi den navn db.xxx.dt.hin.no. Dermed har du et utgangspunkt som du kan jobbe videre med. Filen lagres i mappen /etc/bind.
  4. Etter endringer i en sonefil må denne lastes inn på nytt. rndc kan benyttes til dette med kommando rndc reload. Se forøvrig læreboka kap. 8.5.5.2.
  5. Soner for reversoppslag mot 127.0.0.1 og localhost, er ferdig oppsatt etter en pakkeinstallasjon. Verifiser disse sonene ved å se på sonefilene for disse som refereres i filen named.conf, se læreboken kap. 8.5.5.6.

Test av DNS tjener med dig

> dig @127.0.0.1 xxx.dt.hin.no ns

Dersom alt er satt opp riktig skal navnetjeneren returnere informasjon om sonen xxx.dt.hin.no og vise bl.a. hvilke system som er navnetjener for sonen.

Revers oppslag mot DNS

En DNS tjener må også kunne ta imot og håndtere revers oppslag, det vil si forespørsler der det angis et IP nummer og DNS tjeneren skal returnere det korresponderende DNS navnet tilbake. For at en DNS tjener skal kunne gjøre dette må den ha konfigurert en Reverse Lookup Zone, og IP adressene må være registrert her. Dette er såkalte PTR poster i DNS.

  1. Sett opp revers mapping sone for det IP nettverket som systemet ditt tilhører. Systemet ditt tilhører 192.168.200.0/24 nettverket, du må da sette opp sonen 200.168.192.in-addr.arpa.
  2. Definer navnetjener for sonen og legg inn ditt eget system med adresse som en PTR post.
  3. Etter endringer i en sonefil må denne lastes inn på nytt. rndc kan benyttes til dette med kommando rndc reload. Se forøvrig læreboka kap. 8.5.5.2.

Foreta et reversoppslag mot din DNS tjener etter navnet for ditt system og systemet du registrerte manuelt tidligere ved å angi IP adressen. DNS tjeneren skal returnere deg DNS navnet. Opsjonen -x til dig gjør at den forventer en IP adresse og ikke et navn som parameter.

Benytt kommando:
> dig @127.0.0.1 -x "IP-nummer"

Registrering av ny host og alias

Dette gjøres ved å editere den korrespondernde sonefilen, legg til et navn til IP mapping ( en A-post) og et alias (en CNAME post) , oppdater serienummeret i sonefilen. Foreta også en registrering i reversoppslagsfilen for sonen systemet ditt tilhører og registrer en PTR post, dette er en IP-nummer til navn mapping. Husk oppdatering av serienummeret og rndc reload for å lese inn sonefilene på nytt. Test av nytt aliasnavn: Foreta en spørring etter det aliasnavnet du opprettet over ved hjelp av dig. Husk å benytte ditt eget system som navnetjener,

Endring av standard DNS tjener

Vi benytter fast statisk IP adresse, DHCP skal dermed ikke benyttes, det er denne som normalt setter opp hvem som skal være navnetjener. I Linux er navnetjener registrert i filen /etc/resolv.conf, denne kan ha opptil 3 navnetjenere definert i prioritert rekkefølge. Legg inn din egen navnetjener på toppen i listen i filen med adresse 127.0.0.1.

DNS tjener oppstart

Dersom du har installert med apt vil bind9 starte automatsik ved boot av systemet. Dette kan verifiseres ved å kjøre kommandoen sysv-rc-config, den vil vise at bind9 er aktivert på kjørenivå

Registrering av navnetjenere for andre soner

For at din navnetjener skal kunne finne andre systemer definert i andre soner må disse sonene og den tilhørende navnetjeneren defineres i DNS. Alle soner under dt.hin.no må defineres på navnetjeneren for dt.hin.no, se læreboka kapittel 8.6. Lærermaskinen kjører navnetjener for dt.hin.no, sonene under denne må defineres her.  Definer din egen sone xxx.dt.hin.no med navn på navnetjener (NS post) og IP adresse for navnetjener. Prøv deretter å spørre navnetjeneren for dt.hin.no om et system i din egen sone, benytt dig for å demonstrere dette for faglærer.

Beskriv i besvarelsen hva som skal til for å definere sonene.

Etter registreringen på navnetjener for dt.hin.no bør du sette opp din egen navnetjener til å være slavenavnetjener for denne sonen, dermed vil din navnetjener få tilgang til alle postene i dt.hin.no.

NB ! DNS tjeneren din skal benyttes gjennom hele semesteret, det er derfor meget viktig at denne er korrekt konfigurert og fungerer som forventet.

Besvarelse

En labrapport i PDF format om skal inneholde en kort beskrivelse av DNS prinsipp og deretter en beskrivelse av installasjonen med eventuelle problemer/utfordringer. Labrapporten skal inneholde et utdrag av de filene du har opprette/endret med de mest relevante endringene og tilleggene.

Husk å levere innen tidsfristen !