GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come monitorare il montaggio/smontaggio dei punti di montaggio utilizzando Auditd su CentOS/RHEL 6,7

Quindi la domanda qui è come determiniamo quale utente o processo di sistema sta smontando o montando un particolare punto di montaggio. Il montaggio e lo smontaggio di un punto di montaggio possono essere monitorati con l'aiuto di auditd. auditd è un componente dello spazio utente del sistema di auditing Linux. Ciò significa che gli utenti del sistema potranno eseguire auditd per configurare regole e avvisi per la funzionalità di controllo con il sistema Linux.

Una delle cose migliori di auditd è che è strettamente integrato con il kernel, quindi ci dà il potere di monitorare quasi tutto ciò che vogliamo, davvero. Per impostazione predefinita, non ci sono regole configurate. Dobbiamo scrivere le nostre regole in /etc/audit/rules.d/audit.rules file di configurazione che verrà letto e verranno applicate le azioni di controllo corrispondenti.

Installazione di auditd

1. I pacchetti auditd fanno parte dell'installazione predefinita dei sistemi RHEL/CentOS 7. Possiamo verificarlo con il seguente comando:

# rpm -qa | grep audit
audit-libs-2.8.1-3.el7.x86_64
audit-libs-python-2.8.1-3.el7.x86_64
audit-2.8.1-3.el7.x86_64

2. Se il pacchetto non fa parte del nostro sistema, possiamo procedere e installarlo:

# yum install audit

3. Assicurarsi che il demone di controllo sia in esecuzione. Useremo il seguente comando:

# systemctl status auditd
● auditd.service - Security Auditing Service
   Loaded: loaded (/usr/lib/systemd/system/auditd.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2018-06-17 06:56:06 UTC; 2min 37s ago
     Docs: man:auditd(8)
           https://github.com/linux-audit/audit-documentation
  Process: 657 ExecStartPost=/sbin/augenrules --load (code=exited, status=0/SUCCESS)
  Process: 652 ExecStart=/sbin/auditd (code=exited, status=0/SUCCESS)
 Main PID: 653 (auditd)
    Tasks: 2
   CGroup: /system.slice/auditd.service
           └─653 /sbin/auditd

In caso di CentOS/RHEL 6, puoi utilizzare il comando service per verificare lo stato del servizio auditd:

# service auditd status

Configurazione di regole auditd per monitorare il montaggio/smontaggio di filesystem

Configuriamo ora le regole di auditd richieste per monitorare il montaggio/smontaggio dei filesystem.

1. Aggiungi la seguente regola nel file /etc/audit/rules.d/audit.rules controlla le operazioni di montaggio e smontaggio. Notare che il nome di umount SYCALL è umount2.

# vi /etc/audit/rules.d/audit.rules
-a always,exit -F arch=b64 -S mount,umount2 -k mount_umount
Su CentOS/RHEL 6, il file di configurazione è /etc/audit/audit.rules invece di /etc/audit/rules.d/audit.rules.

Qui,
-a – Aggiunge la regola alla fine dell'elenco con l'azione.
sempre, esci – sono le azioni specificate con l'opzione -a.
-S – sta per SYSCALL (In uor case mount e umount2)
arch=b64 – specifica la regola per l'architettura a 64 bit.

2. Riavvia il servizio auditd con il comando “service”:

# service auditd restart
Stopping logging:                                          [  OK  ]
Redirecting start to /bin/systemctl start auditd.service

Verifica

1. Prendiamo il punto di montaggio /data come esempio e vediamo se otteniamo registri di controllo generati durante il montaggio/smontaggio di questo punto di montaggio.

# df -hP /data
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvdf       976M  2.6M  907M   1% /data

2. Smonta questo punto di montaggio manualmente.

# umount /data

Monitora /var/log/audit/audit.log, cerca messaggi simili a quelli seguenti. Il uid= e gid= sezioni così come il pid= parte dei log di controllo può aiutare a determinare il processo o l'utente che esegue il comando:

# tailf /var/log/audit/audit.log
...
type=SYSCALL msg=audit(1529223527.639:881): arch=c000003e syscall=166 success=yes exit=0 a0=55a5863d3880 a1=0 a2=1 a3=7ffe52c22320 items=1 ppid=2930 pid=3335 auid=1001 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts1 ses=2 comm="umount" exe="/usr/bin/umount" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key="mount_umount"
type=CWD msg=audit(1529223527.639:881):  cwd="/root"

Passare attraverso /var/log/audit/audit.log può essere opprimente se hai molte cose da controllare nel tuo server. Invece, puoi usare il comando “ausearch” con la chiave definita nella regola per filtrare i log solo relativi al montaggio e allo smontaggio. Ad esempio:

# ausearch -k mount_umount
----
time->Sun Jun 17 08:18:47 2018
type=PROCTITLE msg=audit(1529223527.639:881): proctitle=756D6F756E74002F64617461
type=PATH msg=audit(1529223527.639:881): item=0 name="/data" inode=2 dev=ca:50 mode=040755 ouid=0 ogid=0 rdev=00:00 obj=system_u:object_r:unlabeled_t:s0 objtype=NORMAL cap_fp=0000000000000000 cap_fi=0000000000000000 cap_fe=0 cap_fver=0
type=CWD msg=audit(1529223527.639:881):  cwd="/root"
type=SYSCALL msg=audit(1529223527.639:881): arch=c000003e syscall=166 success=yes exit=0 a0=55a5863d3880 a1=0 a2=1 a3=7ffe52c22320 items=1 ppid=2930 pid=3335 auid=1001 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts1 ses=2 comm="umount" exe="/usr/bin/umount" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key="mount_umount"
Come monitorare i file /etc/shadow e /etc/passwd per le modifiche con Auditd?
Come utilizzare auditd per monitorare l'eliminazione di un file in Linux
Capire il controllo del sistema con auditd


Cent OS
  1. Come riavviare il servizio di rete su CentOS 8 o RHEL 8

  2. CentOS / RHEL 7:come modificare l'id macchina

  3. CentOS / RHEL 7:come seguire l'ordine di montaggio in /etc/fstab

  4. CentOS / RHEL:come modificare l'UUID del filesystem

  5. Come disabilitare il servizio avahi-daemon in CentOS/RHEL

Come installare snmp su RHEL 8 / CentOS 8

Come monitorare Nginx utilizzando Netdata su CentOS 7

Come utilizzare tmpfs su RHEL/CentOS 7

Come installare il server VNC su CentOS 8 / RHEL 8

Come installare flameshot su RHEL/CentOS usando Snapcraft

CentOS / RHEL 7:come controllare lo stato di un servizio utilizzando systemd