Vyhledávání na webu

Jak nastavit přihlášení SSH bez hesla v Linuxu


SSH (Secure SHELL) je otevřený a důvěryhodný síťový protokol, který se používá k přihlášení ke vzdáleným serverům za účelem provádění příkazů a programů.

Používá se také k přenosu souborů z jednoho počítače do druhého po síti pomocí příkazu zabezpečeného kopírování (SCP) a příkazu rsync.

V tomto článku vám ukážeme, jak nastavit přihlašování bez hesla v linuxových distribucích založených na RHEL, jako jsou CentOS, Fedora, Rocky Linux & AlmaLinux a distribuce založené na Debianu, jako je Ubuntu a Mint pomocí ssh klíčů pro připojení ke vzdálenému Linux servery bez zadání hesla.

Použití přihlášení bez hesla s klíči SSH zvýší důvěru mezi dvěma servery Linux pro snadnou synchronizaci nebo přenos souborů.

Moje instalační prostředí
SSH Client : 192.168.0.12 ( Fedora 36 )
SSH Remote Host : 192.168.0.11 ( CentOS 8 )

Pokud máte co do činění s několika vzdálenými servery Linux, pak přihlášení SSH bez hesla je jedním z nejlepších způsobů automatizace úloh, jako je automatické zálohování pomocí skriptů, synchronizace souborů pomocí Příkaz SCP a vzdálené provádění příkazů.

V tomto příkladu nastavíme automatické přihlášení SSH bez hesla ze serveru 192.168.0.12 jako uživatel tecmint na 192.168.0.11 s uživatelem sheena.

Krok 1: Vytvořte ověřovací klíč SSH-Keygen na – (192.168.0.12)

Nejprve se přihlaste na server 192.168.0.12 pomocí uživatele tecmint a pomocí následujícího příkazu vygenerujte pár veřejných klíčů.

ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/home/tecmint/.ssh/id_rsa): [Press enter key]
Created directory '/home/tecmint/.ssh'.
Enter passphrase (empty for no passphrase): [Press enter key]
Enter same passphrase again: [Press enter key]
Your identification has been saved in /home/tecmint/.ssh/id_rsa.
Your public key has been saved in /home/tecmint/.ssh/id_rsa.pub.
The key fingerprint is:
5f:ad:40:00:8a:d1:9b:99:b3:b0:f8:08:99:c3:ed:d3 [email 
The key's randomart image is:
+--[ RSA 2048]----+
|        ..oooE.++|
|         o. o.o  |
|          ..   . |
|         o  . . o|
|        S .  . + |
|       . .    . o|
|      . o o    ..|
|       + +       |
|        +.       |
+-----------------+

Krok 2: Nahrajte klíč SSH na – 192.168.0.11

Použijte SSH ze serveru 192.168.0.12 a nahrajte nově vygenerovaný veřejný klíč (id_rsa.pub) na server 192.168.0.11 pod sheena's .ssh adresář jako název souboru authorized_keys.

ssh-copy-id [email 

Ujistěte se, že jsou v adresáři ~/.ssh a v souboru ~/.ssh/authorized_keys na vzdáleném serveru nastavena správná oprávnění.

ssh [email  "chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys"

Krok 3: Zakažte ověřování hesla (volitelné)

Pro zvýšení bezpečnosti můžete zakázat ověřování heslem na vzdáleném serveru a povolit pouze ověřování pomocí klíče SSH. Chcete-li to provést, otevřete konfigurační soubor serveru SSH na vzdáleném serveru:

sudo nano /etc/ssh/sshd_config
OR
sudo vi /etc/ssh/sshd_config

Najděte řádek obsahující PasswordAuthentication a nastavte jej na no.

PasswordAuthentication no

Uložte soubor a restartujte službu SSH.

sudo systemctl restart sshd

Krok 4: Otestujte přihlášení SSH bez hesla z 192.168.0.12

Od této chvíle se můžete přihlásit k 192.168.0.11 jako uživatel sheena ze serveru 192.168.0.12 jako tecmint uživatel bez hesla.

ssh [email 

V tomto článku jste se naučili, jak nastavit přihlášení SSH bez hesla pomocí klíče ssh. Očekávám, že proces byl přímočarý. Pokud máte nějaké dotazy, napište je do sekce komentářů níže.