CH-J Server Managerspráva serverů přes SSH
Menu
Všechny návody a články →

Uživatelé SSH a přístup root: bezpečné nastavení v Linuxu

Vytvořte účet správce, nainstalujte jeho klíč, ověřte sudo a teprve potom omezte přihlašování root, abyste neztratili přístup.

Cíl a pořadí kroků

Správci by se měli přihlašovat pod vlastními účty pomocí klíčů a podle potřeby používat sudo. Zůstane tak záznam o tom, kdo co provedl, a omezí se hádání hesel. Na pořadí záleží: nejprve zprovozněte nový přístup, vyzkoušejte ho a přístup root omezte až nakonec. Pro případ potíží mějte k dispozici konzoli poskytovatele.

Vytvoření účtu a instalace klíče

Vytvořte účet, přidejte jeho veřejný klíč a nastavte přísná oprávnění, protože sshd ignoruje soubory klíčů, do kterých mohou zapisovat ostatní. Soukromý klíč na server nikdy nekopírujte. V systémech z rodiny Red Hat použijte místo skupiny sudo skupinu wheel.

sudo adduser admin1
sudo usermod -aG sudo admin1
sudo install -d -m 700 -o admin1 -g admin1 /home/admin1/.ssh
sudo install -m 600 -o admin1 -g admin1 ~/admin1.pub /home/admin1/.ssh/authorized_keys

Ověření z druhého okna

Ponechte současnou relaci otevřenou a nové přihlášení vyzkoušejte z jiného terminálu. Samotné členství ve skupině nedokazuje, že sudo funguje: rozhodují pravidla v sudoers. Ověřte to příkazem sudo -l.

ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519 admin1@server.example
sudo -l
sudo -v

Omezení přihlašování root

PermitRootLogin prohibit-password povoluje přihlášení root pouze klíčem, hodnota no přístup root přes SSH zcela zablokuje. Změnu uložte do samostatného souboru v /etc/ssh/sshd_config.d. U většiny voleb sshd použije první nalezenou hodnotu, takže může mít přednost dřívější soubor. Účinnou hodnotu proto ověřte příkazem sshd -T, ne pouhým čtením souborů. Než zavřete původní relaci, vyzkoušejte nové přihlášení.

echo 'PermitRootLogin no' | sudo tee /etc/ssh/sshd_config.d/50-root.conf
sudo sshd -t
sudo systemctl reload ssh
sudo sshd -T | grep -iE '^(permitrootlogin|passwordauthentication) '

Přihlašování heslem a čemu se vyhnout

PasswordAuthentication vypněte až poté, co mají všechny potřebné účty ověřený klíč. Nesdílejte jeden účet mezi více lidmi, protože pak nelze odebrat přístup jednomu člověku bez dopadu na ostatní. sudo bez hesla pro celý účet také znamená, že samotný odcizený klíč poskytne plnou kontrolu.

Účty v CH-J Server Manager

Modul Users spravuje účty, skupiny, klíče SSH a přístup přes SSH prostřednictvím aktivní relace SSH. Nikdy nemění sudoers ani nenastavuje NOPASSWD a skutečný stav sudo zjišťuje z sudo -l. Účet root nelze smazat a povolení přihlášení root heslem vyžaduje dodatečné potvrzení; doporučená volba je pouze klíčem. Změna přístupu přes SSH se ověřuje pomocí sshd -T a nového přihlášení SSH. Pokud kontrola selže nebo byste ztratili přístup, předchozí konfigurace se automaticky obnoví. Bez sudo je modul pouze pro čtení.

Podrobná dokumentace

OpenSSH: sshd_config →

man: sudoers →

Biometrické odemykání a zabezpečení →