GNU/Linux >> Znalost Linux >  >> Panels >> Panels

Jak nastavit klíče SSH na Ubuntu 16.04

Ukážeme vám, jak nastavit klíče SSH na Ubuntu 16.04. SSH nebo Secure SHELL je nejoblíbenější a nejdůvěryhodnější šifrovací síťový protokol založený na UNIXu. Lze jej použít pro zabezpečenou datovou komunikaci, přihlášení k vzdálenému serveru, vzdálené provádění příkazů a mnoho dalších zabezpečených síťových služeb mezi dvěma síťovými servery. Normálně se ověřování heslem používá k připojení ke vzdálenému serveru přes SSH, ale v tomto tutoriálu vám ukážeme, jak se přihlásit k Ubuntu 16.04 VPS pomocí klíčů SSH. Vygenerujeme pár klíčů (soukromý a veřejný klíč), umístíme soukromý klíč na váš server a poté použijeme váš lokálně uložený soukromý klíč k získání přístupu na váš server. Tato metoda poskytuje bezpečnější způsob připojení k vašemu serveru namísto pouhého použití hesla.

V průběhu tohoto tutoriálu také vysvětlíme, jak vygenerovat pár klíčů SSH v operačním systému Linux i Windows.

1. Generování klíčů SSH na Ubuntu 16.04

Chcete-li vygenerovat pár klíčů SSH, jednoduše spusťte následující příkaz z terminálu na místním počítači založeném na Ubuntu 16.04:

ssh-keygen

Stačí stisknout Enter a ponechat výchozí hodnoty pro všechny otázky. Volitelně můžete také nastavit přístupovou frázi pro přidání další vrstvy zabezpečení, nebo stačí znovu stisknout Enter, pokud nechcete.

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:2QB/eJ39/4N7Q3PRSghNJmglX6hh2pSqQ3uGHhfd7Og root@rosehosting
The key's randomart image is:
+---[RSA 2048]----+
|       . .+o++   |
|       oB+o=.o   |
|       O+=+.o.. .|
|    . + +*o . .o.|
|   . + .So.  . .o|
|    * + . .   .oo|
|   . * .      o +|
|     .   E   . +.|
|             .o +|
+----[SHA256]-----+

Tím se vytvoří 2048bitový soukromý a veřejný klíč (id_rsa a id_rsa.pub) v adresáři /root/.ssh/ ve vašem místním systému.

Nahrajte veřejný klíč na server Ubuntu 16.04 pomocí ssh-copy-id

Další krok vyžaduje, abyste nahráli vygenerovaný veřejný klíč na váš vzdálený server Ubuntu. Existuje více než jeden způsob, jak to provést.

Nejjednodušší způsob je použít ssh-copy-id utility. Aby to fungovalo, měli byste být schopni se připojit k vašemu serveru přes SSH pomocí ověřování heslem.

Poté můžete použít následující příkaz k nahrání veřejného klíče na vzdálený server:

ssh-copy-id root@remote_server

Budete požádáni o zadání uživatelského hesla (v našem příkladu by to bylo heslo uživatele root) a stiskněte Enter. Po navázání připojení bude obsah id_rsa.pub (veřejný klíč) zkopírován do souboru /root/ssh/authorized_keys na vzdáleném serveru.

Měl by se zobrazit následující výstup:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh 'root@remote-host'"
and check to make sure that only the key(s) you wanted were added.

Od nynějška byste nyní měli být schopni autentizovat se na serveru Ubuntu pomocí klíčů SSH.

Nahrajte veřejný klíč na server Ubuntu ručně

Pokud ssh-copy-id nástroj není ve vašem systému dostupný, můžete se přihlásit na svůj server a provést to ručně.

Nejprve připojte svůj server přes SSH pomocí:

ssh root@remote_server

Po připojení budete muset vytvořit nový adresář .ssh na vzdáleném serveru pomocí následujícího příkazu:

mkdir /root/.ssh

Dále musíte zkopírovat veřejný klíč do souboru autorizovaných klíčů na vzdáleném serveru. Obsah veřejného klíče můžete vytvořit a poté přidat pomocí textového editoru nano:

nano /root/.ssh/authorized_keys

Budete také muset otevřít konfigurační soubor SSH:

nano /etc/ssh/sshd_config

a ujistěte se, že následující řádky existují a nejsou komentovány:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

Uložte změny a restartujte službu SSH:

systemctl restart ssh

A je to. Od této chvíle budete používat klíče SSH pokaždé, když se pokusíte připojit ke vzdálenému serveru.

