GNU/Linux >> Znalost Linux >  >> Debian

Konfigurace klíčů SSH na systému Debian 9 – jak na to?

SSH (Secure Shell) je šifrovaný protokol, který umožňuje klientskému systému bezpečnou komunikaci se serverem. Můžete se vzdáleně připojit ke svému systému, provádět administrativní úlohy a přistupovat k souborům. Komunikace se serverem pomocí klíčů SSH je bezpečnější a pohodlnější způsob než ověřování heslem.

Zde v LinuxAPT, jako součást našich služeb správy serveru, pravidelně pomáháme našim zákazníkům provádět související dotazy SSH.

V této souvislosti se podíváme na to, jak vytvořit klíče SSH na systému Debian 9 a jak je různými způsoby zkopírovat na server.


Jak používat klíče SSH v Debianu?

Před provedením tohoto postupu se ujistěte, že používáte uživatele s právy sudo.

i. Nejprve vytvoříme pár klíčů na klientském systému pomocí níže uvedeného příkazu:

$ ssh-keygen

ii. Ve výchozím nastavení ssh-keygen vygeneruje 2048bitový pár klíčů RSA. Pokud chcete vytvořit větší 4096bitový klíč, můžete předat -b 4096 v příznaku, jak je uvedeno níže:

$ ssh-keygen -t rsa -b 4096

Měl by zobrazovat výstup jako níže:

Output
Generating public/private rsa key pair.
Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

iii. Stisknutím klávesy Enter uložíte páry klíčů do adresáře ./ssh nebo můžete určit umístění podle svého výběru.

Poté vás vyzve k zadání bezpečné přístupové fráze, jak je uvedeno níže. Přístupová fráze přidá do vašich klíčů další vrstvu zabezpečení. Je volitelná, pokud ji nechcete nastavovat, můžete ji přeskočit pouhým stisknutím klávesy Enter.

Output
Enter passphrase (empty for no passphrase):

Dále uvidíte výstup takto:

Your identification has been saved in /home/yourusername/.ssh/id_rsa.
Your public key has been saved in /home/yourusername/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:+cxkUbcUyFc7jXMHnQNlm/2O8rj+yDyP5Rnt29ov8Bc [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|           ..oB*o|
|           .ooo*B|
|          .  .+=*|
|         . .   o+|
|        S o     .|
|         *  .  E |
|          + .o+ +|
|           o.Oo=o|
|           .O=B=B|
+----[SHA256]-----+

Nyní máte veřejné a soukromé klíče, které můžete použít k ověření na vašem serveru Debian.

iv. Můžete také ověřit, zda jsou vaše soubory generovány nebo ne, zadáním:

ls ~/.ssh/id_*

Zobrazí výstup takto:

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub


Jak zkopírovat veřejný klíč na server Debian?

Nyní je dalším krokem umístění veřejného klíče na váš server Debian. Jednoduchý a rychlý způsob, jak zkopírovat public, je použít nástroj ssh-copy-id.

Spusťte níže uvedený příkaz:

$ ssh-copy-id username@server_ip_address

Budete vyzváni k zadání hesla pro vaše uživatelské jméno:

Output
username@server_ip_address's password:

Jakmile je uživatel úspěšně ověřen, bude veřejný klíč připojen k souboru ~/.ssh/authorized_keys na vzdáleném uživateli a připojení bude odpojeno.

Output
Number of key(s) added: 1

Nyní se můžete zkusit přihlásit ke svému počítači pomocí příkazu ssh username@server_ip_address a zkontrolovat, že byly přidány pouze klíče, které chcete přidat.

Pokud váš místní systém nemá nainstalovaný nástroj ssh-copy-id, můžete použít následující příkaz ke zkopírování veřejného klíče:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Ujistěte se, že máte přístup SSH na svůj server na základě hesla, pak pouze vy můžete použít výše uvedenou metodu.


Jak se přihlásit k serveru pomocí klíčů SSH?

Nyní byste měli být schopni se přihlásit ke vzdálenému počítači bez hesla vzdáleného uživatele.

Můžete se zkusit připojit pomocí příkazu SSH:

$ ssh username@server_ip_address

Pokud se přihlašujete poprvé, může se vám zobrazit následující výzva.

Napište ano a pokračujte stisknutím klávesy Enter:

Output
The authenticity of host '192.168.27.18 (192.168.27.18)' can't be established.
ECDSA key fingerprint is ed:ed:f4:g9:66:ge:53:48:e1:55:00:fd:6d:d7:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

Nyní, pokud jste nenastavili přístupové heslo pro své klíče, budete okamžitě přihlášeni, aniž byste se na něj ptali. V opačném případě budete požádáni o zadání přístupové fráze. Po úspěšné autentizaci otevře nová shellová relace váš uživatelský účet na serveru Debian.


Jak deaktivovat ověřování hesla SSH?

Můžete přidat další vrstvu zabezpečení vypnutím ověřování heslem pro SSH. Před zahájením procesu se ujistěte, že se můžete autentizovat k vašemu serveru bez zadávání hesla a musíte mít uživatelský účet s povoleným sudo.

i. Pojďme se přihlásit k vašemu serveru pomocí ssh:

$ ssh username@server_ip_address

ii. Nyní upravte konfigurační soubor SSH umístěný v /etc/ssh/sshd_config:

$ sudo nano /etc/ssh/sshd_config

iii. Najděte direktivu PasswordAuthentication a pokud je řádek zakomentován, odkomentujte řádek a nastavte hodnotu na "no", jak je uvedeno níže:

PasswordAuthentication no

iv. Uložte a zavřete soubor. Musíte restartovat službu SSH pomocí níže uvedeného příkazu:

$ sudo systemctl restart ssh

Nyní je autentizace na základě hesla na vašem serveru Debian zakázána.



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

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

  3. Jak nastavit klíče SSH na Debianu

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

  2. Jak nakonfigurovat ověřování na základě klíče SSH v systému Linux

  3. Jak nastavit klíče SSH

  1. Ssh – Jak povolit výměnu klíčů Diffie-hellman-group1-sha1 v Debianu 8.0?

  2. Nakonfigurujte místní nastavení systému na Debianu 9

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