Cum să interoghezi jurnalele de audit folosind instrumentul ausearch pe CentOS/RHEL


În ultimul nostru articol, am explicat cum să audităm sistemul RHEL sau CentOS folosind utilitarul auditd. Sistemul de audit (auditd) este un sistem cuprinzător de înregistrare în jurnal și nu utilizează syslog în acest sens. De asemenea, vine cu un set de instrumente pentru gestionarea sistemului de audit al nucleului, precum și pentru căutarea și producerea de rapoarte din informațiile din fișierele jurnal.

În acest tutorial, vom explica cum se utilizează instrumentul ausearch pentru a prelua date din fișierele jurnal auditd pe o distribuție Linux bazată pe RHEL și CentOS.

După cum am menționat mai devreme, sistemul de auditare are un daemon de audit spațiul utilizatorului (auditd) care adună informații legate de securitate pe baza unor reguli preconfigurate, din nucleu și generează intrări într-un fișier jurnal.

Ce este ausearch?

ausearch este un instrument simplu de linie de comandă folosit pentru a căuta fișierele jurnal ale demonului de audit pe baza evenimentelor și a diferitelor criterii de căutare, cum ar fi identificatorul de eveniment, identificatorul cheii, arhitectura CPU, numele comenzii, numele gazdei, numele grupului sau ID-ul grupului , syscall, mesaje și nu numai. De asemenea, acceptă date brute de la stdin.

În mod implicit, ausearch interogează fișierul /var/log/audit/audit.log, pe care îl puteți vizualiza la fel ca orice alt fișier text.

# cat /var/log/audit/audit.log
OR
# cat /var/log/audit/audit.log | less

Din captura de ecran de mai sus, puteți vedea o mulțime de date din fișierul jurnal, ceea ce face dificilă obținerea de informații specifice de interes.

Prin urmare, aveți nevoie de ausearch, care permite căutarea informațiilor într-un mod mai puternic și mai eficient folosind următoarea sintaxă.

# ausearch [options]

Verificați jurnalele de proces care rulează în fișierul jurnal de auditd

Indicatorul -p este folosit pentru a transmite un ID de proces.

# ausearch -p 2317

Verificați încercările de conectare eșuate în fișierul jurnal de audit

Aici, trebuie să utilizați opțiunea -m pentru a identifica mesaje specifice și -sv pentru a defini valoarea succesului.

# ausearch -m USER_LOGIN -sv no 

Găsiți Activitatea utilizatorului în fișierul jurnal Auditd

-ua este folosit pentru a transmite un nume de utilizator.

# ausearch -ua tecmint
OR
# ausearch -ua tecmint -i	# enable interpreting of numeric entities into text.

Pentru a interoga acțiunile efectuate de un anumit utilizator dintr-o anumită perioadă de timp, utilizați -ts pentru data/ora de începere și -te pentru a specifica data/ora de încheiere, după cum urmează ( rețineți că puteți folosi cuvinte precum acum, recent, astăzi, ieri, săptămâna aceasta, săptămâna în urmă, luna aceasta, anul acesta, precum și punct de control în loc de formate de timp reale).

# ausearch -ua tecmint -ts yesterday -te now -i 

Mai multe exemple despre căutarea acțiunilor de către un anumit utilizator în sistem.

# ausearch -ua 1000 -ts this-week -i
# ausearch -ua tecmint -m USER_LOGIN -sv no -i

Găsiți modificări ale conturilor de utilizator, grupurilor și rolurilor în jurnalele de audit

Dacă doriți să examinați toate modificările de sistem legate de conturile de utilizator, grupurile și rolurile; specificați diferite tipuri de mesaje separate prin virgulă, ca în comanda de mai jos (aveți grijă de lista separată prin virgulă, nu lăsați spațiu între o virgulă și următorul articol):

# ausearch -m ADD_USER,DEL_USER,USER_CHAUTHTOK,ADD_GROUP,DEL_GROUP,CHGRP_ID,ROLE_ASSIGN,ROLE_REMOVE  -i

Căutați fișierul jurnal de auditd folosind valoarea cheie

Luați în considerare regula de audit de mai jos, care va înregistra orice încercare de a accesa sau de a modifica baza de date a conturilor de utilizator /etc/passwd.

# auditctl -w /etc/passwd -p rwa -k passwd_changes

Acum, încercați să deschideți fișierul de mai sus pentru editare și să-l închideți, după cum urmează.

# vi /etc/passwd

Doar pentru că știți că a fost înregistrată o intrare de jurnal despre aceasta, este posibil să vizualizați ultimele părți ale fișierului jurnal cu comanda tail, după cum urmează:

# tail /var/log/audit/audit.log

Ce se întâmplă dacă mai multe alte evenimente au fost înregistrate recent, găsirea informațiilor specifice ar fi atât de dificilă, dar folosind ausearch, puteți trece marcajul -k cu valoarea cheie pe care ați specificat-o în regula de audit pentru a vizualiza toate mesajele de jurnal referitoare la evenimentele legate de accesarea sau modificarea fișierului /etc/passwd.

Aceasta va afișa, de asemenea, modificările de configurare efectuate-definirea regulilor de audit.

# ausearch -k passwd_changes | less

Pentru mai multe informații și opțiuni de utilizare, citiți pagina de manual ausearch:

# man ausearch

Pentru a afla mai multe despre auditarea sistemului Linux și gestionarea jurnalelor, citiți următoarele articole conexe.

  1. Petiti – Un instrument de analiză a jurnalelor cu sursă deschisă pentru administratorii de sistem Linux
  2. Monitorizați conectările serverului în timp real cu instrumentul „Log.io” pe RHEL/CentOS 7/6
  3. Cum să configurați și să gestionați rotația jurnalelor folosind Logrotate în Linux
  4. lnav – Urmăriți și analizați jurnalele Apache de la un terminal Linux

În acest tutorial, am descris cum să utilizați ausearch pentru a prelua date dintr-un fișier jurnal auditd pe RHEL și CentOS. Dacă aveți întrebări sau gânduri de împărtășit, folosiți secțiunea de comentarii pentru a ne contacta.

În următorul nostru articol, vom explica cum să creați rapoarte din fișierele jurnal de audit folosind aureport în RHEL/CentOS/Fedora.