Zoeken op website

Hoe u PAM kunt configureren om de logboekregistratie van Shell-gebruikersactiviteiten te controleren


Dit is onze doorlopende serie over Linux Auditing. In dit vierde deel van dit artikel leggen we uit hoe je PAM configureert voor auditing van Linux TTY invoer (Logging Shell User Activity) voor specifieke gebruikers die de tool pam_tty_audit gebruiken.

Linux PAM (Pluggable Authentication Modules) is een zeer flexibele methode voor het implementeren van authenticatieservices in applicaties en verschillende systeemservices; het kwam voort uit de originele Unix PAM.

Het verdeelt de authenticatiefuncties in vier grote beheermodules, namelijk: accountmodules, authenticatiemodules, wachtwoordmodules en sessiemodules >. De gedetailleerde uitleg van deze beheergroepen valt buiten het bestek van deze tutorial.

De tool auditd gebruikt de PAM-module pam_tty_audit om de controle van TTY-invoer voor specifieke gebruikers in of uit te schakelen. Zodra een gebruiker is geconfigureerd om te worden gecontroleerd, werkt pam_tty_audit samen met de auditd om de acties van een gebruiker op de terminal bij te houden en, indien geconfigureerd, de exacte toetsaanslagen vast te leggen die de gebruiker maakt, slaat ze vervolgens op in het bestand /var/log/audit/audit.log.

PAM configureren voor het controleren van gebruikers-TTY-invoer in Linux

U kunt PAM configureren voor het controleren van de TTY-invoer van een bepaalde gebruiker in /etc/pam.d/system-auth en /etc /pam.d/password-auth bestanden, met behulp van de optie inschakelen. Aan de andere kant wordt het, zoals verwacht, uitgeschakeld voor de opgegeven gebruikers, in het onderstaande formaat:

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

Om het loggen van daadwerkelijke toetsaanslagen van gebruikers (inclusief spaties, backspaces, return-toetsen, de control-toets, delete-toets en andere) in te schakelen, voegt u de optie log_passwd toe samen met de andere opties, met behulp van dit formulier:

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

Maar voordat u configuraties uitvoert, moet u rekening houden met het volgende:

  • Zoals u in de bovenstaande syntaxis kunt zien, kunt u veel gebruikersnamen doorgeven aan de optie In- of uitschakelen.
  • Elke uit- of inschakeloptie overschrijft de vorige tegenovergestelde optie die overeenkomt met dezelfde gebruikersnaam.
  • Nadat TTY-audit is ingeschakeld, wordt deze overgenomen door alle processen die door de gedefinieerde gebruiker zijn gestart.
  • Als het opnemen van toetsaanslagen is geactiveerd, wordt de invoer niet onmiddellijk geregistreerd, aangezien TTY-audit eerst de toetsaanslagen in een buffer opslaat en de bufferinhoud met bepaalde tussenpozen, of nadat de gecontroleerde gebruiker uitlogt, schrijft in de /var/log /audit/audit.log bestand.

Laten we een voorbeeld hieronder bekijken, waarin we pam_tty_audit configureren om de acties van de gebruiker tecmint, inclusief toetsaanslagen, op alle terminals vast te leggen, terwijl we TTY-audit uitschakelen voor alle andere systeem gebruikers.

Open deze twee volgende configuratiebestanden.

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

Voeg de volgende regel toe aan de configuratiebestanden.
sessie vereist pam_tty_audit.so Disable=* enable=tecmint

En om alle toetsaanslagen vast te leggen die door de gebruiker tecmint worden ingevoerd, kunnen we de weergegeven optie log_passwd toevoegen.

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

Sla nu de bestanden op en sluit ze. Bekijk daarna het auditd logbestand voor alle geregistreerde TTY-invoer met behulp van het aureport-hulpprogramma.

aureport --tty

Uit de bovenstaande uitvoer kunt u zien dat de gebruiker tecmint wiens UID 1000 is, de vi/vim-editor heeft gebruikt en een map heeft gemaakt met de naam bin en ging erin, maakte de terminal leeg, enzovoort.

Om te zoeken naar TTY-invoerlogboeken die zijn vastgelegd met tijdstempels die gelijk zijn aan of na een specifieke tijd, gebruikt u -ts om de startdatum/-tijd op te geven en -te om het einde in te stellen datum Tijd.

Hier volgen enkele voorbeelden:

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

Je kunt meer informatie vinden op de pam_tty_audit manpagina.

man  pam_tty_audit

Bekijk de volgende nuttige artikelen.

  1. Configureer "Geen wachtwoord SSH-sleutelverificatie" met PuTTY op Linux-servers
  2. Op LDAP gebaseerde authenticatie instellen in RHEL/CentOS 7
  3. Hoe u tweefactorauthenticatie (Google Authenticator) instelt voor SSH-aanmeldingen
  4. SSH Wachtwoordloos inloggen met SSH Keygen in 5 eenvoudige stappen
  5. Hoe u de ‘sudo’-opdracht kunt uitvoeren zonder een wachtwoord in te voeren in Linux

In dit artikel hebben we beschreven hoe u PAM kunt configureren voor het controleren van invoer voor specifieke gebruikers op CentOS/RHEL. Als u vragen of aanvullende ideeën heeft om te delen, kunt u de onderstaande opmerking gebruiken.