Udržování nečinných relací prostředí na serveru Linux může představovat bezpečnostní riziko. Nezapomeňte, že by to spotřebovalo systémové prostředky.
Dobře, možná nejde o jedinou nečinnou relaci, ale představte si, že ke stejnému systému Linux vzdáleně přistupuje více uživatelů a jejich relace jsou nečinné.
Jako správce systému Linux můžete vidět, kteří uživatelé jsou přihlášeni do systému a jak dlouho byli nečinní.
Můžete ručně vyhodit nečinného uživatele, ale to je únavné a rozhodně ne příliš produktivní.
Dovolte mi, abych vám ukázal, jak automaticky odhlásit nečinné uživatele z jejich shellu.
Metoda 1:Použijte TMOUT k automatickému odhlášení uživatelů z nečinných relací prostředí
V bash a dalších shellech můžete použít TMOUT
proměnnou pro nastavení doby odhlášení z nečinnosti. Pokud během tohoto časového období nedojde k žádné aktivitě uživatele, bude relace shellu uzavřena.
Zkontrolujte, zda je TMOUT již nastaven. Hodnoty jsou v sekundách.
echo $TMOUT
Chcete-li jej otestovat, můžete jej použít takto:
TMOUT=300
Tím se po 300 sekundách, tj. 5 minutách, zavře vaše terminálová relace nebo relace SSH.
U relací SSH byste měli vidět zprávu takto:
[email protected]:~# timed out waiting for input: auto-logout
Connection to 212.125.89.175 closed.
U místních relací by se váš terminál měl automaticky zavřít.
Pravděpodobně už ale víte, že to není nejlepší způsob, jak nastavit proměnnou prostředí. Můžete to nastavit buď v profilu jednotlivého uživatele (nebo bash profilu), nebo to nastavíte pro všechny uživatele, v celém systému, z /etc/profile.
Za předpokladu, že jste správce systému a chcete automaticky odhlašovat nečinné uživatele ze serveru Linux, nastavte to na úrovni systému.
Otevřete soubor /etc/profile v textovém editoru, jako je Vim nebo Nano:
nano /etc/profile
A přidejte k němu následující řádek:
TMOUT=300
Uložte a zavřete soubor. Od této chvíle bude každý uživatel s 5 minutami nečinnosti automaticky odhlášen.
To funguje pro místní i vzdálené relace. Pokud jej chcete nastavit pouze pro relace SSH, můžete použít další metodu.
Metoda 2:Automaticky odhlašovat uživatele z nečinných relací SSH
SSH server můžete nakonfigurovat tak, aby vynutil odhlášení uživatele po určité době nečinnosti.
Upravte konfigurační soubor SSH (/etc/ssh/sshd_config):
sudo nano /etc/ssh/sshd_config
Hledejte následující dvě proměnné a odstraňte znak # před jejich počáteční čárou a nastavte hodnoty takto:
ClientAliveInterval 200
ClientAliveCountMax 3
Uložte a zavřete soubor.
To znamená, že server odešle klientovi každých 200 sekund zprávu o zachování života 3krát. Pokud neobdrží žádnou odpověď (to znamená, že uživatel je nečinný), relaci uzavře po 600 sekundách (200*3).
Můžete si vybrat vhodné hodnoty na základě vašich požadavků.
Toto je pouze metoda SSH a neovlivní místní relace shellu.
Doufám, že vám tento linuxový tip na automatické odhlašování uživatelů pomůže. Přihlaste se k odběru dalších tipů pro správce systému Linux.