Jak zablokovat nebo zakázat normální přihlášení uživatele v Linuxu
Jako správce systému budete v určitém okamžiku nevyhnutelně provádět plánovanou údržbu systému. Několikrát může váš systém také narazit na nějaký problém (problémy) a vy budete nuceni jej odložit, abyste problém (problémy) vyřešili. Ať už je situace jakákoli, je dobré zabránit uživatelům, kteří nejsou root (normální) v připojení k systému.
Čtěte také: Zakažte nebo povolte přihlášení SSH root a omezte přístup SSH v systému Linux
V tomto článku popíšeme, jak blokovat přihlášení uživatelů bez oprávnění root pomocí souboru /etc/nologin a také pomocí shellu nologin v Linuxu. Podíváme se na to, jak nastavit zprávu, která uživatelům vysvětlí, co se vlastně děje.
Jak blokovat přihlášení uživatele pomocí souboru /etc/nologin
Primární funkcí souboru /etc/nologin je zobrazit zprávu (uloženou v souboru) uživatelům, kteří se pokoušejí přihlásit do systému během procesu vypínání.
Jakmile se uživateli zobrazí zpráva, přihlašovací procedura se ukončí a zabrání uživateli v přihlášení do systému.
To lze použít k zablokování přihlášení uživatele ručním vytvořením souboru následujícím způsobem.
vi /etc/nologin
Přidejte níže uvedenou zprávu do souboru, který se zobrazí uživatelům pokoušejícím se přihlásit do systému.
The Server is down for a routine maintenance. We apologize for any inconvenience caused, the system will be up and running in 1 hours time. For more information, contact the system admin [email .
Nyní můžete vyzkoušet, zda to všechno funguje; jak můžete vidět na snímku obrazovky níže, normální uživatel tecmint
se nemůže přihlásit.
Jak blokovat přihlášení uživatelů pomocí prostředí nologin
Tato metoda funguje trochu jinak: pouze blokuje uživateli přístup k shellu. Může se však přihlásit do systému pomocí programů, jako je ftp, které nutně nevyžadují shell, aby se uživatel mohl připojit k systému.
Kromě toho vám může umožnit blokovat přístup k shellu konkrétním uživatelům ve speciálních scénářích.
Na RHEL/CentOS/Fedora
Jednoduše použijte příkaz chsh (change shell) ke změně uživatelského prostředí v souboru /etc/passwd z něčeho jako /bin/bash
nebo /bin/sh
na /sbin/nologin
, což znamená odmítnutí přihlášení.
chsh -s /bin/nologin tecmint
Na Debian/Ubuntu
Zde musíte použít soubor /bin/false. Níže uvedený příkaz změní uživatelské prostředí tecmint na /bin/false
, což znamená, že neprovádět nic (poté, co uživatel zadá přihlašovací údaje):
sudo chsh -s /bin/false tecmint
Možná si také rádi přečtete následující související články.
- Jak povolit a zakázat přihlášení root v Ubuntu
- Resetování/obnovení zapomenutého hesla root uživatelského účtu v RHEL/CentOS 7
- Jak omezit uživatele SFTP na domovské adresáře pomocí chroot Jail
- Jak nastavit a zrušit místní, uživatelské a systémové proměnné prostředí v Linuxu
To je prozatím vše! Máte-li jakékoli dotazy nebo další nápady, které byste k tomuto tématu mohli sdílet, použijte níže uvedený formulář pro komentáře.