Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Você pode habilitar conexões baseadas em SSH para servidores habilitados para Arc sem exigir um endereço IP público ou portas abertas adicionais. Essa funcionalidade pode ser usada de forma interativa, automatizada ou com ferramentas baseadas em SSH existentes, expandindo o impacto das ferramentas de gerenciamento existentes nos servidores habilitados para Azure Arc.
Benefícios
O acesso SSH a servidores habilitados para Arc oferece os seguintes benefícios:
- Nenhum endereço IP público ou portas SSH abertas necessárias
- Acesso a máquinas Windows e Linux
- Capacidade de iniciar sessão como um utilizador local ou um utilizador Azure (apenas Linux)
- Suporte para outras ferramentas baseadas em OpenSSH com suporte a ficheiro de configuração.
Pré-requisitos
- Permissões do Utilizador: Função de Proprietário ou Contribuidor atribuída ao servidor de destino com Arc habilitado.
- Servidor habilitado para Arc:
- Versão do Agente Híbrido: 1.31.xxxx ou superior
- O serviço SSH ("sshd") deve estar ativado.
Para Linux, instale openssh-server através de um gestor de pacotes. Você pode verificar se o sshd está sendo executado no Linux executando o seguinte comando:
ps -aux | grep sshd
Para Windows, veja Enable OpenSSH. Você pode verificar se o ssh está instalado e em execução com os seguintes comandos:
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
# Check the sshd service is running
Get-Service sshd
Sugestão
A partir do Windows Server 2025, o OpenSSH é instalado por padrão.
Autenticação do Microsoft Entra
Para usar o Microsoft Entra para autenticação, você deve instalar aadsshlogin e aadsshlogin-selinux (conforme apropriado) no servidor habilitado para Arc. Esses pacotes são instalados quando você implanta a extensão de AADSSHLoginForLinuxmáquina virtual (VM).
Você também deve configurar atribuições de função para a VM. Dois papéis do Azure são usados para autorizar o login na máquina virtual.
- Login de Administrador de Máquina Virtual: os usuários que têm essa função atribuída podem fazer logon em uma VM do Azure com privilégios de administrador.
- Login de Usuário da Máquina Virtual: os usuários que têm essa função atribuída podem fazer logon em uma VM do Azure com privilégios de usuário regulares.
Um utilizador do Azure com a função de Proprietário ou Colaborador atribuída a uma VM não tem automaticamente privilégios para iniciar sessão na VM via Microsoft Entra por SSH. Há uma separação intencional (e auditada) entre o conjunto de pessoas que controlam as máquinas virtuais e o conjunto de pessoas que podem aceder às máquinas virtuais. Como essas funções concedem um alto nível de acesso, considere usar o Microsoft Entra Privileged Identity Management para acesso just-in-time auditável.
Nota
As funções de Login de Administrador de Máquina Virtual e Login de Utilizador de Máquina Virtual utilizam dataActions e podem ser atribuídas ao grupo de gestão, subscrição, grupo de recursos, ou âmbito de recursos. Recomendamos que atribua os papéis ao nível do grupo de gestão, subscrição ou recurso e não ao nível de VM individual. Essa prática ajuda a evitar o risco de atingir o limite de atribuições de função do Azure por assinatura.
Disponibilidade
O acesso SSH a servidores habilitados para Arc é atualmente suportado em todas as regiões de nuvem suportadas por servidores habilitados para Arc.
Habilitar o acesso SSH a servidores habilitados para Arc
Para habilitar o acesso SSH a servidores habilitados para Arc, siga as etapas nesta seção.
Registar o fornecedor de recursos HybridConnectivity
Nota
Esta é uma operação única que precisa ser realizada em cada subscrição.
Verifique se o provedor de recursos HybridConnectivity está registrado:
az provider show -n Microsoft.HybridConnectivity -o tsv --query registrationState
Se o provedor de recursos não estiver registrado, execute o seguinte comando para registrá-lo:
az provider register -n Microsoft.HybridConnectivity
Esta operação pode demorar entre 2 a 5 minutos para concluir. Certifique-se de que o registo está completo antes de avançar para o passo seguinte.
Criar ponto final de conectividade padrão
Esta etapa deve ser concluída para cada servidor habilitado pelo Arc. No entanto, talvez não seja necessário executar esses comandos para fazer isso, pois ele deve ser concluído automaticamente na primeira conexão.
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"}}'
Nota
Se estiver usando a CLI do Azure a partir do PowerShell, o comando a seguir deve ser usado.
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\"}}'
Validar a criação de endpoint
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
Instalar ferramenta de linha de comando local
A funcionalidade SSH é fornecida em uma extensão da CLI do Azure e em um módulo do Azure PowerShell. Instale a ferramenta apropriada para o seu ambiente.
az extension add --name ssh
Habilite a funcionalidade em seu servidor habilitado para Arc
Para usar o recurso de conexão SSH, você deve atualizar a Configuração do Serviço no Ponto de Extremidade de Conectividade no servidor habilitado para Arc para permitir a conexão SSH com uma porta específica. Só pode permitir a ligação a uma única porta. As ferramentas da CLI tentam atualizar a porta permitida em tempo de execução, mas a porta pode ser configurada manualmente com o seguinte comando. Se você estiver usando uma porta não padrão para sua conexão SSH, substitua a porta 22 pela porta desejada.
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}}"
Nota
Se estiver usando a CLI do Azure a partir do PowerShell, o comando a seguir deve ser usado.
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}}'
Nota
Pode haver um atraso após a atualização da Configuração do Serviço antes que você consiga se conectar.
Opcional: Instalar a extensão de login do Microsoft Entra
Para usar o Microsoft Entra para autenticação nas suas máquinas Linux, deve-se instalar aadsshlogin e aadsshlogin-selinux (conforme apropriado) no servidor habilitado para Arc. Estes pacotes são instalados com a extensão VM AADSSHLoginForLinux.
Para adicionar essa extensão no portal do Azure, navegue até o cluster e, em seguida, no menu de serviço, em Configurações, selecione Extensões. Selecione Adicionar e, em seguida, selecione Login SSH baseado no Azure AD – Azure Arc e conclua a instalação. Você também pode instalar a extensão localmente através de um gerenciador de pacotes executando apt-get install aadsshlogin ou o seguinte comando:
az connectedmachine extension create --machine-name <arc enabled server name> --resource-group <resourcegroup> --publisher Microsoft.Azure.ActiveDirectory --name AADSSHLogin --type AADSSHLoginForLinux --location <location>
Exemplos
Você pode usar a CLI do Azure ou o Azure PowerShell para acessar servidores habilitados para Arc via SSH. Para obter exemplos e mais detalhes, consulte az ssh (Azure CLI) ou Az.Ssh (Azure PowerShell).
Desativar SSH para servidores habilitados para Arc
Para remover o acesso SSH aos seus servidores habilitados para Arc, siga estas etapas.
Remova a porta SSH e a funcionalidade do servidor compatível com Arc:
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\"}}'Elimine o ponto final de conectividade predefinido.
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
Para desativar todo o acesso remoto à sua máquina, incluindo o acesso SSH, você pode executar o seguinte azcmagent config comando na máquina:
azcmagent config set incomingconnections.enabled false
Próximos passos
- Saiba mais sobre OpenSSH for Windows
- Saiba mais sobre a resolução de problemas de acesso SSH a servidores habilitados para Azure Arc.
- Aprenda sobre a resolução de problemas de questões de conexão do agente.