Sådan revideres Linux-processer ved hjælp af 'autrace' på CentOS/RHEL


Denne artikel er vores igangværende serie om forespørgsel om auditd-logfiler ved hjælp af ausearch og generere rapporter ved hjælp af aureport-værktøjet.

I denne artikel forklarer vi, hvordan vi reviderer en given proces ved hjælp af autrace-hjælpeprogrammet, hvor vi analyserer en proces ved at spore systemopkald, som en proces gør.

autrace er et kommandolinjeprogram, der kører et program, indtil det afsluttes, ligesom strace; det tilføjer revisionsreglerne for at spore en proces og gemmer revisionsoplysningerne i /var/www/audit/audit.log-filen. For at det skal fungere (dvs. inden du kører det valgte program), skal du først slette alle eksisterende revisionsregler.

Syntaksen til brug af autrace er vist nedenfor, og den accepterer kun en mulighed, -r , som begrænser indsamlede syscalls til dem, der kræves til vurdering af ressourceforbrug af processen:

# autrace -r program program-args

OBS: På autrace man-siden er syntaksen som følger, hvilket faktisk er en dokumentationsfejl. Fordi du bruger denne formular, antager det program, du kører, at du bruger en af dets interne indstillinger, hvilket resulterer i en fejl eller udfører standardhandlingen aktiveret af indstillingen.

# autrace program -r program-args

Hvis der findes revisionsregler, viser autrace følgende fejl.

# autrace /usr/bin/df

Slet først alle auditd-reglerne med følgende kommando.

# auditctl -D

Fortsæt derefter med at køre autrace med dit målprogram. I dette eksempel sporer vi udførelsen af df-kommandoen, som viser filsystembrug.

# autrace /usr/bin/df -h

Fra skærmbilledet ovenfor kan du finde alle logposter, der har at gøre med sporingen, fra auditlogfilen ved hjælp af ausearch-værktøjet som følger.

# ausearch -i -p 2678

Hvor muligheden:

  • -i - muliggør fortolkning af numeriske værdier i tekst.
  • -p - videregiver det proces-id, der skal søges.

For at generere en rapport om sporingsoplysningerne kan du oprette en kommandolinje med ausearch og aureport som denne.

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

Hvor:

  • --raw - fortæller ausearch at levere rå input til aureport.
  • -f - muliggør rapportering om filer og af_unix-sockets.
  • -i - tillader fortolkning af numeriske værdier i tekst.

Og ved hjælp af kommandoen nedenfor begrænser vi de indsamlede syscalls til dem, der er nødvendige for at analysere ressourceforbrug af df-processen.

# autrace -r /usr/bin/df -h

Forudsat at du har kørt et program i den sidste uge; hvilket betyder, at der er dumpet en masse information i revisionslogfilerne. For at producere en rapport til kun dagens optegnelser skal du bruge -ts ausearch-flag til at specificere startdato/tid for søgning:

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

Det er det! på denne måde kan du spore og revidere specifik Linux-proces ved hjælp af autrace-værktøjet for at få flere oplysninger, se mandsider.

Du kan også læse disse relaterede, nyttige vejledninger ud:

  1. Sysdig - Et kraftfuldt systemovervågnings- og fejlfindingsværktøj til Linux
  2. BCC - Dynamiske sporingsværktøjer til Linux Performance Monitoring, Networking og mere
  3. 30 Nyttige eksempler på 'ps Command' til Linux-procesovervågning
  4. CPUTool - Begræns og styr CPU-udnyttelse af enhver proces i Linux
  5. Find mest kørende processer efter højeste hukommelse og CPU-brug i Linux

Det er alt for nu! Du kan stille spørgsmål eller dele tanker om denne artikel via kommentaren nedenunder. I den næste artikel vil vi beskrive, hvordan man konfigurerer PAM (Pluggable Authentication Module) til auditering af TTY-input til specificerede brugere CentOS/RHEL.