I bind9 slår du på loggningsfunktionen med ett enkelt kommando:
rndc querylog

Vill du sedan stänga av loggningen gör du det genom att köra exakt samma kommando.

När loggningen är påslagen kommer alla dns-förfrågningar att lagras i en eller flera filer i filsystemet. Exakt vilken fil kan vara beroende av Linuxdistribution, men i Fedora 19 skickas loggen dels till /var/log/messages och /var/named/data/named.run.

Loggen kan du öppna med vilken textredigerare som helst, men bäst effekt får du genom att se händelser i realtid. För att få upp en rullande lista över alla nya händelser slår du in kommandot
tail -f /var/log/messages

Du kan alltså ha loggning aktiverat i ett fönster, och sedan testa att det fungerar genom att starta upp en webbläsare, besöka en ny sida som du vet inte är cachad och se att dns-förfrågan dyker upp i ditt terminalfönster.

4-flaggan löste problemet

När vi slog på loggningen fick vi först upp felmeddelanden med ”network unreachable resolving...” i loggen och fick inte fram de korrekta ip-adresserna. Problemet avlöstes genom att tala om för dns-tjänsten att vi bara är intresserade av att logga traditionell ipv4.

En omstart av tjänsten med flaggan -4 löste problemet. I vårt fall redigerade vi filen /etc/systemd/multi-user.target.wants/named.service, satte raden
ExecStart=/usr/sbin/named -u named -4 $OPTIONS
och startade om med systemctl restart named

Så ser det ut i Fedora. Använder du en annan Linuxdistribution som Ubuntu eller Debian kan det variera, men principen är densamma.
Nu har du sett hur du får loggningen att fungera, men det fattas information som exempelvis tidsstämplar, och du vill ju skapa en separat fil för loggning utan att blanda ihop informationen.

Lägg till tidsstämplar

Loggningsfunktionen kan du skräddarsy via inställningsfilerna för named. Vi går in i /etc/named.conf och letar upp sektionen för loggning. Där skapar vi en kanal för dns-förfrågningar som vi pekar till filen data/named.queries. Hur mycket som ska loggas låter vi stå kvar på standardinställningarna och dessutom lägger vi till en tidsstämpel med raden
print-time yes;

Efter en omstart av tjänsten har vi nu en ny fil i vår data-katalog som loggar alla dns-förfrågningar tillsammans med tidsstämplar. Dessa är viktiga om du till exempel accepterar ett visst surfbeteende utanför ordinarie arbetstid, men vill att det är hårt slit som gäller mellan åtta och fem.

Tidsstämplarna kan också vara behändiga för att upptäcka om du har underlig trafik, till exempel nattetid, något som kan vara ett tecken på att du blivit utsatt för ett intrång.
Att lagra dns-förfrågningarna blir också ett sätt att hålla koll på vilka klientdatorer som är uppkopplade på ditt nätverk.

Många klienter – långa loggar

Om du har många klienter som alla jobbar hårt mot nätverket kommer dina loggar att växa, så det blir viktigt att du vet hur du plockar ut den informationen du är intresserad av. Här får du nytta av dina kunskaper i skript och reguljära uttryck.

Fakta

Det mellanstora företaget har ingen övervakning av nätverket i dag. Ingen har någon koll på exakt hur många klienter som finns i nätverket, och misstankar finns om att vissa anställda lägger ner alldeles för mycket tid på surf som inte är arbetsrelaterat. Det ligger på it-avdelningens bord att plocka fram fakta, och givetvis får det inte kosta något.