Někteří z vás mohou pracovat ve vysoce regulovaných odvětvích, jako je medicína, státní správa, státní zakázky a potraviny a nápoje. Pravděpodobně máte přísná pravidla pro stárnutí hesla, pravidelné změny hesla, minimální délku, složitost a minimální časové limity mezi změnami hesla. Ostatní z vás mohou používat stejně přísná pravidla jednoduše proto, že je to dobrý postup. Tento článek popisuje, jak auditovat uživatelské účty a nastavit některá pravidla týkající se vypršení platnosti hesla a frekvence změn. Pro příklady používám chage
příkaz.
[ Také by se vám mohlo líbit čtení:Vyvážení bezpečnosti Linuxu a použitelnosti ]
chage
příkaz je sám o sobě popsán jako obslužný program "změnit informace o vypršení platnosti uživatelského hesla". Podle chage
manuálová stránka:
Příkaz change mění počet dní mezi změnami hesla a datem poslední změny hesla. Tyto informace systém používá k určení, kdy musí uživatel změnit své heslo.
Audit uživatelských účtů
Pravidelné audity účtů jsou nejen dobrým nápadem, ale v závislosti na předpisech vašeho odvětví by mohly být i požadavkem. Je snadné zkontrolovat požadavky na změnu hesla pomocí chage
příkaz. Zde je příklad:
# chage -l jdoe
Last password change : Apr 20, 2021
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
Jak můžete vidět, auditování jdoe uživatelský účet způsobí selhání auditu. Klíčovými indikátory je, že platnost hesla uživatele nikdy nevyprší a neexistuje žádný minimální ani maximální počet dní mezi změnami hesla. Některé oborové předpisy vyžadují, aby se hesla měnila každých 45 dní, zatímco jiná nařizují změnu po 90 dnech. A může se stát, že některé podniky a předpisy vyžadují 30denní interval výměny.
Vypršení platnosti hesla uživatele
Každý klient, kterého jsem doposud podporoval, používal 90denní expiraci hesla a minimální počet dní mezi změnami hesla byl nastaven na jednu. Nastavení minimálního počtu dní mezi změnami hesla pomáhá zabránit tomu, aby uživatel své heslo opakovaně měnil, dokud ho nebude moci obnovit na předchozí, čímž se obejde zabezpečení systému. Toto číslo můžete nastavit na něco většího než jedna. Některé podniky nastavují minimální počet dní na sedm.
# chage -m 1 -M 90 jdoe
# chage -l jdoe
Last password change : Apr 20, 2021
Password expires : Jul 19, 2021
Password inactive : never
Account expires : never
Minimum number of days between password change : 1
Maximum number of days between password change : 90
Number of days of warning before password expires : 7
chage
vyprší platnost hesla uživatele 90 dnů od poslední změny hesla. Pokud jste tedy heslo naposledy změnili 15. ledna 2019, platnost vašeho hesla by vypršela s datem 15. dubna 2019. To znamená, že pokud je datum vypršení platnosti v minulosti, budete vyzváni k jeho změně při příštím přihlášení.
$ ssh [email protected]
[email protected]'s password:
You are required to change your password immediately (password expired)
Activate the web console with: systemctl enable --now cockpit.socket
Last login: Sat Jun 19 10:46:27 2021
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for user jdoe.
Current password:
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
Connection to 192.168.0.99 closed.
Všimněte si, že po změně hesla vzdálený systém odpojí uživatele. Uživatel musí znovu zahájit připojení ke vzdálenému systému a přihlásit se pomocí svého nového hesla.
Výstraha a léčba
Slyšel jsem spoustu argumentů uživatelů a systémových administrátorů proti nastavení minimálního počtu dní mezi změnami hesla, že to narušuje automatické skripty. Moje odpověď vždy byla:"Nepoužívejte hesla pro automatické skripty." Důvodem je, že někteří uživatelé a správci systému zapisují do těchto automatických skriptů hesla jako prostý text, a to je špatné, i když omezují oprávnění skriptu na uživatelský účet, který je spouští.
Řešením je použití párů klíčů SSH pro automatizované úlohy mezi systémy.
[ Přemýšlíte o bezpečnosti? Podívejte se na tohoto bezplatného průvodce posílením zabezpečení hybridního cloudu a ochranou vaší firmy. ]
Sbalit
Tento článek poskytuje rychlý přehled o používání chage
příkaz k auditu a ukončení platnosti hesel na systémech, které spravujete. Pokud nechcete auditovat každý účet jednotlivě, doporučuji vám vytvořit skript pro pravidelnou kontrolu účtů vašich uživatelů a vypršení platnosti těch účtů, které nesplňují vaše bezpečnostní zásady a regulační požadavky.