GNU/Linux >> Znalost Linux >  >> Linux

Jak vygenerovat a používat klíč SSH v systému Linux?

Dnes stručně popíšeme, jak generovat a používat klíč SSH v systému Linux.

Jak vygenerovat klíč SSH v systému Linux?

Klíč SSH je pověření pro přístup pro síťový protokol SSH (secure shell). Tento autentizační a šifrovací zabezpečený síťový protokol se používá pro vzdálenou komunikaci mezi stroji v nezabezpečené otevřené síti.

Jinými slovy, můžeme říci, že SSH klíč je pověření pro bezpečný přístup používaný v zabezpečeném prostředí ( protokol SSH). Klíče SSH využívají páry klíčů založené na technologii infrastruktury veřejných klíčů, zlatém standardu pro ověřování a šifrování digitální identity, aby poskytovaly bezpečnou a škálovatelnou metodu ověřování.

Jak funguje ověřování pomocí páru klíčů SSH?

Pár klíčů SSH se používá k ověření identity uživatele nebo procesu, který chce přistupovat ke vzdálenému systému pomocí protokolu SSH. Veřejný klíč SSH používá uživatel i vzdálený server a používá se k šifrování zpráv.

Na straně vzdáleného serveru je veřejný klíč uložen v souboru, který obsahuje seznam všech autorizovaných veřejné klíče. Na straně uživatele je veřejný klíč uložen v softwaru pro správu klíčů SSH nebo v souboru v jeho počítači. Soukromý klíč zůstává pouze v systému, který se používá pro přístup ke vzdálenému serveru a používá se k dešifrování zpráv.

Když uživatel nebo proces požaduje připojení ke vzdálenému serveru pomocí klienta SSH, objeví se výzva- sekvence odpovědí je iniciována k dokončení autentizace. Server SSH rozpozná, že je požadováno připojení, a odešle zašifrovaný požadavek na výzvu pomocí sdílených informací o veřejném klíči.

Klient SSH poté zprávu s výzvou dešifruje a odpoví zpět serveru SSH. Uživatel nebo proces musí správně reagovat na výzvu, aby mu byl udělen přístup. Tato sekvence výzva-odpověď probíhá automaticky mezi klientem SSH a serverem SSH bez jakékoli ruční akce uživatele.

V této příručce se zaměříme na nastavení klíče SSH pro systém Ubuntu. Tyto kroky můžete použít k nastavení klíče SSH ve všech prostředích Linuxu. Klíče SSH poskytují přímý a bezpečný způsob přihlášení k vašemu serveru a jsou doporučeny všem uživatelům.

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

Prvním krokem je vytvoření párů klíčů v místním systému.





Ssh-keygen ve výchozím nastavení generuje 2048bitový pár klíčů RSA. Volitelně můžete předat parametry -b 4096 a vytvořit tak větší bitový klíč RSA. Po zadání příkazu ssh-keygen byste měli vidět níže uvedenou obrazovku.



Stiskněte ENTER pro uložení párů klíčů do .ssh/ podadresář ve vašem domovském adresáři nebo zadejte alternativní cestu. Pokud jste klíč SSH vygenerovali dříve, můžete vidět níže uvedenou obrazovku.





Pokud zvolíte přepsání existujícího klíče na serveru, nebudete se již moci autentizovat pomocí předchozího klíče. Při výběru ano buďte velmi opatrní, protože tento proces nelze vrátit zpět. Poté uvidíte níže uvedenou obrazovku.



Zde můžete volitelně zadat bezpečné přístupové heslo, což je vysoce doporučeno. Přístupová fráze je podobná heslu. Heslo však obecně označuje něco, co se používá k ověření nebo přihlášení do systému. Heslo obecně označuje tajemství používané k ochraně šifrovacího klíče.

Šifrovací klíč je odvozen z přístupové fráze a používá se k šifrování chráněných zdrojů. Přístupová fráze přidává další vrstvu zabezpečení, aby se zabránilo neoprávněným uživatelům přihlásit se. Poté se zobrazí následující obrazovka.





