Jak nastavit klíče SSH na Ubuntu 20.04

How Set Up Ssh Keys Ubuntu 20



Toto je návod, kde se naučíte, jak nastavit klíče SSH v Ubuntu 20.04. Klíče SSH zajišťují, že bezpečnost vašich serverů a proces přihlášení uživatelů k nim neohrozí jeho zabezpečení. Činí to tak, že obvyklý systém ověřování heslem ponechá stranou.

Stručně řečeno, SSH nebo „zabezpečený shell“ je šifrovaný protokol, pomocí kterého se můžete vzdáleně připojit k serveru a mít přístup k informacím s ním spojeným. Poskytuje mnohem bezpečnější způsob protokolování a zajišťuje bezpečný způsob přihlášení bez kompromisů v zabezpečení.







Krok 1: Vytvořte pár klíčů

Začneme vytvořením dvojice klíčů v klientském systému nejprve s přístupem root podle typu v následujícím:



$ssh-keygen



Tím se spustí nejnovější ssh-keygen k vytvoření 3072bitového páru klíčů RSA ve výchozím nastavení. Chcete -li vygenerovat větší klíč, můžete přidat příznak –b 4086. Stiskněte klávesu Enter a uloží pár klíčů do podadresáře .ssh. Všimněte si toho, že pokud jste hostem na serveru, který již má nainstalovaný klíč, zobrazí se výzva s dotazem, zda jej chcete přepsat nebo ne. Pokud tomu tak je, zadejte „y“ a signalizujte ano.





Dále se vás výzva zeptá, zda chcete přidat přístupové heslo. Můžete se odhlásit, ale doporučujeme přidat jeden. Posiluje bezpečnostní protokol tím, že neoprávněnému uživateli slouží k obejití další vrstvy ochrany.

Krok 2: Zkopírujte veřejný klíč na svůj server

Dále musíme převést veřejný klíč na váš server ubuntu.



Nástroj ssh-copy-id můžete použít pomocí následujícího příkazu:

$uživatelské jméno ssh-copy-id@server_host

To by mělo stačit během několika sekund. Pokud byl klíč úspěšně zkopírován, přejděte ke třetímu kroku.

Někdy se stane, že metoda ssh-copy-id selže nebo prostě není k dispozici. V takovém případě jej budete muset zkopírovat pomocí SSH založeného na heslech. To lze provést pomocí příkazu kočka a ujistěte se, že místo přepsání přidáte symbol >> a přidáte jej do obsahu.

$kočka~/.ssh/id_rsa.pub| sshvzdálené_uživatelské jméno@adresa_IP_serveru
'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'

Pokud se připojujete k novému hostiteli poprvé, váš systém vám ukáže něco jako:

Stačí zadat ano a stisknout tlačítko Enter. Poté zadejte heslo k účtu pro přístup uživatele a veřejný klíč bude zkopírován na váš server Ubuntu.

V případě, že vám přístup SSH založený na heslech z nějakého důvodu nemůžete odepřít, můžete veřejný klíč vždy zkopírovat ručně. Přidejte klíče ~/.ssh/authorized_keys do souboru id_rsa.pub na vzdáleném počítači. Dále se přihlaste ke svému účtu vzdáleného serveru a zkontrolujte, zda existuje adresář ~ SSH. Pokud ne, zadejte:

$mkdir -p~/.ssh

Nyní stačí přidat klíč:

$vyhodilpublic_key_string>>~/.ssh/authorized_keys

$chmod -R jít= ~/.ssh

Také se ujistěte, že používáte ~ SSH/ UŽIVATEL adresář a NE kořenový adresář:

$žrádlo -Ryounis: younis ~/.ssh

Krok 3: Ověřte klíče SSH

Dalším krokem je ověření klíčů SSH na serveru Ubuntu. Nejprve se přihlaste ke vzdálenému hostiteli:

$sshuživatelské jméno@vzdálený_hostitel

Budete vyzváni k zadání přístupového hesla, které jste přidali v kroku 2. Zadejte jej a pokračujte. Ověření bude nějakou dobu trvat a jakmile bude hotové, budete přesměrováni na nový interaktivní shell na vašem serveru Ubuntu

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

S ověřenými klíči SSH již nepotřebujete systém ověřování heslem.

Pokud je na vašem serveru povoleno ověřování hesla, bude stále náchylné k neoprávněnému přístupu uživatelů pomocí útoků hrubou silou. Bylo by tedy lepší zakázat jakékoli ověřování na základě hesla.

Nejprve zkontrolujte, zda je ověřování na základě klíče SSH připraveno pro vykořenit účet na tomto serveru. Pokud ano, měli byste jej změnit na účet s přístupem privilegovaného uživatele sudo na tomto serveru, aby byl přístup administrátora otevřen pro vás v případě nouze nebo když systém čelí podezřelým aktivitám.

Po udělení oprávnění správce vašemu účtu pro vzdálený přístup se přihlaste ke vzdálenému serveru pomocí klíčů SSH s oprávněními root nebo sudo. Poté použijte následující příkaz pro přístup ke konfiguračnímu souboru démona SSH:

$sudogedit/atd/ssh/sshd_config

Když je soubor nyní otevřen, vyhledejte adresář „PasswordAuthentication“ a zadáním následujícího textu zakážete ověřování heslem a přihlašování SSH založené na heslech.

$/atd/ssh/sshd_config
. . .
PasswordAuthentication no
. . .

Aby se tyto změny projevily, budete muset restartovat službu sshd pomocí následujícího příkazu:

$sudorestart systémussh

Před zavřením aktuální relace preventivně otevřete nové okno terminálu a otestujte, zda služba SSH funguje správně.

S vašimi ověřenými klíči SSH byste měli vidět, že vše funguje normálně. Můžete ukončit všechny aktuální relace serveru.

Závěr

Nyní, když máte zavedený systém ověřování na základě klíčů SSH, již nepotřebujete zranitelný systém ověřování heslem, protože se můžete jednoduše přihlásit bez hesla. Doufám, že vám tento návod pomohl.