Jak už možná víte, SSH (Secure Shell ) je síťový protokol pro bezpečný vzdálený přístup k počítači. Serverový a klientský software v Linuxu jsou proto známé jako SSH Server a Klient SSH a mají mnoho implementací.
Ve výchozím nastavení SSH umožňuje přihlásit se ke kterémukoli uživateli počítače, pokud máte heslo pro daného uživatele. To však přichází se stejným problémem, kterému čelí jakýkoli software využívající ověřování na základě hesla:výzva pro útočníka, aby jej zneužil a získal přístup správce.
Dnes se podíváme, jak zakázat přihlášení SSH konkrétnímu uživateli, a co je důležitější, uživateli root.
Zakázat přístup SSH uživateli
Do systému se můžete přihlásit pomocí SSH s libovolným uživatelem pomocí následující syntaxe:
$ ssh tempuser@localhost
Právě teď je na mém počítači povolen SSH přístup pro všechny uživatele. Nyní odepřeme přístup konkrétnímu uživateli s názvem „tempuser ‘.
Otevřete soubor „/etc/ssh/sshd_config “ v libovolném textovém editoru.
$ sudo vim /etc/ssh/sshd_config
Na konec souboru přidejte následující řádek:
DenyUsers tempuser
Důležité :Je zde ‘Tab “ mezi „DenyUsers “ a „tempuser “ a ne prostor. Pokud přidáte mezeru, direktivu nerozpozná.
Uložte a ukončete soubor.
Restartujte SSH server pomocí následujícího příkazu:
$ sudo systemctl restart ssh
Pokud používáte systém, který nemá SystemD , spustit:
$ sudo service ssh restart
Nyní se zkuste přihlásit k localhost pomocí uživatele „tempuser “ pomocí SSH. Měla by se zobrazit chyba „Oprávnění odepřeno ’, jak je zobrazeno níže:
$ ssh tempuser@localhost
Zakázat SSH kořenový přístup
Stejným způsobem popsaným výše lze zakázat přihlášení uživatele root. Chcete-li však zakázat úplný přístup root, tj. zakázat přístup všem uživatelům root, postupujte podle kroků uvedených níže.
Otevřete soubor ‘/etc/ssh/sshd_config “ v libovolném textovém editoru a vyhledejte řetězec „PermitRootLogin '. Odkomentujte řádek a pokud má nějakou jinou hodnotu, nastavte hodnotu na ‘ne '.
PermitRootLogin no
Uložte a ukončete soubor. Restartujte SSH pomocí:
$ sudo systemctl restart ssh
Nebo pokud nemáte SystemD :
$ sudo service ssh restart
Nyní se zkuste přihlásit k localhost pomocí uživatele 'root '. Zobrazí se také chyba „Oprávnění odepřeno '.
$ ssh root@localhost
Závěr
V tomto článku jsme se naučili, jak zakázat přístup k přihlášení přes SSH konkrétnímu uživateli. Omezení přístupu na uživatele bez oprávnění root závisí na jednotlivých scénářích, nicméně přístup ke kořeni musí být vždy omezen.
Pokud je potřeba vzdálený přístup root, měli byste nastavit SSH s ověřováním RSA, které je bezpečnější než ověřování heslem. Přečtěte si manuálovou stránku SSH („man ssh ’) pro další podrobnosti.
Děkujeme za přečtení a dejte nám vědět své myšlenky v sekci komentářů níže!