Om loggfilers politik

I morgon håller jag ett föredrag om datalagringsdirektivet i Göteborg i serien ”God Jul Storebror”, anordnat av Piratpartiet, Vänsterpartiet, Folkpartiet och Studieförbundet Vuxenskolan.

Lagar och direktiv är ju dock en sak för sig. Den stora frågan är ju hur de kommer att användas i praktiken och vilka konsekvenser de får för vår nätvaro. Med andra ord, hur förändras vad som lagras och hur man söker i loggar, och vem får tillgång till loggar?

Som empiriska filosofer måste vi därmed börja i lite grundläggande loggkunskap. (Speciellt tack till mina datorkunniga IRC-vänner som förklarade för mig).

Vi demonstrerar med loggar jag har tillgång till, eftersom jag är en sorts ISP som tillhandahåller tjänster till användare. Nu är ju mina loggar inte lika kraftfulla som hos till exempel Telia eller en bank, men man kommer ganska långt med de jag har.

Jag förmedlar ju bland annat skalåtkomst för IRC från en liten iMac G3 som står på mitt skrivbord. Loggar i Ubuntu Linux ligger i katalogen /var/log och ser ut så här:

Picture 8

Dessa filer ger mig massor av information om mina användare, information som jag var ovetande om att min dator loggade (jag är ju inte särskilt datorkunnig). Min tio år gamla maskintriumf klarar dock av ganska mycket på sina 600 megaherz. Ovan ser vi bland annat loggfiler för apache2 (webservern), mail, MySql-databasen, det lokala nätverket etc. Men den roligaste är auth.log som för detaljerad information om när användarna loggar in på min dator.

En typisk rad i loggen ser ut så här:

Dec 14 00:22:29 ubuntu sshd[32281]: Accepted password for chrisk from 192.168.1.1 port 51838 ssh2

Här ser jag att jag har loggat in den 14 december mitt i natten från mitt lokala nätverk (192.168.1.1). Information som kan vara mycket värdefull i exempelvis en rättegång, om mina andra användare begår ett brott vid en viss tidpunkt (eller varför inte jag själv). Här får FRA inte spana, men datalagringsdirektivet kan ge polisen tillträde kan tvinga mig att spara.

Att läsa loggar manuellt är dock begränsat av våra köttvärldshjärnors kapacitet att extrahera information ur en textfil. Men tack vare lite panspektrisk data-power kan vi börja leta efter lite rolig information. Genom följande kommando som nyttjar perl-script:

cat auth.log.0 | perl -lne’$f{$1}++if/Failed password for (S+)/}{foreach(sort{$f{$a}<=>$f{$b}}keys%f){print”$f{$_} $_”}’

… kan vi se hur många misslyckade inloggningsförsök vi har i senaste loggen. Detta visar förutom att några av mina användare lätt verkar slinta på tangenterna då och då att jag har haft 1720 invalida inloggningsförsök varav 881 stycken med användarnamnet ”root”, som är den ”super user” som kan ändra allt i ett Linuxsystem. Dock kör ju min server Ubuntu Linux där denna användare är avaktiverad per default.

Misstanken gror! Jag har haft intrångsförsök! Jag har inte som Anton Abele läst det i tidningen utan i mig egen logg!!! Loggarna ljuger ju aldrig (eller?) så grävandet går vidare (jag anonymiserar lite med xx). Från auth.log:

Dec 16 10:19:20 ubuntu sshd[11447]: Failed password for root from 202.69.xxx.xx port 55327 ssh2
Dec 16 10:19:25 ubuntu sshd[11457]: reverse mapping checking getaddrinfo for net-xxx-xx.jasatel.net.id failed – POSSIBLE BREAK-IN ATTEMPT!

För bara nån timma sedan försökte någon eller något att knäcka mitt (obefintliga) root-lösenord. Från Jakarta, Indonesien (enligt whois). Nu säger mina datorkunniga vänner att sådant ”händer hela tiden” och jag antar att det här rör sig om en kapad dator som utför någon form av ordlisteattack, eftersom inloggningsförsöken ibland både prövar olika användarnamn och ibland bara olika lösenord.

För att kartlägga mina användare kan jag enkelt bara söka efter dem i mina loggar som jag inte insåg att de existerade. Just nu har jag ingen skyldighet att spara dem, så jag kan likaväl radera dem. Dock finns det ju ett stort tekniskt värde i dem eftersom man kan spåra angrepp. Men, mina system behöver inte vara så säkra, jag är ju ISP for the lulz and for learning.

I datalagringsdirektivet, som jag kommer prata om på torsdag (kom gärna, det är gratis och trevligt), tvingas olika tjänsteleverantörer att spara olika typer av loggar i olika lång tid. Hur implementationen kommer se ut i Sverige vet vi inte riktigt än, men även om det är osannolikt så är det juridiskt tolkningsbart att jag skulle ha en laglig skyldighet att lagra loggarna. I fallet Ipred är detta helt avgörande just nu i striden mellan piratjägarna och internetoperatörerna.

Och då har vi inte räknat in att lagar som är tokiga inte behöver heller behöver lydas. ”Oups… den där filen råkade jag ta bort…”

Vi syns på torsdag. Då blir det mindre om min numera i bloggosfären omskrivna dator och mer om vad Datalagringsdirektiver betyder för oss internauter!

Pro-tip hört på IRC: För att enkelt inte spara loggar så ändrar man bara i /etc/syslog.conf. Istället för att spara loggarna i /var/log så ställer man in att de läggs i /dev/null så raderas de automagiskt.

7 reaktioner till “Om loggfilers politik”

  1. ”cat auth.log.0 | perl -lne’$f{$1}++if/Failed password for (S+)/}{foreach(sort{$f{$a}$f{$b}}keys%f){print”$f{$_} $_”}’”

    Inte så datakunnig ser jag.

  2. Pro-tip: `sudo -e /etc/logrotate.{conf,d/*}`
    Ändra alla ”weekly” och ”monthly” till ”daily” och ändra nummret efter ”rotate” till något lågt, tex 2-5

    D

Kommentera

E-postadressen publiceras inte. Obligatoriska fält är märkta *

Time limit is exhausted. Please reload CAPTCHA.