Existují 2 způsoby přístupu k SSH, jeden je založen na hesle a druhý na klíči. Autentizace založená na klíči SSH má poskytovat bezpečný způsob přístupu k serveru se soukromým a veřejným klíčem.
V této příručce se naučíte následující způsoby zabezpečení vašeho počítače Debian.
- Vytvořit nového uživatele s právy sudo
- Zakažte ověřování na základě hesla
- Generovat klíče SSH
- Nakonfigurujte klíč SSH pro uživatele
- Zakázat výzvu k zadání hesla při používání sudo
Krok 1:Vytvořte nového uživatele
Toto můžete přeskočit, pokud jste již uživatele vytvořili.
Vytvořte nového uživatele s deaktivovaným heslem pomocí následujícího příkazu.
sudo adduser username --disabled-password
Postupujte podle pokynů a potvrďte pomocí Y
, který vytvoří uživatele s domovským adresářem uživatele v /home/username
.
Udělit sudo přístup novému uživateli
Přidejte nového uživatele do skupiny sudo, takže uživatel bude mít oprávnění správce ke spouštění příkazů.
sudo usermod -aG sudo username
Nyní máte nového uživatele s právy sudo a deaktivovaným heslem.
Krok 2:Zakažte ověření hesla pro uživatele
Upravte /etc/ssh/sshd_config
soubor pro konfiguraci ověřování.
sudo nano /etc/ssh/sshd_config
Přidejte následující k poslednímu.
Match User username PasswordAuthentication no
Uložte soubor a restartujte SSH.
sudo systemctl restart ssh
Nyní se uživatel nemůže přihlásit pomocí hesla.
Krok 3:Vygenerujte klíč SSH
Přihlaste se jako uživatel, kterého jste vytvořili výše.
sudo su username
Vytvořit nový .ssh
adresář, ve kterém podržte klávesy ssh a přejděte do něj.
Zde nepoužívejte sudo.
mkdir .ssh cd .ssh
Vytvořte klíče SSH.
ssh-keygen -m PEM -t rsa -b 4096 -C "your_email"
Zde jsem byl zvyklý na PEM
formát pro generování klíče založeného na RSA. Pokud -m PEM
je odstraněn, může vygenerovat klíč OpenSSH.
Po zobrazení výzvy zadejte název klíče.
Přeskočte přístupovou frázi a dokončete nastavení.
Nyní byste měli mít ve svém adresáři .ssh 2 soubory.
filename.pub filename
Název souboru.pub je váš veřejný klíč a název souboru je váš soukromý klíč.
Krok 4:Nakonfigurujte klíč SSH pro přístup SSH.
Chcete-li povolit připojení SSH, musíte přidat veřejný klíč do authorized_keys
soubor.
cat filename.pub >> authorized_keys
Tento příkaz vytvoří soubor s názvem authorized_keys
a přidejte do něj obsah veřejného klíče.
Zkopírujte obsah soukromého klíče, pomocí toho můžete provést ověření na serveru.
cat filename
Tento příkaz vypíše obsah vašeho soukromého klíče. Uložte jej pro ověření.
Krok 5:Vypněte výzvu k zadání hesla při používání sudo
Ve výchozím nastavení, když spouštíte příkazy založené na sudo s jiným uživatelem, systém vyzve k zadání hesla pro uživatele.
Protože nepoužíváme heslo, musíme ho deaktivovat.
Ukončete uživatelské prostředí a vraťte se do svého kořenového prostředí.
Spusťte příkaz pro zadání visudo
.
sudo visudo
Přidejte následující k poslednímu.
username ALL=(ALL) NOPASSWD: ALL
Uložte soubor a ukončete.
A je to. Nyní máte uživatele, který se může přihlásit pouze pomocí klíčů SSH.