GNU/Linux >> Znalost Linux >  >> AlmaLinux

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

Secure Shell , lidově známý jako SSH , je zabezpečený síťový protokol, který umožňuje uživatelům bezpečně se připojit ke vzdáleným hostitelům, jako jsou servery. Je založen na architektuře klient-server a používá dvě hlavní metody autentizace – heslo a klíč ssh ověření páru.

Klíč SSH Párová autentizace využívá použití klíčů SSH, což jsou kryptografické klíče používané k ověření a zabezpečení komunikace mezi klientem a serverem. Ověření pomocí páru klíčů SSH je upřednostňováno před autentizací heslem, protože poskytuje bezpečnější ověření, které není náchylné k útokům hrubou silou.

V tomto tutoriálu ilustrujeme, jak můžete nastavit klíče SSH na AlmaLinux .

Vytvoření páru klíčů RSA SSH v AlmaLinux

Pro zahájení show vytvoříme RSA klíčový pár, který obsahuje veřejný a soukromý klíč. Tyto klíče demystifikujeme později v průvodci. Chcete-li vytvořit pár klíčů, spusťte příkaz:

$ ssh-keygen
OR
$ ssh-keygen -t rsa 

Výše uvedené příkazy vytvoří 2048 -bitový pár klíčů RSA, který je považován za dostatečně dobrý, aby nabízel slušné šifrování pro zabezpečenou komunikaci. Můžete však vytvořit 4096 -bitový pár klíčů, který je robustnější a nabízí lepší šifrování.

Chcete-li to provést, jednoduše předejte -b vlajka. To je přesně to, co budeme dělat.

$ ssh-keygen -b 4096

Hned poté, co stisknete ENTER , budete požádáni o zadání cesty, ve které budou klíče uloženy. Ve výchozím nastavení je to ~/.ssh adresář. Pokud není nutné jej změnit na jinou cestu, přejděte do výchozího adresáře stisknutím ENTER .

Poté budete požádáni o zadání přístupové fráze nebo hesla. I když je to volitelné, přidává to další vrstvu ochrany při ověřování.

To je však omezující, pokud chcete konfigurovat autentizaci ssh klíčem bez hesla ke vzdálenému hostiteli. Pokud je toto váš cíl, jednoduše stiskněte 'ENTER “, abyste přeskočili poskytování klíčové fráze.

Zde je celý výstup příkazu.

V tomto okamžiku by vaše klíče měly být uloženy v ~/.ssh adresář, což je skrytý adresář ve vašem domovském adresáři. Chcete-li to potvrdit, spusťte příkaz:

$ ls -la ~/.ssh

Několik poznámek:

  • id_rsa je soukromý klíč. Jak název napovídá, toto by mělo být uchováváno jako extrémně důvěrné a nikdy by nemělo být vyzrazeno ani sdíleno. Jakmile útočník získá soukromý klíč, může snadno ohrozit váš vzdálený hostitel.
  • id_rsa.pub je veřejný klíč, který lze bez problémů sdílet. Můžete jej uložit do libovolného vzdáleného hostitele, ke kterému se chcete připojit.

Zkopírujte veřejný klíč SSH na vzdálený server Linux

Dalším krokem je zkopírovat nebo přenést veřejný klíč na vzdálený server nebo hostitele. Můžete to udělat ručně, ale ssh-copy-id příkaz vám to snadno umožní.

ssh-copy-id příkaz má následující syntaxi:

$ ssh-copy-id user@remote-host-ip-address

V našem nastavení máme vzdáleného hostitele s IP 172.105.135.246 a nakonfigurovaný vzdálený uživatel s názvem jack .

Pro zkopírování veřejného klíče SSH spustíme příkaz:

$ ssh-copy-id [email protected]

Pokud se k hostiteli připojujete poprvé, získáte výstup uvedený níže. Chcete-li pokračovat v ověřování, zadejte „ano“ a stiskněte ENTER pokračovat.

Jakmile zadáte heslo a stisknete „ENTER ‘ veřejný klíč je umístěn v autorizovaném_souboru soubor v ~/.ssh adresář na vzdáleném hostiteli.

známí_hostitelé ve vašem místním systému soubor je vytvořen v ~/.ssh adresář. Soubor obsahuje otisky SSH pro vzdálené hostitele, ke kterým jste se připojili.

$ ls -la ~/.ssh

Můžete si jej prohlédnout následovně.

$ cat ~/.ssh/known_hosts

SSH Passwordless Login to Remote Linux

S veřejným klíčem nyní uloženým na vzdáleném hostiteli se nyní můžeme přihlásit ke vzdálenému hostiteli bez ověřování heslem SSH. Abychom to otestovali, zkusíme se normálně přihlásit ke vzdálenému hostiteli.

$ ssh [email protected]

Z výstupu můžete vidět, že jsme se okamžitě dostali do shellu vzdáleného systému. To potvrzuje, že jsme úspěšně nakonfigurovali SSH Ověřování bez hesla.

Nyní potvrďte, že je veřejný klíč uložen v authorized_keys soubor na vzdáleném hostiteli.

$ ls -la ~/.ssh/

Chcete-li soubor zobrazit, použijte příkaz cat následovně.

$ cat ~/.ssh/authorized_keys 

Zakázat ověřování hesla SSH

Ještě jsme neskončili, ověřování heslem je stále povoleno a to může potenciálně vystavit vzdálený server nebo hostitele útokům hrubou silou.

Chcete-li eliminovat tento vektor útoku, důrazně se doporučuje zakázat ověřování heslem. To zajišťuje, že přihlášení je možné pouze pomocí páru klíčů SSH. Chcete-li toho dosáhnout, otevřete sshd_config soubor, který je hlavním konfiguračním souborem SSH.

$ sudo vim /etc/ssh/sshd_config

Vyhledejte Ověření hesla směrnice. Pokud je zakomentován, odkomentujte jej a nastavte jej na „ne“ .

PasswordAuthentication no

Uložte změny a ukončete soubor.

Poté restartujte SSH, abyste použili provedenou změnu.

$ sudo systemctl restart sshd

To úspěšně zakáže ověřování hesla a přihlásit se mohou pouze uživatelé se soukromým klíčem SSH.

V tuto chvíli bylo na vzdáleném serveru zakázáno ověřování heslem SSH a jediný možný způsob přístupu ke vzdálenému serveru je přes public-key ověření.

Podařilo se nám nastavit klíče SSH na Almalinux a dokonce pokračoval v konfiguraci ověřování SSH bez hesla pomocí páru klíčů SSH. Dále jsme deaktivovali ověřování hesla, abychom zabránili útokům hrubou silou.


AlmaLinux
  1. Jak nastavit SSH přihlášení bez hesla

  2. Jak nastavit klíče SSH pro přihlášení k ssh „bez hesla“ v systému Linux

  3. Jak nastavit klíče SSH pro přihlášení pomocí „veřejného/soukromého klíče“ SSH v systému Linux

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

  2. Jak funguje SSH bez hesla v systému Linux / UNIX

  3. Jak nastavit klíče SSH pro přihlášení k SSH „bez hesla“ na CentOS/RHEL

  1. Jak nastavit přihlášení k SSH bez hesla

  2. Jak vygenerovat klíč SSH ve Windows 10

  3. Jak povolit SSH na Almalinuxu