GNU/Linux >> Znalost Linux >  >> Linux

Jak zamknout a odemknout uživatele v Linuxu

3 způsoby zamykání a odemykání uživatelských účtů v Linuxu

Může existovat řada důvodů, proč byste chtěli deaktivovat uživatele ve víceuživatelském prostředí Linuxu. Možná zaměstnanec opustil organizaci a místo úplného smazání uživatele uzamkl účet pro účely archivace.

V tomto tutoriálu vám ukážu tři způsoby, jak uzamknout uživatele v příkazovém řádku Linuxu. Také proberu, jak uživatele odemknout.

Upozorňujeme, že k provedení těchto změn je třeba buď root nebo mít root přístup přes sudo .

Metoda 1:Uzamykání a odemykání uživatelů pomocí příkazu passwd

Příkaz passwd v Linuxu se zabývá hesly uživatelského účtu. Tento příkaz můžete také použít k uzamčení uživatelského účtu.

Příkaz v podstatě funguje na souboru /etc/passwd. Tento soubor můžete upravit ručně, ale nedoporučuji to.

Chcete-li uživatele zamknout pomocí příkazu passwd, můžete použít volbu -l nebo –lock tímto způsobem:

passwd -l user_name

Ověřte stav uživatele pomocí příkazu passwd

Zda je uživatel uzamčen nebo odemčen, můžete zjistit pomocí volby -S nebo –status příkazu passwd.

passwd -S uživatelské_jméno

Podívejte se na druhé pole ve výstupu. Zde je to, co to znamená:

– P nebo PS:heslo je nastaveno (uživatel je odemčen)
– L nebo LK:Uživatel je uzamčen
– N nebo NP:Uživatel nepotřebuje heslo

Zde je ukázkový výstup příkazu passwd:

standardní P 14. 10. 2019 0 99999 7 -1

Chcete-li uživatele odemknout příkazem passwd, můžete použít volbu -u nebo –unlock:

passwd -u user_name

Na Ubuntu uvidíte výstup podobný tomuto pro zamykání i odemykání uživatele:

passwd: password expiry information changed

A co přihlášení přes SSH?

Se zamykáním uživatelů tímto způsobem je velký problém. Vzhledem k tomu, že funguje pouze se souborem /etc/passwd, bude se zamčený uživatel stále moci přihlásit pomocí klíčů SSH (pokud je nastaveno přihlášení pomocí klíče SSH). V další části vám ukážu, jak se s tím vypořádat.

Metoda 2:Uzamykání a odemykání uživatelů pomocí příkazu usermod

Můžete také použít příkaz usermod. Příkaz se primárně používá pro úpravu uživatelských účtů v Linuxu. Stav uživatele můžete také upravit uzamčením nebo odemknutím pomocí usermod.

Chcete-li uživatele zamknout, můžete použít volbu -L tímto způsobem:

usermod -L user_name

K odemknutí uživatele můžete použít volbu -U:

usermod -U user_name

Jak ověříte, zda je uživatel uzamčen nebo ne? Příkaz usermod funguje také na souboru /etc/passwd, takže můžete použít příkaz passwd -S jméno_uživatele ke kontrole stavu uživatele.

Ale usermod funguje také se souborem /etc/passwd, takže to znamená, že zamčený uživatel by se mohl stále přihlásit pomocí klíčů SSH, že? To je správně. Existují však způsoby, jak tento problém překonat.

Můžete například změnit shell uživatele na nologin, což uživateli neumožní přihlásit se do shellu.

Další metodou je uzamknout uživatele a poskytnout datum vypršení platnosti v minulosti. Dělá to tak, že deaktivuje účet k minulému datu a poté jej uzamkne.

Ujistěte se, že minulé datum je mezi 1970-01-02 a aktuálním datem.

usermod -L --expiredate 1970-01-02 user_name

Můžete to obrátit pomocí tohoto příkazu:

usermod -U --expiredate '' user_name

Existuje podobný způsob, jak uzamknout uživatele v Linuxu pomocí příkazu chage. Podívejme se na to v další sekci.

Metoda 3:Uzamykání a odemykání uživatelů pomocí příkazu chage

Příkaz change se používá pro změnu informací o vypršení platnosti hesla uživatele. Lze jej použít k automatickému uzamčení neaktivního uživatele po určitém počtu dní nečinnosti.

V podstatě to, co jste udělali s příkazem usermod v předchozí části, lze dosáhnout pomocí příkazu chage takto:

chage -E 1 username

V zásadě jste nastavili datum vypršení platnosti na 1970-01-02. Podrobnosti můžete vidět takto:

[email protected]:~$ sudo chage -l standard
Last password change					: Nov 07, 2019
Password expires					: never
Password inactive					: never
Account expires						: Jan 02, 1970
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

Datum vypršení platnosti můžete odstranit a odemknout tak uživatele tímto způsobem:

chage -E -1 username

Nakonec…

Jako vždy existují různé způsoby, jak provést úkol v příkazovém řádku Linuxu. Ukázal jsem zde tři způsoby, jak uzamknout a odemknout uživatele v Linuxu. Znáte lepší způsob nebo máte nějaký návrh osvědčených postupů pro zamykání uživatelů? Sdílejte to v sekci komentářů.


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

  2. Jak zakázat konkrétní příkaz pro konkrétního uživatele v Linuxu

  3. Jak zamknout a odemknout účty Zimbra z příkazového řádku

  1. Co je příkaz Chown v Linuxu a jak jej používat

  2. Jak vytvořit a odstranit uživatelskou skupinu v Linuxu

  3. Jak odstranit adresář a složku v Linuxu?

  1. Jak používat příkaz usermod v Linuxu

  2. Linux su příkaz

  3. Jak omezit uživatelské příkazy v Linuxu