Nyní budete mít veřejný a soukromý klíč, který můžete použít k ověření. Dalším krokem je umístění veřejného klíče na váš server, abyste se mohli přihlásit pomocí autentizace na základě klíče SSH.

Krok:2 Zkopírujte veřejný klíč na server CentOS

Nejjednodušší způsob, jak zkopírovat veřejný klíč na server, je použít příkaz ssh-copy-id. Výše uvedený příkaz je vysoce doporučen kvůli jeho jednoduchosti. Zkopírujte klíč SSH pomocí příkazu ssh-copy-id. Pomocí příkazu ssh-copy-id budete muset zadat uživatelské jméno a IP adresu/hostitelský server, na který chcete vložit klíč SSH.

ssh-copy-id example@ unixlinux.online/hostitelský server
Například # ssh-copy-id [email protected] (192.168.2.152 je naše interní IP adresa, kterou jsme použili k provedení kroků v článku. Nahraďte prosím tuto IP adresu svou skutečnou IP adresou.)



Poté se může zobrazit obrazovka níže.





Zde budete muset zadat heslo vzdáleného hostitele, na který chcete vložit klíč SSH, a stisknout „ENTER“. Jakmile stisknete „ENTER“, připojí se ke vzdálenému hostiteli a zkopíruje obsah vašeho klíče ~/.ssh/id_rsa.pub do souboru v domovském adresáři ~/.ssh vzdáleného účtu s názvem autorizované_klíče. Můžete vidět níže uvedenou obrazovku.



Nyní byl váš klíč id_rsa.pub nahrán do vzdáleného účtu.

Krok 3 — Ověření na serveru Ubuntu pomocí klíčů SSH

Pokud jste postup dokončili, měli byste být schopni se přihlásit ke vzdálenému hostiteli bez hesla vzdáleného účtu. Zadejte následující příkaz do terminálu a přihlaste se ke vzdálenému serveru bez hesla vzdáleného účtu.

# ssh [email protected]_address_of_remote_server
Například # ssh [email protected]





Jakmile stisknete „ENTER“, budete přihlášeni ke vzdálenému hostiteli.

Krok 4 — Zakažte ověřování hesla na serveru

Pokud jste se úspěšně přihlásili na server, znamená to, že jste úspěšně nakonfigurovali ověřování pomocí klíče SSH. Vaše ověřování na základě hesla je však na serveru stále aktivní. To znamená, že váš server je stále vystaven útokům hrubou silou.

Abyste zabránili útokům hrubou silou, musíte na svém serveru zakázat ověřování heslem. Za tímto účelem se ujistěte, že váš účet má oprávnění správce (root). Nejprve se přihlaste k serveru, na kterém jste nakonfigurovali ověřování na základě klíče SSH.

Chcete-li zakázat ověřování na základě hesla, budete muset použít níže uvedený příkaz.

# sudo vi/etc/ssh/ssg_config





Uvnitř souboru vyhledejte následující řádek PasswordAuthentication. Stiskněte „I ” pro vložení textu a úpravu řádku a nastavení hodnoty “NE “. Tím znemožníte přihlášení přes SSH pomocí hesel účtů.



Jakmile dokončíte výše uvedený postup, stiskněte „Esc “ a zadejte „:wq “ a stiskněte Enter.



Abyste skutečně provedli tyto změny, budete muset restartovat službu sshd pomocí níže.

# sudo systemctl restart sshd.service



To je vše.






Linux
  1. Jak vygenerovat klíč SSH ve Windows 10

  2. Jak používat příkazy strace a ltrace v Linuxu

  3. Jak nainstalovat a používat Glances k monitorování systémů Linux

  1. Jak nainstalovat a používat Linux Screen?

  2. Jak nastavit veřejný a soukromý klíč SSH v Linuxu

  3. Jak nainstalovat a používat Git v systému Linux

  1. Jak nainstalovat a používat TeamViewer v systému Linux [Kompletní průvodce]

  2. Jak nainstalovat a používat příkaz Ack v systému Linux

  3. Jak vygenerovat a používat klíč SSH pomocí PuTTY