GNU/Linux >> Znalost Linux >  >> Linux

Uzamknout uživatelský účet po n neúspěšných pokusech o přihlášení v Linuxu

Hardening Linux Server Hardening je jedním z důležitých úkolů systémových administrátorů, pokud jde o produkční servery. Doporučuje se povolit zásady přihlášení nebo pokusů o ssh, což znamená, že uživatelský účet by měl být automaticky uzamčen po n počtu neúspěšných (nebo nesprávných) pokusů o přihlášení nebo ssh.

V distribucích Linuxu, jako jsou CentOS, RHEL a Fedora, je toho dosaženo pomocí modulu pam „pam_faillock “ a pro distribuce podobné Debianu toho lze dosáhnout pomocí „pam_tally2 modul pam.

V tomto tutoriálu se naučíme, jak zamknout uživatelské účty po n neúspěšných pokusech o přihlášení v CentOS , RHEL, Fedora, Debian &Ubuntu

Pro CentOS / RHEL / Fedora

Přidejte následující řádky do dvou souborů /etc/pam.d/password-auth &/etc/pam.d/system-auth,

auth    povinné       pam_faillock.so preauth silent audit deny=3 unlock_time=600auth    [default=die]  pam_faillock.so authfail audit deny=3 unlock_time=600account  povinné      pam_faillock.so

Kde,

  • Audit –> povolí protokoly auditu pro pokus o přihlášení uživatele v zabezpečeném souboru protokolu
  • Odmítnout=3 –> po 3 neúspěšných pokusech o přihlášení uživatele uzamkne, toto číslo můžete změnit podle svých požadavků
  • unlock_time=600 –> to znamená, že uživatelský účet zůstane uzamčen po dobu 10 minut (600 sekund), pokud chcete, aby byl uživatelský účet uzamčen navždy, nastavte tento parametr na „unlock_time=never“

Poznámka :Chcete-li po n nesprávných přihlášeních uzamknout i účet root, přidejte  „even_deny_root ” v řádcích sekce auth, příklad je uveden níže

auth    vyžadováno       pam_faillock.so preauth tichý audit even_deny_root deny=3 unlock_time=600auth    [default=die]  pam_faillock.so authfail audit even_deny_root deny=3 unlock_time=600

Jak vidíme výše, máme dva řádky pro sekci auth a jeden řádek pro sekci účtu, pořadí je velmi důležité při přidávání těchto řádků do souborů. Níže je ukázán příklad, kde je třeba tyto řádky přidat,

[[email protected] ~]# vi /etc/pam.d/password-auth

[[email protected] ~]# vi /etc/pam.d/system-auth

Po provedení změn v obou souborech restartujte službu ssh pomocí níže uvedeného příkazu systemctl,

[[email protected] ~]# systemctl restart sshd

Pojďme otestovat, zda bude uživatelský účet po třech neúspěšných pokusech o přihlášení uzamčen nebo ne.

Předpokládejme, že máme místní účet s názvem „pkumar“, pokusíme se ssh náš systém Linux s tímto účtem s nesprávnými hesly,

$ ssh [e-mailem chráněno][e-mailem chráněno] heslo:[e-mailem chráněno] heslo:[e-mailem chráněno] heslo:Povolení odepřeno (publickey,gssapi-keyex,gssapi-with-mic,password) .

Nyní zobrazte zabezpečené protokoly pomocí příkazu tail,

[[email protected] ~]# tail /var/log/secure

Výše uvedené protokoly potvrzují, že účet byl uzamčen po třech nesprávných pokusech o přihlášení, ověřte také pomocí příkazu faillock,

