Připojení k virtuálnímu počítači pomocí Bastionu a nativního klienta s Linuxem
Tento článek vám pomůže připojit se přes Azure Bastion k virtuálnímu počítači ve virtuální síti pomocí nativního klienta na místním počítači s Linuxem. Funkce nativního klienta umožňuje připojit se k cílovým virtuálním počítačům prostřednictvím Bastionu pomocí Azure CLI a rozšiřuje možnosti přihlašování, aby zahrnovaly místní pár klíčů SSH a ID Microsoft Entra. Další informace a postup konfigurace Bastionu pro nativní připojení klientů najdete v tématu Konfigurace Bastionu pro nativní připojení klientů. Připojení ions prostřednictvím nativního klienta vyžadují skladovou položku Bastion Standard nebo vyšší.
Jakmile nakonfigurujete Bastion pro nativní podporu klientů, můžete se k virtuálnímu počítači připojit pomocí nativního klienta Linuxu. Metoda, kterou používáte pro připojení, závisí na klientovi, ze kterému se připojujete, a na virtuálním počítači, ke kterému se připojujete. Následující seznam ukazuje některé z dostupných způsobů, jak se můžete připojit z nativního klienta linuxu. Úplný seznam s dostupnými kombinacemi připojení nebo funkcí klienta najdete v Připojení k virtuálním počítačům.
- Připojení k virtuálnímu počítači s Linuxem pomocí příkazu az network bastion ssh.
- Připojení k virtuálnímu počítači s Windows pomocí příkazu az network bastion tunnel.
- Připojení k libovolnému virtuálnímu počítači pomocí příkazu az network bastion tunnel.
- Nahrajte soubory do cílového virtuálního počítače přes SSH pomocí příkazu az network bastion tunnel. Tento příkaz v současné době nepodporuje stahování souborů z cílového virtuálního počítače do místního klienta.
Požadavky
Než začnete, ověřte, že máte následující požadavky:
- Nainstaluje se nejnovější verze příkazů rozhraní příkazového řádku (verze 2.32 nebo novější). Rozhraní příkazového řádku pro Bastion můžete aktualizovat pomocí
az extension update --name bastion
. Informace o instalaci příkazů rozhraní příkazového řádku najdete v tématech Instalace Azure CLI a Začínáme s Azure CLI. - Azure Bastion je už nasazený a nakonfigurovaný pro vaši virtuální síť. Postup najdete v tématu Konfigurace Bastionu pro nativní klientská připojení.
- Virtuální počítač ve virtuální síti.
- ID prostředku virtuálního počítače. ID prostředku se dá snadno nacházet na webu Azure Portal. Přejděte na stránku Přehled vašeho virtuálního počítače a výběrem odkazu zobrazení JSON otevřete JSON prostředku. Zkopírujte ID prostředku v horní části stránky do schránky, abyste ho mohli použít později při připojování k virtuálnímu počítači.
- Pokud se chcete přihlásit k virtuálnímu počítači pomocí přihlašovacích údajů Microsoft Entra, ujistěte se, že je váš virtuální počítač nastavený pomocí jedné z následujících metod:
- Povolte přihlášení Microsoft Entra pro virtuální počítač s Windows nebo virtuální počítač s Linuxem.
- Nakonfigurujte virtuální počítač s Windows tak, aby byl připojený k Microsoft Entra.
- Nakonfigurujte virtuální počítač s Windows tak, aby byl hybridním připojeným microsoftem Entra.
Ověření rolí a portů
Ověřte, že jsou pro připojení k virtuálnímu počítači nakonfigurované následující role a porty.
Požadované role
Role čtenáře na virtuálním počítači.
Role čtenáře na síťové kartě s privátní IP adresou virtuálního počítače.
Role čtenáře prostředku Azure Bastion.
Pokud používáte přihlašovací metodu Microsoft Entra, Správa istrator Login nebo Role Přihlášení uživatele virtuálního počítače. Musíte to udělat jenom v případě, že povolíte přihlášení k Microsoft Entra pomocí procesů popsaných v jednom z těchto článků:
Porty
Pokud se chcete připojit k virtuálnímu počítači s Linuxem pomocí nativní podpory klienta, musíte mít na virtuálním počítači s Linuxem otevřené následující porty:
- Příchozí port: SSH (22) nebo
- Příchozí port: Vlastní hodnota (při připojení k virtuálnímu počítači přes Azure Bastion pak budete muset zadat tento vlastní port).
Pokud se chcete připojit k virtuálnímu počítači s Windows pomocí nativní podpory klienta, musíte mít na virtuálním počítači s Windows otevřené následující porty:
- Příchozí port: RDP (3389) nebo
- Příchozí port: Vlastní hodnota (při připojení k virtuálnímu počítači přes Azure Bastion pak budete muset zadat tento vlastní port).
Informace o tom, jak nejlépe nakonfigurovat skupiny zabezpečení sítě se službou Azure Bastion, najdete v tématu Práce s přístupem k NSG a službou Azure Bastion.
Připojení k virtuálnímu počítači s Linuxem
Kroky v následujících částech vám pomůžou připojit se k virtuálnímu počítači s Linuxem z nativního klienta Linuxu pomocí příkazu az network bastion . Toto rozšíření lze nainstalovat spuštěním příkazu az extension add --name bastion
.
Při připojení pomocí tohoto příkazu se přenosy souborů nepodporují. Pokud chcete nahrát soubory, připojte se místo toho pomocí příkazu az network bastion tunnel .
Tento příkaz vám umožní provést následující akce:
- Připojení k virtuálnímu počítači s Linuxem pomocí SSH.
- Ověřování prostřednictvím ID Microsoft Entra
- Připojení do souběžných relací virtuálních počítačů v rámci virtuální sítě.
Pokud se chcete přihlásit, použijte jeden z následujících příkladů. Jakmile se přihlásíte k cílovému virtuálnímu počítači, otevře se nativní klient na vašem počítači s relací virtuálního počítače.
Pár klíčů SSH
Pokud se chcete k virtuálnímu počítači přihlásit pomocí páru klíčů SSH, použijte následující příklad.
az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId>" --auth-type "ssh-key" --username "<Username>" --ssh-key "<Filepath>"
Ověřování Microsoft Entra
Pokud se přihlašujete k virtuálnímu počítači s povoleným přihlášením Microsoft Entra, použijte následující příklad. Další informace najdete v tématu Virtuální počítače Azure s Linuxem a ID Microsoft Entra.
az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "AAD"
Uživatelské jméno a heslo
Pokud se k virtuálnímu počítači přihlašujete pomocí místního uživatelského jména a hesla, použijte následující příklad. Zobrazí se výzva k zadání hesla pro cílový virtuální počítač.
az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "password" --username "<Username>"
Připojení SSH k IP adrese virtuálního počítače s Linuxem
Místo ID prostředku se můžete připojit k privátní IP adrese virtuálního počítače. Mějte na paměti, že ověřování Microsoft Entra a vlastní porty a protokoly nejsou podporovány při použití tohoto typu připojení. Další informace o připojeních založených na IP adresách najdete v tématu Připojení k virtuálnímu počítači – IP adresa.
az network bastion
Pomocí příkazu nahraďte --target-resource-id
a zadanou --target-ip-address
IP adresou pro připojení k virtuálnímu počítači. Následující příklad používá --ssh-key pro metodu ověřování.
az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-address "<VMIPAddress>" --auth-type "ssh-key" --username "<Username>" --ssh-key "<Filepath>"
Připojení k virtuálnímu počítači – příkaz tunelu
Příkaz az network bastion tunnel je další způsob, jak se můžete připojit ke svým virtuálním počítačům. Když použijete tento příkaz, můžete udělat toto:
- Připojení z nativních klientů na místních počítačích s jiným systémem než Windows. (Například počítač s Linuxem.)
- Připojení k virtuálnímu počítači pomocí SSH nebo RDP. (Tunel bastionu nepřevádí webové servery ani hostitele.)
- Použijte nativního klienta podle svého výběru.
- Nahrajte soubory do cílového virtuálního počítače z místního počítače. Tento příkaz v současné době nepodporuje stahování souborů z cílového virtuálního počítače do místního klienta.
Omezení:
- V této funkci se nepodporuje přihlášení pomocí privátního klíče SSH uloženého ve službě Azure Key Vault. Před přihlášením k virtuálnímu počítači s Linuxem pomocí páru klíčů SSH stáhněte privátní klíč do souboru na místním počítači.
- Tato funkce není v Cloud Shellu podporovaná.
Kroky:
Přihlaste se ke svému účtu Azure pomocí
az login
. Pokud máte více než jedno předplatné, můžete je zobrazit pomocíaz account list
a vybrat předplatné obsahující váš prostředek Bastion pomocíaz account set --subscription "<subscription ID>"
.Otevřete tunel na cílový virtuální počítač.
az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"
Připojení k cílovému virtuálnímu počítači pomocí SSH nebo RDP, nativního klienta podle vašeho výběru a portu místního počítače, který jste zadali v předchozím kroku.
Můžete například použít následující příkaz, pokud máte na místním počítači nainstalovaný klient OpenSSH:
ssh <username>@127.0.0.1 -p <LocalMachinePort>
Tunelování na IP adresu virtuálního počítače
Místo ID prostředku se můžete připojit také k privátní IP adrese virtuálního počítače. Ověřování Microsoft Entra a vlastní porty a protokoly nejsou podporovány při použití tohoto typu připojení. Další informace o připojeních založených na IP adresách najdete v tématu Připojení k virtuálnímu počítači – IP adresa.
az network bastion tunnel
Pomocí příkazu nahraďte --target-resource-id
a zadanou --target-ip-address
IP adresou pro připojení k virtuálnímu počítači.
az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-address "<VMIPAddress>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"
Tunel s více připojeními
Do souboru $HOME.ssh\config přidejte následující kód.
Host tunneltunnel HostName 127.0.0.1 Port 2222 User mylogin StrictHostKeyChecking=No UserKnownHostsFile=\\.\NUL
Přidejte připojení tunelu k vytvořenému připojení tunelu.
az network bastion tunnel --name mybastion --resource-group myrg --target-resource-id /subscriptions/<mysubscription>/resourceGroups/myrg/providers/Microsoft.Compute/virtualMachines/myvm --resource-port 22 --port 22
Vytvořte tunel ssh v tunelu bastionu.
ssh -L 2222:127.0.0.1:22 mylogin@127.0.0.1
Pomocí nástroje VS Code se připojte k připojení k tunelu.