Kaip patikrinti „Linux“ procesą naudojant „autrace“ CentOS/RHEL


Šis straipsnis yra mūsų nuolatinė serija apie Linux auditą. Trijuose paskutiniuose straipsniuose paaiškinome, kaip tikrinti Linux sistemas (CentOS ir RHEL), pateikti užklausą tikrinamuose žurnaluose naudojant ausearch ir generuoti ataskaitas naudojant aureport įrankį.

Šiame straipsnyje paaiškinsime, kaip atlikti tam tikro proceso auditą naudojant autrace priemonę, kurioje analizuosime procesą atsekdami proceso atliekamus sistemos iškvietimus.

Taip pat skaitykite: kaip atsekti komandų vykdymą „Shell“ scenarijuje naudojant „Shell Tracing“

Kas yra autrace?

autrace yra komandų eilutės priemonė, kuri paleidžia programą, kol ji išeina, kaip ir strace; ji prideda audito taisykles, kad atsektų procesą, ir išsaugo audito informaciją faile /var/www/audit/audit.log. Kad jis veiktų (ty prieš paleisdamas pasirinktą programą), pirmiausia turite ištrinti visas esamas audito taisykles.

Toliau parodyta autrace naudojimo sintaksė ir ji priima tik vieną parinktį -r, kuri apriboja renkamus syscalls iki tų, kurių reikia norint įvertinti proceso išteklių naudojimą:

autrace -r program program-args

Dėmesio: autrace vadovo puslapyje tokia sintaksė, kuri iš tikrųjų yra dokumentacijos klaida. Naudodama šią formą, jūsų paleista programa manys, kad naudojate vieną iš jos vidinių parinkčių, todėl įvyksta klaida arba atliekami numatytieji veiksmai, kuriuos įgalino parinktis.

autrace program -r program-args

Jei yra kokių nors audito taisyklių, autrace rodo šią klaidą.

autrace /usr/bin/df

Pirmiausia ištrinkite visas audituotas taisykles naudodami šią komandą.

auditctl -D

Tada paleiskite autrace su tiksline programa. Šiame pavyzdyje sekame df komandos, kuri parodo failų sistemos naudojimą, vykdymą.

autrace /usr/bin/df -h

Aukščiau esančioje ekrano kopijoje galite rasti visus žurnalo įrašus, susijusius su sekimu, iš audito žurnalo failo naudodami ausearch įrankį, kaip nurodyta toliau.

ausearch -i -p 2678

Kur variantas:

  • -i – leidžia interpretuoti skaitines reikšmes į tekstą.
  • -p – perduoda proceso ID, kurio reikia ieškoti.

Norėdami sugeneruoti ataskaitą apie sekimo informaciją, galite sukurti ausearch ir aureport komandų eilutę, kaip ši.

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

Kur:

  • --raw – nurodo ausearch pateikti neapdorotą įvestį į aureportą.
  • -f – leidžia teikti ataskaitas apie failus ir af_unix lizdus.
  • -i – leidžia interpretuoti skaitines reikšmes į tekstą.

Naudodami toliau pateiktą komandą apribojame surinktus syscalls iki tų, kurių reikia norint analizuoti df proceso išteklių naudojimą.

autrace -r /usr/bin/df -h

Darant prielaidą, kad paskutinę savaitę naudojote programą; tai reiškia, kad audito žurnaluose yra daug informacijos. Norėdami sukurti ataskaitą tik šiandienos įrašams, naudokite -ts ausearch vėliavėlę, kad nurodytumėte paieškos pradžios datą/laiką:

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

Viskas! Tokiu būdu galite atsekti ir tikrinti konkretų Linux procesą naudodami autrace įrankį. Daugiau informacijos rasite vadovo puslapiuose.

Taip pat galite perskaityti šiuos susijusius naudingus vadovus:

  1. Sysdig – galingas sistemos stebėjimo ir trikčių šalinimo įrankis, skirtas Linux
  2. BCC – dinaminiai sekimo įrankiai, skirti Linux našumo stebėjimui, tinklų kūrimui ir kt
  3. 30 naudingų „ps komandų“ pavyzdžių, skirtų „Linux“ procesų stebėjimui
  4. CPUTool – apriboti ir valdyti bet kurio proceso procesoriaus naudojimą sistemoje „Linux“.
  5. Raskite populiariausius veikiančius procesus pagal didžiausią atminties ir procesoriaus naudojimą sistemoje „Linux“.

Tai kol kas viskas! Galite užduoti bet kokius klausimus arba pasidalyti mintimis apie šį straipsnį naudodami toliau pateiktą komentarą. Kitame straipsnyje aprašysime, kaip sukonfigūruoti PAM (Pluggable Authentication Module) TTY įvesties auditui nurodytiems vartotojams CentOS/RHEL.