Jak nainstalovat a nakonfigurovat SSH server na Debian Linux?
Instalace a testování SSH server
Budete muset být root provést následující kroky…
su
-
Instalovat SSH server
apt install openssh-server
-
Zkontrolujte, zda existuje proces serveru. To naznačuje, že instalace proběhla dobře.
ps -A | grep sshdVýstup (nebo podobné):
1753 ? 00:00:00 sshd -
Nainstalovat SSH klienta pro kontrolu připojení SSH serveru
apt install openssh-clientPřipojení k localhost pro testování připojení
ssh localhostSe také přihlásit na adresu IP rozhraní
Získat adresu IP
ip addrSSH na IP adresu
ssh {ipaddress here}
Zajištění SSH server
Je to dobrý nápad, aby zabezpečit SSH server tím, že zamítne kořen se přihlásit a konfiguraci přihlášení pouze pomocí veřejného klíče tj. přihlášení pomocí hesla není povoleno
Zajistily provést následující příkazy jako uživatel, a ne jako root
-
Přejděte do domovského adresáře uživatele
cd
-
Zkontrolujte, zda existuje .ssh
ls -a
-
Pokud .ssh neexistuje, vytvořit to
mkdir .ssh
-
Nastavit oprávnění složky na 700
chmod 700 .ssh
-
Vytvořte soubor authorized_keys
touch ./.ssh/authorized_keys
-
Změna oprávnění k souboru authorized_keys na 600
chmod 600 ./.ssh/authorized_keys
-
Otevřete soubor authorized_keys
nano ./.ssh/authorized_keys
-
Vložte svůj veřejný klíč do souboru
Můžete získat veřejný klíč od klienta SSH. Pokud je klient Windows 10 pak to bude v
%USERPROFILE%/.ssh/id_rsa.pubsoubor. V případě, že klient je Debian pak veřejný klíč~/.ssh/id_rsa.pub.Pokud je váš veřejný klíč neexistuje, generovat to na klientském počítači
ssh-keygen -t rsa -C "email@domain.com"
-
Změna na uživatele root
su -
Nakonfigurovat SSH server akceptovat pouze veřejných klíčů přihlášení a zabránit přihlášení uživatele root
nano /etc/ssh/sshd_configOdkomentovat a / nebo upravit následující řádky
PermitRootLogin no
StrictModes yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
PasswordAuthentication no
-
Restart sshd službu
service sshd restart
-
Zkuste se přihlásit jako root ze svého SSH klienta pomocí hesla
ssh root@{ssh server ip address}Výstup:
Permission denied (publickey). -
Zkuste se přihlásit jako uživatelské jméno ze svého SSH klienta pomocí hesla
ssh username@{ssh server ip address}Výstup:
Permission denied (publickey). -
Zkuste se přihlásit jako root ze svého SSH klienta pomocí veřejného klíče
ssh root@{ssh server ip address} -i .ssh/id_rsaVýstup:
Permission denied (publickey). -
Přihlaste se jako uživatelské jméno ze svého SSH klienta pomocí veřejného klíče
ssh username@{ssh server ip address} -i .ssh/id_rsa
Pokud váš SSH klient má statickou IP adresu, pak možná budete chtít, aby zvážila jen vaši IP adresu, se mohou přihlásit do SSH serveru.
