Omgaan met logbestanden in Linux
Bijna in alle distributies worden de log bestanden opgeslagen in /var/log. Zo weet je al waar je altijd moet beginnen als je naar log bestanden zoekt. Maar nu komen de vragen van: wat wordt waar opgeslagen en hoe kan ik het analyseren? Ik wil met deze artikel de basis principes uitleggen van logbestanden in Linux. Deze artikel zal meer zijn voor systeembeheerders/auditors/Digitaal onderzoekers dan voor mensen die thuis zitten. Maar iedereen is welkom om dit te lezen.
Meest gebruikte manier om naar log bestanden te kijken is de optie -f met tail, Meeste log bestanden zijn beschermd en heb je daarom root privileges voor nodig. -f en tail zal de laatste deel van de log bestand zien, dus meest recente logs. Als je klaar bent kun je op “crl+c” drukken om weer terug te keren. Hieronder is een voorbeeld van een commando:
Sudo tail -f auth.log
Wat nog beter is, is de less optie met F.
Sudo less +F auth.log
Het doet bijna hetzelfde als de eerste commando maar wat deze extra doet is dat de volledige logbestand geladen wordt. Als je eenmaal op “ctrl+c” drukt krijg je de mogelijkheid om te scrollen met je pijltjes toetsen. Als je weer op F drukt krijg je weer real time loging te zien, dit betekent dat als er een log geschreven wordt direct te zien is voor je.
Standaard log bestanden:
- auth.log – authenticatie info
- boot.log – Boot informatie
- crond – geplande cron opdrachten
- deamon.log – deamon alerts zoals dhcpd, gnome-session en ntfs-3g
- dmesg – kernel specifieke logbestand
- errors.log – zoals je het al raad is het de error logbestand
- everything.log – alle overige logs
- httpd – apache toegang en error logbestand
- mail.log – Mail server logs
- messages.log – standaard systeem alerts
- mysqld.log – MySQL database log
- secure – beveiliging log
- syslog.log – Log voor het log systeem
- vsftpd.log – FTP log systeem voor vsftpd
- Xorg.0.log – X log
soms zal het ook wel voorkomen dat je dubbele bestanden ziet, meestal met .gz erachter. Dit zijn oude logbestanden die opgeslagen zijn, ze worden ook wel “rotated logs” genoemd. Dit wordt gedaan door `logrotate`. Bestanden worden in tussenpozen in een gz bestand gestopt. Je kunt instellingen hiervoor vinden in /etc/logrotate.conf om meer informatie te vinden over logrotate kun je `man logrotate` gebruiken.
Zoeken in logbestanden
Logbestanden in Linux worden opgeslagen als gewone tekst bestanden waardoor de gebruiker volledige controle over kan krijgen voor het interpeteren van informatie. Zoeken in logbestanden kun je daarom ook combineren met andere unix tools zoals grep.
Hieronder is een voorbeeld:
Sudo cat auth.log | grep groupadd
dit zal je logs laten met de keyword “groupadd”. Omdat grep ook om kan gaan met reguliere expressie kun je ze ook hier gebruiken. We gaan nu naar logs zoeken die op 15 mei voorgekomen zijn.
Sudo cat auth.log | grep -P `^May\s*3′
Reguliere expressies is op een heel ander niveau en je moet er mee omgaan om het te begrijpen. Je kunt ook een cheat-sheet gebruiken voor reguliere expressies.
Om het meeste uit je logbestanden te krijgen kun je gebruik maken van de volgende tools: grep, sed, awk, cat, tail en sort. Om nog betere zoek resultaten te krijgen is handig om wat reguliere expressies te kennen.
Logviewer
In Gnome zit een tooltje waar je logbestanden ook mee kunt bekijken. Het heet “systeemlogboekweergave” die is te vinden in Systeem>Beheer.
Het is niet het beste log viewer maar kan wel handig zijn om snel logbestanden te kijken. Je zult sneller zijn als je terminal gebruikt.


Leuke artikel? deel het!
deel het op Facebook Tweet Dit!