Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
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
Autenticação do Microsoft Entra
Se utilizar o Microsoft Entra para autenticação, deverá instalar aadsshlogin
e aadsshlogin-selinux
(conforme apropriado) no servidor com Arc ativado. Estes pacotes são instalados com a extensão VM AADSSHLoginForLinux
.
Você também deve configurar atribuições de função para a máquina virtual (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.
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. Esta prática evita o risco de atingir o limite de atribuições de funções do Azure por subscrição.
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 foi registrado:
az provider show -n Microsoft.HybridConnectivity -o tsv --query registrationState
Se o provedor de recursos não tiver sido 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 a usar o Azure CLI a partir do PowerShell, deve utilizar o seguinte.
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
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
Para exibir exemplos e mais detalhes, exiba a página de documentação da Az CLI para az ssh ou a página de documentação do Azure PowerShell para Az.Ssh.
Desativar SSH para servidores habilitados para Arc
Se você precisar remover o acesso SSH aos seus servidores habilitados para Arc, siga as etapas abaixo.
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
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.