Hvordan revidere Linux-prosessen ved å bruke 'autrace' på CentOS/RHEL


Denne artikkelen er vår pågående serie om Linux-revisjon, i de tre siste artiklene våre har vi forklart hvordan du reviderer Linux-systemer (CentOS og RHEL), spør etter revisjonslogger ved hjelp av ausearch og genererer rapporter ved hjelp av aureport-verktøyet.

I denne artikkelen vil vi forklare hvordan du reviderer en gitt prosess ved å bruke autrace-verktøyet, der vi analyserer en prosess ved å spore systemanropene en prosess gjør.

Les også: Hvordan spore kjøring av kommandoer i Shell-skript med Shell-sporing

Hva er autrace?

autrace er et kommandolinjeverktøy som kjører et program til det avsluttes, akkurat som strace; den legger til revisjonsreglene for å spore en prosess og lagrer revisjonsinformasjonen i filen /var/www/audit/audit.log. For at det skal fungere (dvs. før du kjører det valgte programmet), må du først slette alle eksisterende revisjonsregler.

Syntaksen for bruk av autrace er vist nedenfor, og den aksepterer bare ett alternativ, -r som begrenser innsamlede syscaller til de som kreves for å vurdere ressursbruken til prosessen:

autrace -r program program-args

Oppmerksomhet: På man-siden for autrace er syntaksen som følger, som faktisk er en dokumentasjonsfeil. Fordi ved å bruke dette skjemaet, vil programmet du kjører anta at du bruker en av de interne alternativene, noe som resulterer i en feil eller utfører standardhandlingen som er aktivert av alternativet.

autrace program -r program-args

Hvis du har noen revisjonsregler, viser autrace følgende feil.

autrace /usr/bin/df

Slett først alle revisjonsreglene med følgende kommando.

auditctl -D

Fortsett deretter å kjøre autrace med målprogrammet ditt. I dette eksemplet sporer vi utførelsen av df-kommandoen, som viser filsystembruken.

autrace /usr/bin/df -h

Fra skjermbildet ovenfor kan du finne alle loggoppføringene som har med sporingen å gjøre, fra revisjonsloggfilen ved å bruke ausearch-verktøyet som følger.

ausearch -i -p 2678

Hvor alternativet:

  • -i – muliggjør tolkning av numeriske verdier til tekst.
  • -p – sender prosess-IDen som skal søkes.

For å generere en rapport om sporingsdetaljene kan du bygge en kommandolinje med ausearch og aureport som dette.

ausearch -p 2678 --raw | aureport -i -f

Hvor :

  • --raw – forteller ausearch å levere rå input til aureport.
  • -f – muliggjør rapportering om filer og af_unix-sockets.
  • -i – tillater tolkning av numeriske verdier til tekst.

Og ved å bruke kommandoen nedenfor, begrenser vi de innsamlede syscallene til de som trengs for å analysere ressursbruken til df-prosessen.

autrace -r /usr/bin/df -h

Forutsatt at du har registrert et program for den siste uken; noe som betyr at det er mye informasjon dumpet i revisjonsloggene. For å produsere en rapport bare for dagens poster, bruk -ts ausearch-flagget for å spesifisere startdatoen/tidspunktet for søk:

ausearch -ts today -p 2678 --raw | aureport -i -f

Det er det! På denne måten kan du spore og revidere spesifikke Linux-prosesser ved å bruke autrace-verktøyet, for mer informasjon, sjekk man-sider.

Du kan også lese disse relaterte, nyttige veiledningene:

  1. Sysdig – Et kraftig systemovervåkings- og feilsøkingsverktøy for Linux
  2. BCC – Dynamic Tracing Tools for Linux Performance Monitoring, Networking and More
  3. 30 Nyttige 'ps Command'-eksempler for Linux-prosessovervåking
  4. CPUTool – Begrens og kontroller CPU-bruk av enhver prosess i Linux
  5. Finn de mest kjørende prosessene etter høyeste minne- og CPU-bruk i Linux

Det er alt for nå! Du kan stille spørsmål eller dele tanker om denne artikkelen via kommentaren nedenfor. I den neste artikkelen vil vi beskrive hvordan du konfigurerer PAM (Pluggable Authentication Module) for revisjon av TTY-inndata for spesifiserte brukere CentOS/RHEL.