Sdílet prostřednictvím


Přístup SSH k serverům s podporou Azure Arc

Můžete povolit připojení založená na SSH na serverech s podporou Arc bez nutnosti veřejné IP adresy nebo dalších otevřených portů. Tyto funkce je možné používat interaktivně, automatizovaně nebo s existujícími nástroji založenými na SSH a rozšířit tak dopad stávajících nástrojů pro správu na serverech s podporou Azure Arc.

Výhody

Přístup SSH k serverům s podporou Arc poskytuje následující výhody:

  • Není vyžadována veřejná IP adresa ani otevřené SSH porty.
  • Přístup k počítačům s Windows a Linux
  • Možnost přihlásit se jako místní uživatel nebo uživatel Azure (pouze Linux)
  • Podpora pro další nástroje založené na OpenSSH s podporou konfiguračních souborů

Požadavky

  • Oprávnění uživatele: Role vlastníka nebo přispěvatele přiřazena cílovému serveru s podporou Arc.
  • Server s podporou arc:
    • Verze Hybrid Agent: 1.31.xxxx nebo vyšší
    • Služba SSH ("sshd") musí být povolena.

V případě Linuxu nainstalujte openssh-server přes správce balíčků. Spuštěním následujícího příkazu můžete zkontrolovat, jestli je sshd spuštěný v Linuxu:

ps -aux | grep sshd

Pro Windows vizte Enable OpenSSH. Pomocí následujících příkazů můžete zkontrolovat, jestli je ssh nainstalovaný a spuštěný:

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

# Check the sshd service is running
Get-Service sshd

Ověřovací systém Microsoft Entra

Pokud k ověřování používáte Microsoft Entra, musíte nainstalovat aadsshlogin a aadsshlogin-selinux (v případě potřeby) na server s podporou Arc. Tyto balíčky se nainstalují s rozšířením AADSSHLoginForLinux virtuálního počítače.

Musíte také nakonfigurovat přiřazení rolí pro virtuální počítač. K autorizaci přihlášení virtuálního počítače se používají dvě role Azure:

  • Přihlášení správce virtuálního počítače: Uživatelé, kteří mají přiřazenou tuto roli, se můžou přihlásit k virtuálnímu počítači Azure s oprávněními správce.
  • Přihlášení uživatele virtuálního počítače: Uživatelé, kteří mají přiřazenou tuto roli, se můžou přihlásit k virtuálnímu počítači Azure s běžnými uživatelskými oprávněními.

Uživatel Azure s rolí Vlastník nebo Přispěvatel přiřazený k virtuálnímu počítači nemá automaticky oprávnění pro přihlášení Microsoft Entra k virtuálnímu počítači přes SSH. Existuje záměrné (a auditované) oddělení mezi skupinou lidí, kteří ovládají virtuální stroje, a skupinou lidí, kteří k virtuálním strojům mohou přistupovat.

Poznámka

Role pro přihlášení správce virtuálního počítače a role pro přihlášení uživatele virtuálního počítače používají dataActions a mohou být přiřazeny na úrovni skupiny pro správu, předplatného, skupiny prostředků nebo rozsahu prostředků. Doporučujeme, abyste přidělovali role na úrovni skupiny pro správu, předplatného nebo zdroje, a nikoli na úrovni jednotlivých virtuálních strojů. Tato praxe se vyhýbá riziku dosažení limitu přiřazení rolí Azure na předplatné.

Dostupnost

Přístup k serverům s povoleným Arc přes SSH je v současné době podporován ve všech cloudových regionech podporovaných servery s povoleným Arc.

Povolení přístupu SSH k serverům s podporou Arc

Pokud chcete povolit přístup SSH k serverům s podporou arc, postupujte podle kroků v této části.

Zaregistrujte poskytovatele prostředků HybridConnectivity

Poznámka

Toto je jednorázová operace, která musí být provedena pro každé předplatné.

