Protokol SSH pro vzdálené připojení k serverům podporuje použití párů klíčů namísto přihlašování na základě hesla. Soukromý klíč existuje na stroji, který spouští připojení (obvykle pracovní stanice), a veřejný klíč existuje v uživatelském účtu na vzdáleném serveru. Když se pokusíte o připojení, veřejný a soukromý klíč spolupracují na ověření uživatele.
Ověřování pomocí páru klíčů je bezpečnější než ověřování založené na hesle. Pokud se pravidelně připojujete ze stejných počítačů, deaktivace ověřování na základě hesla prostřednictvím SSH a povolení pouze ověřování pomocí páru klíčů chrání váš server před pokusy o přihlášení hrubou silou.
Další informace o používání SSH pro připojení k serverům naleznete v následujících článcích:
- Informace o připojení a generování klíčů na příkazovém řádku systému Linux® nebo terminálu macOS® X naleznete v části:Připojení k serveru pomocí SSH v systému Linux nebo Mac OS.
- Informace o použití PuTTY® v systému Microsoft® Windows® k vytváření připojení SSH naleznete v části:Připojení k Linuxu z Windows pomocí PuTTY.
- Informace o použití PuTTYgen® v systému Windows ke generování párů klíčů naleznete v části:Generování klíčů RSA pomocí SSH – PuTTYgen
Tento článek pojednává o použití nástroje příkazového řádku python-novaclient ke generování páru klíčů a přiřazení jeho veřejného klíče k serveru Linux® při vytváření serveru.
Můžete také spravovat páry klíčů přímo pomocí rozhraní API cloudových serverů.
Předpoklady
Nainstalujte klienta python-nova na klientském počítači. Podrobné pokyny ke konfiguraci klienta naleznete v části Použití python-novaclient s cloudem Rackspace.
Vytvořte pár klíčů
keypair
příkaz v python-novaclient vytvoří nebo nahraje existující pár klíčů a přiřadí jej k názvu, na který se pak můžete odkázat při sestavování.
Nový pár klíčů můžete vytvořit pomocí keypair-add
příkaz pro nova
vynechání názvu dvojice klíčů jako argumentu. Operace API uloží veřejný klíč do vašeho uživatelského profilu. Výstupem příkazu je soukromý klíč.
Chcete-li například vytvořit pár klíčů s názvem mykey
a výstup do souboru .ssh adresář aktuálního uživatele, můžete spustit následující příkaz:
nova keypair-add mykey > ~/.ssh/webserver_rsa
Poznámka :Pojmenujte soubor klíčů libovolným názvem a vložte jej na místo, kde budete moci později. Pokud generujete více klíčů pro různé servery, je užitečné pojmenovat soubory klíčů po serverech.
Ve vašem profilu existuje pouze veřejný klíč. Pokud soukromý klíč ztratíte, musíte vygenerovat nový pár klíčů.
Nahrát existující klíč
Pokud již máte vygenerovaný pár klíčů, můžete přidat veřejný klíč do svého profilu pomocí keypair-add
příkaz pro nova
pomocí --pub-key
možnost, jak ukazuje následující příklad:
nova keypair-add --pub-key id_rsa.pub mykey
Seznam klíčů
Chcete-li zobrazit seznam klíčů spojených s vaším profilem, použijte keypair-list
příkaz pro nova
, jak ukazuje následující příklad:
nova keypair-list
Zobrazit klíčové podrobnosti
Chcete-li zobrazit podrobnosti o konkrétním veřejném klíči ve svém seznamu, použijte keypair-show
příkaz pro nova
a uveďte název, který jste přiřadili páru klíčů, jak ukazuje následující příklad:
nova keypair-show mykey
Tento příkaz můžete použít k načtení vašeho veřejného klíče pro použití s jiným serverem.
Smazat klíč
Chcete-li ze svého profilu odstranit veřejný klíč, použijte keypair-delete
příkaz pro nova
a uveďte název, který jste přiřadili páru klíčů, jak je znázorněno v následujícím příkladu:
nova keypair-delete mykey
Vytvoření serveru s vloženým klíčem
Chcete-li vytvořit server, který obsahuje uložený veřejný klíč pro uživatele root, použijte následující příkaz pro vytvoření spouštěcího serveru s --key-name
argument:
nova boot --flavor performance1-1 --image <image-id> --key-name mykey Test_Server
Odpověď na příkaz zobrazí informace o vašem serveru, včetně key_name: mykey
pole zobrazující klíč spojený s tímto serverem.
Připojení k serveru pomocí páru klíčů
Jakmile je server, který jste vytvořili pomocí páru klíčů, uveden do provozu, můžete se přihlásit pomocí tohoto páru klíčů.
V systémech Linux a macOS můžete přidat svůj soukromý klíč ke svému uživatelskému účtu .ssh a pojmenujte svůj server v ~/.ssh/config soubor, jak je znázorněno v následujícím příkladu:
Host myservername
User myuser
HostName myServerDnsOrIp
IdentityFile /path/to/appropriate/ssh/rsa/private/key
Nebo můžete použít -i
možnost pro ssh
k identifikaci soukromého klíče pro připojení. Například:
ssh -i ~/.ssh/webserver_rsa [email protected]
Páry klíčů a řízení přístupu na základě rolí (RBAC)
Páry klíčů jsou uloženy pro uživatele, nikoli pro účty. Uživatel nakonfigurovaný na účtu proto nemůže vidět klíče ostatních uživatelů účtu ani s nimi manipulovat, bez ohledu na roli přiřazenou tomuto uživateli.
Pomocí karty Zpětná vazba můžete přidat komentáře nebo položit otázky. Můžete s námi také zahájit konverzaci.