GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak vygenerovat klíče SSH na Ubuntu 18.04

Úvod

Vytvoření připojení SSH (Secure Shell) je nezbytné pro přihlášení a efektivní správu vzdáleného serveru. Šifrované klíče jsou sada přístupových pověření používaných k navázání zabezpečeného připojení.

Tato příručka vám ukáže, jak vygenerovat klíče SSH na Ubuntu 18.04. Budeme se také zabývat nastavením ověřování na základě klíče SSH pro připojení ke vzdálenému serveru bez vyžadování hesla.

Předpoklady

  • Server se systémem Ubuntu 18.04, SSH povoleným na Ubuntu
  • Uživatelský účet s sudo privilegia
  • Přístup k oknu terminálu/příkazovému řádku (Ctrl-Alt-T)

Vytvoření klíčů SSH na Ubuntu

Krok 1 – Vygenerujte pár klíčů SSH

U vašeho klienta systém – ten, který používáte pro připojení k serveru – musíte vytvořit pár klíčových kódů.

Chcete-li vygenerovat pár kódů klíčů SSH , zadejte příkazy:

mkdir –p $HOME/.ssh
chmod 0700 $HOME/.ssh
ssh-keygen

Tím vytvoříte skrytý adresář pro uložení vašich klíčů SSH a upravíte oprávnění pro tento adresář. ssh-keygen vytvoří 2048bitový pár klíčů RSA.

Pro dodatečné zabezpečení použijte RSA4096:

ssh –keygen –t rsa 4096

Pokud jste již vygenerovali pár klíčů, zobrazí se výzva k jejich přepsání a tyto staré klíče již nebudou fungovat.

Systém vás požádá o vytvoření přístupové fráze jako další vrstvu zabezpečení. Zadejte zapamatovatelnou přístupovou frázi a stiskněte Enter .

Krok 2 – Zkopírujte veřejný klíč na server Ubuntu

Nejprve získejte IP adresu serveru Ubuntu, ke kterému se chcete připojit.

V okně terminálu zadejte:

ip a

IP adresa systému je uvedena v druhé položce:

Na klientovi systému, použijte ssh-copy-id příkaz ke zkopírování informací o identitě na server Ubuntu :

ssh-copy-id [email protected]<server_IP>

Nahraďte IP_serveru se skutečnou IP adresou vašeho serveru.

Pokud se k serveru připojujete poprvé, může se zobrazit zpráva, že nelze ověřit pravost hostitele:

The authenticity of host '192.168.0.15 (192.168.0.15)' can't be established.

ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.

Are you sure you want to continue connecting (yes/no)?

Zadejte ano a stiskněte Enter .

Systém zkontroluje vašeho klienta systém pro id_rsa.pub klíč, který byl dříve vygenerován. Poté vás vyzve k zadání hesla k serveru Uživatelský účet. Zadejte jej (systém heslo nezobrazí) a stiskněte Enter .

Systém zkopíruje obsah ~/.ssh/id_rsa.pub od klienta systému do ~/.ssh/authorized_keys adresář serveru systém.

Systém by měl zobrazit:

Number of key(s) added: 1

Alternativní způsob ručního zkopírování klíče SSH

Pokud váš systém nemá ssh-copy-id můžete klíč zkopírovat ručně přes SSH.

Použijte následující příkaz:

cat ~/.ssh/id_rsa.pub | ssh [email protected]_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"

Krok 3 – Přihlaste se ke vzdálenému serveru

Chcete-li se přihlásit ke vzdálenému serveru, zadejte příkaz:

ssh [email protected]_IP

Systém by neměl žádat o heslo, protože vyjednává zabezpečené připojení pomocí klíčů SSH. Pokud jste použili bezpečnostní heslo, budete vyzváni k jeho zadání. Poté, co tak učiníte, budete přihlášeni.

Krok 4 – Zakažte ověřování hesla

Tento krok vytváří další vrstvu zabezpečení. Pokud jste jedinou osobou, která se přihlašuje na server, můžete heslo deaktivovat. Server přijme pouze přihlášení pomocí vašeho soukromého klíče, který bude odpovídat uloženému veřejnému klíči.

Upravte sshd_config soubor:

sudo nano /etc/ssh/sshd_config

Prohledejte soubor a najděte Ověření heslem možnost.

Upravte soubor a změňte hodnotu na no :

...

PasswordAuthentication no

...

Uložte soubor a ukončete, poté restartujte službu SSH:

sudo systemctl restart ssh

Před ukončením relace ověřte, že SSH stále funguje:

ssh [email protected]_IP

Pokud vše funguje, můžete se zavřít a normálně pokračovat v práci.


Ubuntu
  1. Jak nastavit klíče SSH na Ubuntu 16.04

  2. Jak nastavit klíče SSH na Ubuntu 18.04

  3. Jak nakonfigurovat autorizované klíče SSH na Ubuntu

  1. Jak povolit SSH na Ubuntu 18.04

  2. Jak povolit službu SSH v Ubuntu 22.04 LTS

  3. Jak povolit server SSH na Ubuntu 22.04 Jammy Linux

  1. Server Ubuntu 20.04 SSH

  2. Nainstalujte SSH server Ubuntu 22.04

  3. Jak nastavit klíče SSH na Ubuntu 18.04