Zkontrolujte, jestli je zaregistrovaný poskytovatel prostředků HybridConnectivity.

az provider show -n Microsoft.HybridConnectivity -o tsv --query registrationState

Pokud poskytovatel prostředků není zaregistrovaný, zaregistrujte ho spuštěním následujícího příkazu:

az provider register -n Microsoft.HybridConnectivity

Tato operace může trvat 2-5 minut. Než budete pokračovat k dalšímu kroku, ujistěte se, že je registrace dokončená.

Vytvořit výchozí koncový bod připojení

Tento krok musí být dokončen pro každý server s podporou Arc. Tyto příkazy ale nemusíte spouštět, protože by se mělo dokončit automaticky při prvním připojení.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15 --body '{"properties": {"type": "default"}}'

Poznámka

Pokud používáte Azure CLI z PowerShell, mělo by se použít následující.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15 --body '{\"properties\":{\"type\":\"default\"}}'

Ověřit vytvoření koncového bodu:

az rest --method get --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15

Nainstalujte místní nástroj příkazového řádku

Funkce SSH jsou k dispozici v rozšíření Azure CLI a modulu Azure PowerShellu. Nainstalujte vhodný nástroj pro vaše prostředí.

az extension add --name ssh

Povolení funkcí na serveru s podporou Arc

Pokud chcete použít funkci připojení SSH, musíte aktualizovat konfiguraci služby v koncovém bodu připojení na serveru s podporou arc, aby bylo možné připojení SSH ke konkrétnímu portu. Můžete povolit připojení pouze k jednomu portu. Nástroje rozhraní příkazového řádku se pokusí aktualizovat povolený port za běhu, ale port je možné ručně nakonfigurovat pomocí následujícího příkazu. Pokud pro připojení SSH používáte nedefaultní port, nahraďte port 22 požadovaným portem.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default/serviceconfigurations/SSH?api-version=2023-03-15 --body "{\"properties\": {\"serviceName\": \"SSH\", \"port\": 22}}"

Poznámka

Po aktualizaci konfigurace služby může dojít ke zpoždění, než se budete moct připojit.

Volitelné: Instalace rozšíření Microsoft Entra login

Pokud chcete pro ověřování na počítačích s Linuxem používat Microsoft Entra, musíte ho nainstalovat aadsshlogin a aadsshlogin-selinux (podle potřeby) na server s podporou Arc. Tyto balíčky se nainstalují s rozšířením AADSSHLoginForLinux virtuálního počítače.

Pokud chcete přidat toto rozšíření na webu Azure Portal, přejděte do svého clusteru a pak v nabídce služby v části Nastavení vyberte Rozšíření. Vyberte Přidat a pak vyberte přihlášení SSH založené na Azure AD – Azure Arc a dokončete instalaci. Rozšíření můžete také nainstalovat místně přes správce balíčků spuštěním apt-get install aadsshlogin nebo následujícím příkazem:

az connectedmachine extension create --machine-name <arc enabled server name> --resource-group <resourcegroup> --publisher Microsoft.Azure.ActiveDirectory --name AADSSHLogin --type AADSSHLoginForLinux --location <location>

Příklady

Pokud chcete zobrazit příklady a další podrobnosti, podívejte se na stránku dokumentace Az CLI pro az ssh nebo stránku dokumentace Azure PowerShellu pro Az.Ssh.

Zakázat SSH na servery s podporou Arc

Pokud potřebujete odebrat přístup SSH k serverům s podporou Arc, postupujte podle následujících kroků.

  1. Odeberte port SSH a funkci ze serveru s Arc-enabled:

    az rest --method delete --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default/serviceconfigurations/SSH?api-version=2023-03-15 --body '{\"properties\": {\"serviceName\": \"SSH\", \"port\": \"22\"}}'
    
  2. Odstraňte výchozí koncový bod připojení.

    az rest --method delete --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15
    

Další kroky