GNU/Linux >> Znalost Linux >  >> Linux

Jak přidat veřejný klíč SSH na server

Autentizace pomocí veřejného klíče vám umožňuje přistupovat na server přes SSH bez hesla. Zde jsou dva způsoby, jak zkopírovat veřejný klíč ssh na server.

Věřím, že rozumíte základnímu konceptu SSH. Váš linuxový server má povoleno ssh. Na svém osobním počítači jste vygenerovali ssh klíče. Nyní chcete nahrát svůj veřejný klíč do autorizovaných klíčů serveru, abyste k němu měli přístup, aniž byste museli neustále zadávat heslo k účtu.

Tento rychlý tutoriál vám ukáže dva způsoby, jak přidat veřejný klíč SSH na server.

Požadavky

Než to uvidíte, ujasněme si, co byste již měli mít:

  • Váš cílový server by měl mít povoleno ssh
  • Měli byste mít vygenerované veřejné a soukromé ssh klíče (stačí použít příkaz ssh-keygen -t rsa )
  • Na serveru byste měli mít uživatelský účet a heslo. Dokonce i účet root bude stačit.
  • Měli byste znát IP adresu serveru

Nyní, když jste se ujistili o výše uvedených čtyřech požadavcích, pojďme se podívat, jak používat ověřování pomocí veřejného klíče.

Ověření se provádí na uživatelskou základnu, takže veřejný klíč jde do domácnosti zamýšleného uživatele.

Metoda 1:Automaticky zkopírovat ssh klíč na server

První metoda spočívá v tom, že koncový uživatel zkopíruje veřejný klíč svého osobního počítače do seznamu autorizovaných klíčů na vzdáleném serveru.

Zde předpokládám, že jste se mohli přihlásit ke vzdálenému serveru pomocí ssh [email protected]_of_server. Požádá vás o heslo vašeho účtu a vy vstoupíte na server.

Pokud na server přidáte svůj veřejný klíč, měli byste být schopni se přihlásit, aniž byste museli neustále zadávat heslo.

OpenSSH poskytuje užitečné volání nástroje nazvané ssh-copy-id pro kopírování veřejných klíčů ssh do vzdálených systémů. Dokonce vytváří požadované adresáře a soubory.

Jak jsem již zmínil dříve, měli byste znát uživatelské jméno a heslo k serveru, ke kterému chcete přistupovat prostřednictvím ověřování pomocí veřejného klíče.

ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]_ADDRESS_OF_THE_SERVER

Po zobrazení výzvy zadejte heslo pro svůj uživatelský účet na vzdáleném serveru. Váš veřejný klíč by měl být automaticky zkopírován do příslušné složky na vzdáleném serveru.

Použil jsem ~/.ssh/id_rsa.pub, protože to je výchozí umístění pro veřejný klíč ssh. Pokud jej máte na nějakém jiném místě, měli byste to použít ve výše uvedeném příkazu.

Metoda 2:Ručně zkopírujte veřejný klíč ssh na server

První metoda měla akci na straně uživatele. Řekněme, že jste správce systému a váš server neumožňuje přihlášení SSH pomocí hesla. Jediný způsob, jak získat přístup k serveru, je pomocí ověřování pomocí veřejného klíče SSH.

V takovém případě můžete koncového uživatele požádat, aby poskytl svůj veřejný klíč. Nyní můžete vytvořit adresář .ssh/authorized_keys a poté sem zkopírovat veřejný klíč.

Dovolte mi ukázat kroky.

Krok 1:Získejte veřejný klíč

Požádejte koncového uživatele o poskytnutí veřejného klíče zadáním následujícího příkazu:

cat ~/.ssh/id_rsa.pub

Zobrazí se dlouhý náhodný řetězec začínající na ssh-rsa:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ3GIJzTX7J6zsCrywcjAM/7Kq3O9ZIvDw2OFOSXAFVqilSFNkHlefm1iMtPeqsIBp2t9cbGUf55xNDULz/bD/4BCV43yZ5lh0cUYuXALg9NI29ui7PEGReXjSpNwUD6ceN/78YOK41KAcecq+SS0bJ4b4amKZIJG3JWm49NWvoo0hdM71sblF956IXY3cRLcTjPlQ84mChKL1X7+D645c7O4Z1N3KtL7l5nVKSG81ejkeZsGFzJFNqvr5DuHdDL5FAudW23me3BDmrM9ifUmt1a00mWci/1qUlaVFft085yvVq7KZbF2OP2NQACUkwfwh+iSTP [email protected]

Tento text můžete získat prostřednictvím e-mailu nebo nástrojů pro zasílání zpráv. Normálně by to neměl být problém.

Krok 2:Vytvořte adresář ssh v domovském adresáři uživatele (jako správce systému )

Mějte na paměti, že tyto nové adresáře a soubory musíte vytvořit v domovském adresáři koncového uživatele, nikoli ve svém (root/sysadmin).

mkdir -p /home/user_name/.ssh && touch /home/user_name/.ssh/authorized_keys

Nyní otevřete tento soubor /home/user_name/.ssh/authorized_keys pomocí textového editoru, jako je Vim, a přidejte veřejný klíč uživatele zde:

vim /home/user_name/.ssh/authorized_keys

Uložte a zavřete soubor. Je téměř připraven.

Krok 3:Nastavte příslušné oprávnění k souboru

Mít příslušná oprávnění k souboru ssh je velmi důležité, jinak se zobrazí chyby jako Permission denied (publickey).

Nejprve se ujistěte, že jste nastavili správná oprávnění souboru:

chmod 700 /home/user_name/.ssh && chmod 600 /home/user_name/.ssh/authorized_keys

Tyto soubory jste vytvořili pomocí účtu root nebo pomocí vlastních účtů správce pro jiného uživatele. Musíte změnit vlastnictví na uživatele:

chown -R username:username /home/username/.ssh

Nyní, když je hotovo, můžete koncového uživatele požádat, aby se přihlásil k serveru.

Dejte mi vědět, pokud narazíte na nějaké problémy nebo pokud máte nějaký návrh na toto téma.


Linux
  1. Jak nastavit klíče SSH

  2. Jak se připojit k ssh serveru pomocí plink a cmd a veřejného klíče

  3. Ssh – vzhledem k soukromému klíči Ssh, jak obnovit veřejný klíč?

  1. Jak vygenerovat klíč SSH ve Windows 10

  2. Jak SSH zavádí bezpečnou komunikaci

  3. Jak SSH na server pomocí jiného serveru?

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

  2. Jak nastavit klíč SSH na serveru Plesk

  3. Jak přidat klíč SSH pro přístup k cPanel SSH