GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nakonfigurovat autorizované klíče SSH na Ubuntu

SSH nebo Secure Shell je navržen pro přístup k obsahu vzdáleného hostitele provádět různé typy úkolů na dálku. SSH není ve výchozím nastavení na Ubuntu nainstalováno. Po instalaci může SSH poskytovat heslem chráněný, šifrovaný přístup ke vzdálenému systému. Server SSH běží na vzdáleném hostiteli a klient SSH běží na systému, který provádí vzdálené připojení. autorized_keys Soubor je nejdůležitější součástí připojení SSH. Určuje klíče, které se používají k ověření uživatelů, kteří se mohou přihlásit ke vzdálenému hostiteli pomocí ověřování pomocí veřejného klíče. Použití tohoto souboru pro připojení SSH bylo vysvětleno v tomto tutoriálu.

požadavky

Server SSH není ve výchozím nastavení na Ubuntu nainstalován. Před zahájením tohoto kurzu musíte nainstalovat balíček OpenSSH, který bude fungovat jako SSH server. Spuštěním následujícího příkazu nainstalujte server OpenSSH, pokud ještě není v systému nainstalován.

$ sudo apt install openssh-server

Vygenerujte klíč SSH

Vygenerujte páry klíčů SSH pro spouštění příkazů na vzdáleném serveru. Spuštěním následujícího příkazu vytvořte veřejný klíč a soukromý klíč. Soukromý klíč je uložen na vzdáleném serveru a veřejné klíče jsou bezpečně uloženy v klientovi.

$ ssh-keygen -t rsa

Po provedení výše uvedeného příkazu budete dotázáni na název souboru, do kterého bude klíč uložen. Stiskněte klávesu Enter klíč k zachování výchozího názvu souboru veřejného klíče, což je id_rsa.pub . Dále budete požádáni o heslo pro přihlášení. Stiskněte znovu Enter stiskněte dvakrát, chcete-li ponechat prázdné heslo. Po vygenerování klíčů se zobrazí následující podobný výstup.

Vytvořte soubor „authorized_keys“

Soubor id_rsa.pub obsahuje veřejný klíč připojení SSH, který je uložen ve složce ~ / .ssh / vzdáleného hostitele. Klientský počítač také potřebuje veřejný klíč pro připojení ke vzdálenému hostiteli, který bude zkopírován v další části výukového programu. Ve složce ~ / .ssh vzdáleného hostitele, která obsahuje veřejný klíč, musíte vytvořit soubor author_keys. Spuštěním následujícího příkazu přesuňte soubor id_rsa.pub do souboru ~ / .ssh / author_keys.

$ mv ~ / .ssh / id_rsa.pub ~ / .ssh / autorizované_klíče

Chyba se nezobrazí, pokud byl soubor přesunut správně, jako na následujícím obrázku.

Změňte konfigurační soubor

Chcete-li vytvořit připojení SSH bez hesla, musíte na počítači serveru nastavit některé konfigurační parametry. Spuštěním následujícího příkazu otevřete soubor sshd_config pomocí editoru nano a nastavte požadované hodnoty parametrů.

$ sudo nano / etc / ssh / sshd_config

Nastavením hodnoty PasswordAuthentication na no deaktivujete možnost textového hesla pro připojení SSH.

Číslo ověření hesla

Uložte a zavřete soubor. Spuštěním následujícího příkazu restartujte službu SSH.

$ sudo systemctl restart ssh

Spusťte následující příkaz pro nastavení autorizačních bitů v souboru author_keys, abyste zabránili neoprávněnému přístupu k tomuto souboru.

$ chmod 600 ~ / .ssh / autorizované_klíče

Zkopírujte veřejný klíč do klientského počítače

Nyní se přihlaste do klientského počítače, ze kterého spouštíte příkaz ssh, abyste vytvořili připojení SSH se vzdáleným hostitelem. Zde byly dva uživatelské účty z Ubuntu použity ke kontrole připojení SSH na místním serveru. V tomto kurzu byl jeden uživatelský účet použit jako klient a jiný uživatelský účet byl použit jako server.

Spusťte následující příkaz a vytvořte složku s názvem ~ / .ssh na klientském počítači, pokud neexistuje.

$ mkdir ~ / .ssh

Spuštěním následujícího příkazu zkopírujte veřejný klíč ze vzdáleného hostitele do složky ~ / .ssh klienta.

$ scp [e-mail chráněný]:/home/fahmida/.ssh/id_rsa ~ / .ssh /

Abyste mohli zkopírovat veřejný klíč do klientského počítače, musíte zadat heslo uživatelského jména vzdáleného hostitele. Pokud byl soubor zkopírován správně, získáte následující výstup. Klientský počítač je nyní připraven navázat spojení se serverovým počítačem prostřednictvím služby SSH.

Přihlaste se k počítači serveru pomocí SSH bez hesla

Nyní je veřejný klíč přítomen na klientských i serverových počítačích. Když klientský počítač odešle požadavek na připojení serveru pomocí příkazu ssh, server porovná veřejný klíč klienta s veřejným klíčem serveru. Pokud jsou nalezeny shody, je vytvořeno spojení z klienta na server. K serveru nebo ke vzdálenému hostiteli se můžete připojit pomocí názvu hostitele nebo adresy IP. Místní server použil tento kurz k ukázce použití klíče autorizovaný_klíč k navázání připojení SSH z klientského počítače na serverový počítač. Jeden účet byl použit jako serverový počítač, na kterém je nainstalován server OpenSSH, a další účet zde byl použit jako klientský počítač. Spusťte následující příkaz na klientském počítači pro připojení k serveru.

$ ssh [e-mail chráněný]

Po provedení výše uvedeného příkazu se objeví následující výstup. Výstup ukazuje, že uživatelské jméno klientského počítače je „yesmin“. Uživatelské jméno serverového počítače je „fahmida“. Připojení SSH bylo navázáno správně, protože se uživatelské jméno změnilo z ‚yesmin‘ na ‚fahmida‘. K obsahu serverového počítače je nyní možné přistupovat bez problémů. Nyní, když uživatel spustí příkaz, je výstup generován na základě počítače serveru.

diplom

Použití autorizovaných klíčů k navázání připojení SSH bylo vysvětleno v tomto kurzu založeném na localhost. Stejný proces můžete provést pro vytvoření připojení SSH pro vzdálený hostitel. Můžete také použít příkaz ssh-copy-id k připojení SSH k serveru uvedenému v jiném tutoriálu.


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

  2. Server Ubuntu 20.04 SSH

  3. Jak nainstalovat a nakonfigurovat server NFS na Ubuntu 20.04

  1. Jak nainstalovat a nakonfigurovat VNC na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat VNC na Ubuntu 18.04

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

  1. Jak nakonfigurovat replikaci MySQL Master-Slave na Ubuntu 18.04

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

  3. Jak nakonfigurovat HAProxy na serveru Debian 9 / Ubuntu 16.04