Zoeken op website

Gebruik Pam_Tally2 om mislukte inlogpogingen van SSH te vergrendelen en ontgrendelen


De pam_tally2 module wordt gebruikt om gebruikersaccounts te vergrendelen na een bepaald aantal mislukte ssh-inlogpogingen op het systeem. Deze module houdt het aantal toegangspogingen en te veel mislukte pogingen bij.

De pam_tally2 module bestaat uit twee delen, één is pam_tally2.so en een ander is pam_tally2. Het is gebaseerd op de PAM module en kan worden gebruikt om het tegenbestand te onderzoeken en te manipuleren. Het kan het aantal inlogpogingen van gebruikers weergeven, aantallen op individuele basis instellen en alle gebruikersaantallen ontgrendelen.

De module pam_faillock vervangt de modules pam_tally en pam_tally2 die zijn verouderd in RHEL 7 en RHEL 8. Het biedt meer flexibiliteit en opties dan de twee modules.

Standaard is de pam_tally2 module al geïnstalleerd op de meeste Linux-distributies en wordt deze beheerd door het PAM pakket zelf. In dit artikel wordt gedemonstreerd hoe u SSH-accounts kunt vergrendelen en ontgrendelen nadat u een bepaald aantal mislukte inlogpogingen heeft bereikt.

Hoe gebruikersaccounts te vergrendelen en ontgrendelen

Gebruik het configuratiebestand ‘/etc/pam.d/password-auth’ om de toegang tot inlogpogingen te configureren. Open dit bestand en voeg de volgende AUTH configuratieregel toe aan het begin van de sectie ‘auth’.

auth        required      pam_tally2.so  file=/var/log/tallylog deny=3 even_deny_root unlock_time=1200

Voeg vervolgens de volgende regel toe aan het gedeelte ‘account’.

account     required      pam_tally2.so
Parameters
  1. file=/var/log/tallylog – Het standaard log-bestand wordt gebruikt om het aantal aanmeldingen bij te houden.
  2. deny=3 – Weiger toegang na 3 pogingen en vergrendel de gebruiker.
  3. even_deny_root – Het beleid is ook van toepassing op root-gebruikers.
  4. unlock_time=1200 – Account wordt vergrendeld tot 20 minuten. (verwijder deze parameters als u permanent wilt vergrendelen totdat u handmatig wilt ontgrendelen.)

Als u klaar bent met de bovenstaande configuratie, probeer dan 3 mislukte inlogpogingen op de server met een ‘gebruikersnaam‘. Nadat u meer dan 3 pogingen heeft gedaan, krijgt u het volgende bericht.

[root@tecmint ~]# ssh [email 
[email 's password:
Permission denied, please try again.
[email 's password:
Permission denied, please try again.
[email 's password:
Account locked due to 4 failed logins
Account locked due to 5 failed logins
Last login: Mon Apr 22 21:21:06 2013 from 172.16.16.52

Verifieer of controleer nu de teller die de gebruiker probeert met de volgende opdracht.

[root@tecmint ~]# pam_tally2 --user=tecmint
Login           Failures  Latest    failure     From
tecmint              5    04/22/13  21:22:37    172.16.16.52

Hoe u het gebruikersaccount kunt resetten of ontgrendelen om de toegang weer mogelijk te maken.

[root@tecmint pam.d]# pam_tally2 --user=tecmint --reset
Login           Failures  Latest    failure     From
tecmint             5     04/22/13  17:10:42    172.16.16.52

Controleer of de inlogpoging is gereset of ontgrendeld

[root@tecmint pam.d]# pam_tally2 --user=tecmint
Login           Failures   Latest   failure     From
tecmint            0

De PAM module maakt deel uit van alle Linux-distributies en de meegeleverde configuratie zou op alle Linux-distributies moeten werken. Voer ‘man pam_tally2‘ uit vanaf de opdrachtregel om er meer over te weten.

Lees ook:

  1. 5 tips om de SSH-server te beveiligen en te beschermen
  2. Blokkeer SSH Brute Force-aanvallen met DenyHosts