2. Generování klíčů SSH na systému Windows pomocí PuTTY a PuTTYGen

Pokud na svém lokálním počítači používáte operační systém Windows, budete potřebovat PuTTY pro připojení k serveru přes SSH a PuTTYgen pro vygenerování SSH klíčů. Můžete si je stáhnout zde (https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html).

Chcete-li vygenerovat klíče SSH, spusťte na svém počítači PuTTYGen.

V dolní části si můžete vybrat počet bitů pro vygenerovaný klíč. Zadejte 4096 a poté klikněte na Generovat. Začněte pohybovat myší po prázdné oblasti na obrazovce PuTTYgen, abyste vygenerovali jedinečný klíč založený na pohybu myši.

Když se vyplní zelený ukazatel průběhu, vygeneruje se veřejný klíč. Můžete zkopírovat jejich klíč a uložit jej do souboru .txt na vašem počítači.

Chcete-li uložit soukromý klíč, budete muset kliknout na tlačítko Uložit soukromý klíč. Kromě toho můžete také nastavit heslo pro svůj soukromý klíč.

Nyní můžete otevřít PuTTY a pro přiřazení umístění vašeho soukromého klíče klikněte na SSH v nabídce Připojení a poté klikněte na Auth. Klikněte na tlačítko procházení a zadejte umístění vašeho uloženého souboru soukromého klíče.

Dále musíme nahrát veřejný klíč na váš server. Chcete-li to provést, klikněte na Session, zadejte svou IP adresu a číslo portu SSH vašeho serveru, jako Typ připojení vyberte SSH a klikněte na Otevřít.

Budete požádáni o vaše uživatelské jméno a heslo. Můžete se přihlásit jako uživatel root pomocí hesla uživatele root.

Po přihlášení k serveru nejprve vytvořte adresář .ssh:

mkdir /root/.ssh

Poté vytvořte soubor autorizovaných klíčů v adresáři .ssh a přidejte obsah svého veřejného klíče do tohoto souboru:

nano /root/.ssh/authorized_keys

Konfigurační soubor SSH můžete také otevřít na svém serveru pomocí:

nano /etc/ssh/sshd_config

a ujistěte se, že následující řádky existují a nejsou komentovány:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

Pokud byly provedeny nějaké změny, nezapomeňte restartovat službu sshd pomocí:

systemctl restart ssh

Tímto byly klíče SSH úspěšně nakonfigurovány. Nyní se můžete odpojit od svého serveru a ukončit PuTTY. Při příštím pokusu o připojení k vašemu serveru použije PuTTY veřejný klíč, který jste nastavili pro navázání spojení.

3. Zakázat ověřování hesla

Jakmile úspěšně nakonfigurujete klíče SSH pomocí některé z výše uvedených metod a ujistíte se, že se můžete přihlásit k serveru pomocí ověřování založeného na klíči SSH, můžete zakázat ověřování na základě hesla k vašemu serveru. To přidá další vrstvu zabezpečení a zabrání všem útokům hrubou silou na váš server.

Chcete-li zakázat ověřování na základě hesla, otevřete konfigurační soubor SSH pomocí:

nano /etc/ssh/sshd_config

A odkomentujte následující řádek a nastavte jeho hodnotu na „ne“:

PasswordAuthentication no

Restartujte službu sshd pomocí:

systemctl restart ssh

That’s it. You have successfully set up SSH keys on your Ubuntu 16.04 VPS.

Samozřejmě nemusíte nastavovat klíč SSH na svém Ubuntu 16.04 VPS, pokud používáte jednu z našich hostingových služeb Ubuntu, v takovém případě můžete jednoduše požádat naše zkušené administrátory Linuxu, aby vám klíče SSH nastavili. Jsou k dispozici 24×7 a okamžitě se postarají o váš požadavek.

PS . Pokud se vám tento příspěvek líbil, sdílejte jej se svými přáteli na sociálních sítích pomocí tlačítek níže nebo jednoduše zanechte komentář v sekci komentářů. Děkuji.


Panels
  1. Jak nakonfigurovat klíče SSH pomocí cPanel

  2. Jak používat klíče SSH s Plesk

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

  1. Jak vygenerovat klíče SSH na Ubuntu 18.04

  2. Jak nastavit klíče SSH

  3. Jak nastavit klíče SSH na Debianu

  1. Jak vygenerovat a nastavit klíče SSH na CentOS 7

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

  3. Jak vygenerovat a nastavit klíče SSH na Debianu 10