[Pre> [[Ochránci e-mailu] ~]# Faillock-User Pkumarpkumar:Když typ zdroj valid2019-12-15 01:50:39 Rhost 192.168.29.157 V2019-12-15 01:50:43 Rhost 192.168.29.157 V2019- 12-15 01:50:47 RHOST 192.168.29.157             V[[e-mail chráněn] ~]#

Chcete-li tyto neúspěšné pokusy o přihlášení vyprázdnit nebo vymazat, proveďte následující příkaz faillock

[[email protected] ~]# faillock --user pkumar --reset[[email protected] ~]# faillock --user pkumarpkumar:When         Typ  Zdroj          Platný[[email protected] ~]#

Pojďme k distribuci podobné Debianu (Ubuntu, Linux Mint a Debian)

Pro Debian, Ubuntu a Linux Mint

Přidejte následující řádek do souboru „/etc/pam.d/common-auth“,

požadováno auth               pam_tally2.so onerr=fail deny=3 unlock_time=600 audit

pokud si přejete zamknout i root účet po třech nesprávných přihlášeních, přidejte následující řádek ,

požadováno auth               pam_tally2.so onerr=fail deny=3 unlock_time=600 audit even_deny_root root_unlock_time=600

Kde:

  • Onerr=fail –> V případě chyby selhání
  • deny=3 –> Po třech neúspěšných pokusech o přihlášení bude účet uzamčen
  • unlock_time=600 –> Znamená to, že účet zůstane uzamčen po dobu 10 minut nebo 600 sekund
  • audit –> Znamená auditovat protokoly v souboru audit.log
  • even_deny_root –> Uzamknout účet root po třech nesprávných přihlášeních
  • root_unlock_time=600 –> Rootový účet zůstane po 3 neúspěšných pokusech o přihlášení uzamčen po dobu 10 minut nebo 600 sekund

Přidejme výše uvedený diskusní řádek v souboru „/etc/pam.d/common-auth ” pomocí editoru vi,

[e-mail chráněný]:~$ sudo vi /etc/pam.d/common-auth

Po provedení výše uvedených změn uložte a ukončete soubor a restartujte službu ssh pomocí následujícího příkazu

[e-mail chráněn]:~$ sudo systemctl restart sshd

Pojďme otestovat, zda jsou účty uzamčeny po 3 nesprávných přihlášeních ssh,

Předpokládejme, že máme místního uživatele „devops“, pokusíme se ssh systému Ubuntu s nesprávnými hesly

$ ssh [chráněno e-mailem] Heslo uživatele [chráněno e-mailem]:Heslo uživatele [chráněno e-mailem]:Heslo uživatele d[chráněno e-mailem:Povolení odepřeno (veřejný, heslo).

Nyní si prohlédněte soubor protokolu ověření a zjistěte, zda byly zaznamenány nesprávné pokusy o přihlášení,

[e-mail chráněný]:~$ tail /var/log/auth.log

Výše uvedené protokoly potvrzují, že účet byl uzamčen, ověřte pomocí příkazu pam_tally2,

[email protected]:~$ sudo pam_tally2 -u devopsLogin       Selhání Poslední selhání     Fromdevops      6    12/15/19 07:45:02  192.168.29.157]~>[e-mail preprotected] 

K vymazání těchto neúspěšných pokusů o přihlášení použijte následující příkaz pam_tally2,

[chráněno e-mailem]:~$ sudo pam_tally2 -u devops --resetLogin        Selhání Poslední selhání     Fromdevops       6    12/15/19 07:45:02  192,168,29,157 192,168,29,157 e-mailu:~$email protected] sudo pam_tally2 -u devopsLogin        Selhání Poslední selhání     Fromdevops       0[e-mail chráněn]:~$

Tím je článek uzavřen, neváhejte se podělit o zpětnou vazbu a komentáře.


Linux
  1. 11 způsobů, jak najít informace o uživatelském účtu a přihlašovací údaje v systému Linux

  2. CentOS / RHEL 7:Uzamknout uživatelský účet po N počtu nesprávných pokusů o přihlášení

  3. UNIX / Linux :Jak zamknout nebo zakázat uživatelský účet

  1. UNIX / Linux :jak přinutit uživatele, aby změnil své heslo při příštím přihlášení po resetování hesla

  2. CentOS / RHEL 6:Uzamknout uživatelský účet po N počtu nesprávných pokusů o přihlášení

  3. Jak zkontrolovat neúspěšné nebo špatné pokusy o přihlášení v Linuxu

  1. 4 způsoby, jak zakázat účet root v Linuxu

  2. Zkontrolujte úspěšné a neúspěšné pokusy o přihlášení uživatele v linuxu

  3. Kali linux selhal po upgradu