Jak používat klíče SSH s Windows v Azure
Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s ✔️ Linuxem
Tento článek je určený uživatelům Windows, kteří chtějí vytvářet a používat klíče SSH (Secure Shell ) pro připojení k virtuálním počítačům s Linuxem v Azure. Klíče SSH můžete také generovat a ukládat v Azure Portal, které se mají použít při vytváření virtuálních počítačů na portálu.
Pokud chcete použít klíče SSH z klienta s Linuxem nebo macOS, projděte si rychlé kroky. Podrobnější přehled SSH najdete v tématu Věnovaném podrobným krokům: Vytvoření a správa klíčů SSH pro ověřování k virtuálnímu počítači s Linuxem v Azure.
Přehled SSH a klíčů
SSH je šifrovaný protokol připojení, který umožňuje zabezpečená přihlášení k nezabezpečeným připojením. SSH je výchozí protokol připojení pro virtuální počítače s Linuxem hostované v Azure. I když samotný SSH poskytuje šifrované připojení, používání hesel s protokolem SSH stále nechává virtuální počítač zranitelný vůči útokům hrubou silou. Doporučujeme připojit se k virtuálnímu počítači přes SSH pomocí páru veřejného a privátního klíče, který se označuje také jako klíče SSH.
Pár veřejného a soukromého klíče je jako zámek na vašich předních dveřích. Zámek je vystaven veřejnosti, každý, kdo má správný klíč, může otevřít dveře. Klíč je soukromý a dává se pouze lidem, kterým důvěřujete, protože ho můžete použít k odemknutí dveří.
Veřejný klíč se umístí na virtuální počítač s Linuxem při vytváření virtuálního počítače.
Privátní klíč zůstane v místním systému. Chraňte tento privátní klíč. Nesdílejte ho.
Když se připojíte k virtuálnímu počítači s Linuxem, virtuální počítač otestuje klienta SSH, aby se ujistil, že má správný privátní klíč. Pokud má klient privátní klíč, udělí se mu přístup k virtuálnímu počítači.
V závislosti na zásadách zabezpečení vaší organizace můžete opakovaně použít jeden pár klíčů pro přístup k několika virtuálním počítačům a službám Azure. Pro každý virtuální počítač nepotřebujete samostatný pár klíčů.
Veřejný klíč můžete sdílet s kýmkoli, ale přístup k privátnímu klíči byste měli mít jenom vy (nebo vaše místní infrastruktura zabezpečení).
Podporované formáty klíčů SSH
Azure v současné době podporuje páry veřejného a privátního klíče RSA protokolu SSH 2 (SSH-2) s minimální délkou 2048 bitů. Jiné formáty klíčů, jako jsou ED25519 a ECDSA, se nepodporují.
Klienti SSH
Nedávné verze Windows 10 zahrnují příkazy klienta OpenSSH pro vytváření a používání klíčů SSH a vytváření připojení SSH z PowerShellu nebo příkazového řádku.
K virtuálnímu počítači se můžete také připojit pomocí Bash v Azure Cloud Shell. Cloud Shell můžete použít ve webovém prohlížeči, z Azure Portal nebo jako terminál v editoru Visual Studio Code pomocí rozšíření Azure Account.
Můžete také nainstalovat Subsystém Windows pro Linux pro připojení k virtuálnímu počítači přes SSH a používat další nativní linuxové nástroje v prostředí Bash.
Vytvoření páru klíčů SSH
Nejjednodušší způsob, jak vytvořit a spravovat klíče SSH, je použít portál k jejich vytvoření a uložení pro opakované použití.
Páry klíčů můžete vytvořit také pomocí Azure CLI pomocí příkazu az sshkey create , jak je popsáno v tématu Generování a ukládání klíčů SSH.
Pokud chcete na místním počítači vytvořit pár klíčů SSH pomocí ssh-keygen
příkazu z PowerShellu nebo příkazového řádku, zadejte následující příkaz:
ssh-keygen -m PEM -t rsa -b 2048
Zadejte název souboru nebo použijte výchozí hodnotu uvedenou v závorkách (například C:\Users\username/.ssh/id_rsa
). Zadejte heslo k souboru nebo nechte heslo prázdné, pokud nechcete použít přístupové heslo.
Vytvoření virtuálního počítače pomocí klíče
Pokud chcete vytvořit virtuální počítač s Linuxem, který k ověřování používá klíče SSH, zadejte při vytváření virtuálního počítače veřejný klíč SSH.
Pomocí Azure CLI zadáte cestu a název souboru veřejného klíče pomocí az vm create
parametru --ssh-key-value
a .
az vm create \
--resource-group myResourceGroup \
--name myVM \
--image Ubuntu2204\
--admin-username azureuser \
--ssh-key-value ~/.ssh/id_rsa.pub
V PowerShellu použijte New-AzVM
klíč SSH a přidejte ho do konfigurace virtuálního počítače pomocí . Příklad najdete v tématu Rychlý start: Vytvoření virtuálního počítače s Linuxem v Azure pomocí PowerShellu.
Pokud provádíte mnoho nasazení pomocí portálu, možná budete chtít nahrát veřejný klíč do Azure, kde ho můžete snadno vybrat při vytváření virtuálního počítače z portálu. Další informace najdete v tématu Nahrání klíče SSH.
Připojení k virtuálnímu počítači
S veřejným klíčem nasazeným na virtuálním počítači Azure a privátním klíčem v místním systému SSH k virtuálnímu počítači pomocí IP adresy nebo názvu DNS virtuálního počítače. Nahraďte azureuser a 10.111.12.123 v následujícím příkazu uživatelským jménem správce, IP adresou (nebo plně kvalifikovaným názvem domény) a cestou k privátnímu klíči:
ssh -i ~/.ssh/id_rsa azureuser@10.111.12.123
Pokud jste se k tomuto virtuálnímu počítači ještě nikdy nepřipojili, zobrazí se výzva k ověření otisku prstu hostitele. Je lákavé přijmout předaný otisk prstu, ale to vás vystavuje možné osobě uprostřed útoku. Vždy byste měli ověřit otisk prstu hostitele. Stačí, když se poprvé připojíte z klienta. Pokud chcete získat otisk hostitele prostřednictvím portálu, použijte příkaz Spustit s následujícím příkazem: ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub | awk '{print $2}'
.
Pokud chcete příkaz spustit pomocí rozhraní příkazového řádku, použijte příkazaz vm run-command invoke
.
Pokud jste při vytváření páru klíčů nakonfigurovali heslo, po zobrazení výzvy zadejte heslo.
Pokud virtuální počítač používá zásady přístupu za běhu, musíte před připojením k virtuálnímu počítači požádat o přístup. Další informace o zásadách za běhu najdete v tématu Správa přístupu k virtuálním počítačům pomocí zásad za běhu.
Další kroky
Informace o klíčích SSH v Azure Portal, které se mají použít při vytváření virtuálních počítačů, najdete v tématu Generování a ukládání klíčů SSH v Azure Portal.
Informace o klíčích SSH v Azure CLI, které se mají použít při vytváření virtuálních počítačů, najdete v tématu Generování a ukládání klíčů SSH pomocí Azure CLI.
Podrobné kroky, možnosti a pokročilé příklady práce s klíči SSH najdete v tématu Podrobný postup vytvoření párů klíčů SSH.
Pokud máte potíže s připojením k virtuálním počítačům s Linuxem pomocí SSH, projděte si téma Řešení potíží s připojením SSH k virtuálnímu počítači Azure s Linuxem.