Hvordan spørre etter revisjonslogger ved å bruke 'ausearch'-verktøyet på CentOS/RHEL
I vår siste artikkel har vi forklart hvordan du reviderer RHEL- eller CentOS-system ved å bruke auditd-verktøyet. Revisjonssystemet (auditd) er et omfattende loggingssystem og bruker ikke syslog for den saks skyld. Den kommer også med et verktøysett for å administrere kjernerevisjonssystemet samt søke og produsere rapporter fra informasjon i loggfilene.
I denne opplæringen vil vi forklare hvordan du bruker ausearch-verktøyet for å hente data fra auditd-loggfiler på en RHEL- og CentOS-basert Linux-distribusjon.
Les også: 4 gode loggovervåkings- og administrasjonsverktøy for åpen kildekode for Linux
Som vi nevnte tidligere, har revisjonssystemet en brukerplass revisjonsdaemon (auditd) som samler sikkerhetsrelatert informasjon basert på forhåndskonfigurerte regler, fra kjernen og genererer oppføringer i en loggfil.
Hva er ausearch?
ausearch er et enkelt kommandolinjeverktøy som brukes til å søke i revisjonsdaemon-loggfilene basert på hendelser og forskjellige søkekriterier som hendelsesidentifikator, nøkkelidentifikator, CPU-arkitektur, kommandonavn, vertsnavn, gruppenavn eller gruppe-ID , syscall, meldinger og mer. Den aksepterer også rådata fra stdin.
Som standard spør ausearch etter /var/log/audit/audit.log-filen, som du kan se akkurat som alle andre tekstfiler.
cat /var/log/audit/audit.log
OR
cat /var/log/audit/audit.log | less
Fra skjermbildet ovenfor kan du se massevis av data fra loggfilen som gjør det vanskelig å få spesifikk informasjon av interesse.
Derfor trenger du ausearch, som gjør det mulig å søke etter informasjon på en kraftigere og mer effektiv måte ved å bruke følgende syntaks.
ausearch [options]
Sjekk kjørende prosesslogger i revisjonsloggfil
-p
-flagget brukes til å sende en prosess-ID.
ausearch -p 2317
Sjekk mislykkede påloggingsforsøk i revisjonsloggfil
Her må du bruke -m
-alternativet for å identifisere spesifikke meldinger og -sv
for å definere suksessverdien.
ausearch -m USER_LOGIN -sv no
Finn brukeraktivitet i revisjonsloggfil
-ua brukes til å sende et brukernavn.
ausearch -ua tecmint
OR
ausearch -ua tecmint -i # enable interpreting of numeric entities into text.
For å spørre etter handlinger utført av en bestemt bruker fra en gitt tidsperiode, bruk -ts
for startdato/tid og -te
for å spesifisere sluttdato/tid som følger ( Vær oppmerksom på at du kan bruke ord som nå, nylig, i dag, i går, denne uken, uke siden, denne måneden, i år samt sjekkpunkt i stedet for faktiske tidsformater).
ausearch -ua tecmint -ts yesterday -te now -i
Flere eksempler på søk etter handlinger av en gitt bruker på systemet.
ausearch -ua 1000 -ts this-week -i
ausearch -ua tecmint -m USER_LOGIN -sv no -i
Finn endringer i brukerkontoer, grupper og roller i revisjonslogger
Hvis du vil gjennomgå alle systemendringer som har med brukerkontoer, grupper og roller å gjøre; spesifiser ulike kommaseparerte meldingstyper som i kommandoen nedenfor (ta vare på den kommaseparerte listen, la det ikke være mellomrom mellom et komma og neste element):
ausearch -m ADD_USER,DEL_USER,USER_CHAUTHTOK,ADD_GROUP,DEL_GROUP,CHGRP_ID,ROLE_ASSIGN,ROLE_REMOVE -i
Søk i revisjonsloggfil med nøkkelverdi
Vurder revisjonsregelen nedenfor som vil logge alle forsøk på å få tilgang til eller endre /etc/passwd brukerkontodatabasen.
auditctl -w /etc/passwd -p rwa -k passwd_changes
Prøv nå å åpne filen ovenfor for redigering og lukk den, som følger.
vi /etc/passwd
Bare fordi du vet at det er registrert en loggoppføring om dette, vil du muligens se de siste delene av loggfilen med halekommandoen som følger:
tail /var/log/audit/audit.log
Hva om flere andre hendelser nylig har blitt registrert, ville det være så vanskelig å finne den spesifikke informasjonen, men ved å bruke ausearch kan du sende -k
-flagget med nøkkelverdien du spesifiserte i revisjonsregelen for å se alle loggmeldinger angående hendelser som har å gjøre med tilgang til eller endring av /etc/passwd-fil.
Dette vil også vise konfigurasjonsendringene som definerer revisjonsreglene.
ausearch -k passwd_changes | less
For mer informasjon og bruksalternativer, les ausearch-man-siden:
man ausearch
For å vite mer om Linux-systemrevisjon og loggadministrasjon, les disse følgende relaterte artiklene.
- Petiti – Et verktøy for åpen kildekodelogganalyse for Linux SysAdmins
- Overvåk server logger inn sanntid med «Log.io»-verktøyet på RHEL/CentOS 7/6
- Hvordan sette opp og administrere loggrotasjon ved å bruke Logrotate i Linux
- lnav – Se og analyser Apache-logger fra en Linux-terminal
I denne opplæringen beskrev vi hvordan du bruker ausearch for å hente data fra en revisjonsloggfil på RHEL og CentOS. Hvis du har spørsmål eller tanker å dele, bruk kommentarfeltet for å nå oss.
I vår neste artikkel vil vi forklare hvordan du lager rapporter fra revisjonsloggfiler ved å bruke aureport i RHEL/CentOS/Fedora.