Ricerca nel sito web

Come configurare PAM per controllare la registrazione dell'attività dell'utente della shell


Questa è la nostra serie in corso sull'auditing di Linux, in questa quarta parte di questo articolo spiegheremo come configurare PAM per l'auditing dell'input Linux TTY (registrazione dell'attività dell'utente della shell) per utenti specifici utilizzando lo strumento pam_tty_audit.

Linux PAM (Pluggable Authentication Modules) è un metodo altamente flessibile per implementare servizi di autenticazione in applicazioni e vari servizi di sistema; è emerso dall'originale Unix PAM.

Suddivide le funzioni di autenticazione in quattro principali moduli di gestione, vale a dire: moduli account, moduli di autenticazione, moduli password e moduli di sessione . La spiegazione dettagliata di questi gruppi di gestione va oltre lo scopo di questo tutorial.

Lo strumento auditd utilizza il modulo PAM pam_tty_audit per abilitare o disabilitare il controllo dell'input TTY per utenti specifici. Una volta che un utente è configurato per essere controllato, pam_tty_audit funziona insieme a auditd per tenere traccia delle azioni dell'utente sul terminale e, se configurato, acquisire le esatte sequenze di tasti eseguite dall'utente, quindi li registra nel file /var/log/audit/audit.log.

Configurazione di PAM per il controllo dell'input TTY dell'utente in Linux

Puoi configurare PAM per controllare l'input TTY di un particolare utente in /etc/pam.d/system-auth e /etc /pam.d/password-auth, utilizzando l'opzione di abilitazione. D'altra parte, come previsto, la disabilitazione la disattiva per gli utenti specificati, nel formato seguente:

session required pam_tty_audit.so disable=username,username2...  enable=username,username2..

Per attivare la registrazione delle digitazioni effettive dell'utente (inclusi spazi, backspace, tasti Invio, tasto Control, tasto Elimina e altri), aggiungi l'opzione log_passwd insieme alle altre opzioni, utilizzando questo modulo:

session required pam_tty_audit.so disable=username,username2...  enable=username log_passwd

Ma prima di eseguire qualsiasi configurazione, tieni presente che:

  • Come visto nella sintassi sopra, puoi passare molti nomi utente all'opzione di abilitazione o disabilitazione.
  • Qualsiasi opzione di disabilitazione o abilitazione sovrascrive la precedente opzione opposta che corrisponde allo stesso nome utente.
  • Dopo aver abilitato il controllo TTY, viene ereditato da tutti i processi avviati dall'utente definito.
  • Se la registrazione dei tasti premuti è attivata, l'input non viene registrato immediatamente, poiché il controllo TTY prima memorizza i tasti premuti in un buffer e scrive il contenuto del buffer a determinati intervalli, o dopo che l'utente controllato si è disconnesso, nel /var/log /audit/audit.log.

Diamo un'occhiata all'esempio seguente, in cui configureremo pam_tty_audit per registrare le azioni dell'utente tecmint comprese le sequenze di tasti, su tutti i terminali, mentre disabilitiamo il controllo TTY per tutti gli altri utenti del sistema.

Apri questi due seguenti file di configurazione.

vi /etc/pam.d/system-auth
vi /etc/pam.d/password-auth

Aggiungi la seguente riga ai file di configurazione.
sessione richiesta pam_tty_audit.so Disable=* Enable=tecmint

E per acquisire tutte le sequenze di tasti immesse dall'utente tecmint, possiamo aggiungere l'opzione log_passwd mostrata.

session required pam_tty_audit.so disable=*  enable=tecmint log_passwd

Ora salva e chiudi i file. Successivamente, visualizza il file di registro auditd per qualsiasi input TTY registrato, utilizzando l'utilità aureport.

aureport --tty

Dall'output sopra, puoi vedere che l'utente tecmint il cui UID è 1000 ha utilizzato l'editor vi/vim, ha creato una directory chiamata bin e mi sono spostato al suo interno, ho ripulito il terminale e così via.

Per cercare i registri di input TTY registrati con timestamp uguali o successivi a un orario specifico, utilizzare -ts per specificare la data/ora di inizio e -te per impostare la fine appuntamento.

Di seguito sono riportati alcuni esempi:

aureport --tty -ts 09/25/2017 00:00:00 -te 09/26/2017 23:00:00
aureport --tty -ts this-week

Puoi trovare ulteriori informazioni nella pagina man pam_tty_audit.

man  pam_tty_audit

Dai un'occhiata ai seguenti articoli utili.

  1. Configura "Autenticazione chiavi SSH senza password" con PuTTY sui server Linux
  2. Configurazione dell'autenticazione basata su LDAP in RHEL/CentOS 7
  3. Come impostare l'autenticazione a due fattori (Google Authenticator) per gli accessi SSH
  4. Accesso senza password SSH utilizzando SSH Keygen in 5 semplici passaggi
  5. Come eseguire il comando "sudo" senza inserire una password in Linux

In questo articolo abbiamo descritto come configurare PAM per il controllo dell'input per utenti specifici su CentOS/RHEL. Se hai domande o idee aggiuntive da condividere, usa il commento qui sotto.