az ssh

Nota

Essa referência faz parte da extensão ssh para a CLI do Azure (versão 2.45.0 ou superior). A extensão será instalada automaticamente na primeira vez que você executar um comando az ssh . Saiba mais sobre extensões.

SSH em recursos (VMs do Azure, servidores Arc, etc.) usando certificados openssh emitidos pelo AAD.

SSH em servidores habilitados para Arc sem exigir um endereço IP público ou SSH em Máquinas Virtuais do Azure. O AAD emitiu certificados openssh para autenticação atualmente suportados apenas para Linux.

Comandos

Name Description Tipo Estado
az ssh arc

SSH no Azure Arc Servers.

Extensão GA
az ssh cert

Crie um certificado SSH RSA assinado pelo AAD.

Extensão GA
az ssh config

Crie uma configuração SSH para recursos (VMs do Azure, Arc Servers, etc.) que pode ser usada por clientes que suportam configurações e certificados OpenSSH.

Extensão GA
az ssh vm

SSH em VMs do Azure ou Arc Servers.

Extensão GA

az ssh arc

SSH no Azure Arc Servers.

Os usuários podem fazer login usando certificados emitidos pelo AAD ou usando credenciais de usuário local. Recomendamos fazer login usando certificados emitidos pelo AAD. Para SSH usando credenciais de usuário local, você deve fornecer o nome de usuário local usando o parâmetro --local-user.

az ssh arc [--certificate-file]
           [--local-user]
           [--name]
           [--port]
           [--private-key-file]
           [--public-key-file]
           [--rdp]
           [--resource-group]
           [--resource-type]
           [--ssh-client-folder]
           [--ssh-proxy-folder]
           [--yes]
           [<SSH_ARGS>]

Exemplos

Dê um nome de grupo de recursos e um nome de máquina ao SSH usando certificados emitidos pelo AAD

az ssh arc --resource-group myResourceGroup --name myMachine

Usando um arquivo de chave privada personalizado

az ssh arc --resource-group myResourceGroup --name myMachine --private-key-file key --public-key-file key.pub

Usando argumentos ssh adicionais

az ssh arc --resource-group myResourceGroup --name myMachine -- -A -o ForwardX11=yes

Dê um nome de usuário local ao SSH com credenciais de usuário local usando autenticação baseada em certificado.

az ssh arc --local-user username --resource-group myResourceGroup --name myMachine --certificate-file cert.pub --private-key-file key

Dê um nome de usuário local ao SSH com credenciais de usuário local usando autenticação baseada em chave.

az ssh arc --local-user username --resource-group myResourceGroup --name myMachine --private-key-file key

Dê um nome de usuário local ao SSH com credenciais de usuário local usando autenticação baseada em senha.

az ssh arc --local-user username --resource-group myResourceGroup --name myMachine

Dê a uma pasta de cliente SSH para usar os executáveis ssh nessa pasta, como ssh-keygen.exe e ssh.exe. Se não for fornecida, a extensão tenta usar o cliente OpenSSH pré-instalado (no Windows, a extensão procura executáveis pré-instalados em C:\Windows\System32\OpenSSH).

az ssh arc --resource-group myResourceGroup --name myMachine --ssh-client-folder "C:\Program Files\OpenSSH"

Abra a conexão RDP sobre SSH. Útil para conectar via RDP a Arc Servers sem endereço IP público. Atualmente suportado apenas para clientes Windows.

az ssh arc --resource-group myResourceGroup --name myVM --local-user username --rdp

Parâmetros Opcionais

--certificate-file -c

Caminho para o arquivo de certificado.

--local-user

O nome de usuário de um usuário local.

--name --vm-name -n

O nome do Arc Server.

--port

Porta para se conectar no host remoto.

--private-key-file -i

O caminho do arquivo de chave privada RSA.

--public-key-file -p

O caminho do arquivo de chave pública RSA.

--rdp --winrdp

Inicie a conexão RDP por SSH.

valor predefinido: False
--resource-group -g

o nome do grupo de recursos. Você pode configurar o grupo padrão usando az configure --defaults group=<name>.

--resource-type

O tipo de recurso deve ser Microsoft.HybridCompute/machines ou Microsoft.ConnectedVMwareSphere/virtualMachines.

--ssh-client-folder

Caminho da pasta que contém executáveis ssh (ssh.exe, ssh-keygen.exe, etc). Padrão para ssh pré-instalado se não fornecido.

--ssh-proxy-folder

Caminho para a pasta onde o proxy ssh deve ser salvo. Padrão para a pasta .clientsshproxy no diretório base do usuário, se não for fornecido.

--yes --yes-without-prompt -y

Atualize a configuração do serviço sem avisar o usuário.

valor predefinido: False
<SSH_ARGS>

Argumentos adicionais passados para o OpenSSH.

Parâmetros de Globais
--debug

Aumente a verbosidade do log para mostrar todos os logs de depuração.

--help -h

Mostrar esta mensagem de ajuda e sair.

--only-show-errors

Mostrar apenas erros, suprimindo avisos.

--output -o

Formato de saída.

valores aceites: json, jsonc, none, table, tsv, yaml, yamlc
valor predefinido: json
--query

Cadeia de caracteres de consulta JMESPath. Consulte http://jmespath.org/ para obter mais informações e exemplos.

--subscription

o nome ou o ID da subscrição. Você pode configurar a assinatura padrão usando az account set -s NAME_OR_IDo .

--verbose

Aumente a verbosidade do registro. Use --debug para logs de depuração completos.

az ssh cert

Crie um certificado SSH RSA assinado pelo AAD.

az ssh cert [--file]
            [--public-key-file]
            [--ssh-client-folder]

Exemplos

Criar um certificado ssh de curta duração assinado pelo AAD

az ssh cert --public-key-file ./id_rsa.pub --file ./id_rsa-aadcert.pub

Dê a uma pasta de cliente SSH para usar os executáveis ssh nessa pasta, como ssh-keygen.exe. Se não for fornecida, a extensão tenta usar o cliente OpenSSH pré-instalado (no Windows, a extensão procura executáveis pré-instalados em C:\Windows\System32\OpenSSH).

az ssh cert --file ./id_rsa-aadcert.pub --ssh-client-folder "C:\Program Files\OpenSSH"

Parâmetros Opcionais

--file -f

O caminho do arquivo para gravar o certificado SSH assume como padrão o caminho de chave pública com -aadcert.pub appened.

--public-key-file -p

O caminho do arquivo de chave pública RSA. Se não for fornecido, o par de chaves gerado será armazenado no mesmo diretório que --file.

--ssh-client-folder

Caminho da pasta que contém executáveis ssh (ssh.exe, ssh-keygen.exe, etc). Padrão para ssh pré-instalado se não fornecido.

Parâmetros de Globais
--debug

Aumente a verbosidade do log para mostrar todos os logs de depuração.

--help -h

Mostrar esta mensagem de ajuda e sair.

--only-show-errors

Mostrar apenas erros, suprimindo avisos.

--output -o

Formato de saída.

valores aceites: json, jsonc, none, table, tsv, yaml, yamlc
valor predefinido: json
--query

Cadeia de caracteres de consulta JMESPath. Consulte http://jmespath.org/ para obter mais informações e exemplos.

--subscription

o nome ou o ID da subscrição. Você pode configurar a assinatura padrão usando az account set -s NAME_OR_IDo .

--verbose

Aumente a verbosidade do registro. Use --debug para logs de depuração completos.

az ssh config

Crie uma configuração SSH para recursos (VMs do Azure, Arc Servers, etc.) que pode ser usada por clientes que suportam configurações e certificados OpenSSH.

Outros softwares (git/rsync/etc) que suportam a configuração de um comando SSH podem ser configurados para usar o arquivo de configuração definindo o comando como 'ssh -F /path/to/config', por exemplo, rsync -e 'ssh -F /path/to/config'. Os usuários podem criar arquivos de configuração ssh que usam certificados emitidos pelo AAD ou credenciais de usuário local.

az ssh config --file
              [--certificate-file]
              [--ip]
              [--keys-dest-folder]
              [--local-user]
              [--name]
              [--overwrite]
              [--port]
              [--prefer-private-ip]
              [--private-key-file]
              [--public-key-file]
              [--resource-group]
              [--resource-type]
              [--ssh-client-folder]
              [--ssh-proxy-folder]
              [--yes]

Exemplos

Dê o grupo de recursos e o nome da máquina para o qual criar uma configuração usando certificados emitidos pelo AAD, salve em um arquivo local e ssh nesse recurso

az ssh config --resource-group myResourceGroup --name myVm --file ./sshconfig
ssh -F ./sshconfig myResourceGroup-myVM

Dê o IP público (ou nome do host) de uma VM do Azure para a qual criar uma configuração e, em seguida, ssh nessa VM

az ssh config --ip 1.2.3.4 --file ./sshconfig
ssh -F ./sshconfig 1.2.3.4

Dê a um usuário local para criar uma configuração usando credenciais de usuário local, salve no arquivo local e, em seguida, ssh nesse recurso

az ssh config --resource-group myResourceGroup --name myMachine --local-user username --certificate-file cert --private-key-file key --file ./sshconfig
ssh -F ./sshconfig MyResourceGroup-myMachine-username

Forneça a Pasta de Destino de Chaves para armazenar as chaves e certificados gerados. Se não forem fornecidas, as chaves SSH são armazenadas na nova pasta "az_ssh_config" ao lado do arquivo de configuração.

az ssh config --ip 1.2.3.4 --file ./sshconfig --keys-destination-folder /home/user/mykeys

Crie uma configuração genérica para uso com qualquer host

#Bash
az ssh config --ip \* --file ./sshconfig
#PowerShell
az ssh config --ip * --file ./sshconfig

Exemplos com outro software

#Bash
az ssh config --ip \* --file ./sshconfig
rsync -e 'ssh -F ./sshconfig' -avP directory/ myvm:~/directory
GIT_SSH_COMMAND="ssh -F ./sshconfig" git clone myvm:~/gitrepo

Dê a uma pasta de cliente SSH para usar os executáveis ssh nessa pasta, como ssh-keygen.exe. Se não for fornecida, a extensão tenta usar o cliente OpenSSH pré-instalado (no Windows, a extensão procura executáveis pré-instalados em C:\Windows\System32\OpenSSH).

az ssh config --file ./myconfig --resource-group myResourceGroup --name myVM --ssh-client-folder "C:\Program Files\OpenSSH"

Forneça o Tipo de Recurso do destino. Útil quando há uma VM do Azure e um Arc Server com o mesmo nome no mesmo grupo de recursos. O tipo de recurso pode ser "Microsoft.HybridCompute" para Arc Servers ou "Microsoft.Compute" para Máquinas Virtuais do Azure.

az ssh config --resource-type [Microsoft.Compute/virtualMachines|Microsoft.HybridCompute/machines] --resource-group myResourceGroup --name myVM --file ./myconfig

Parâmetros Obrigatórios

--file -f

O caminho do arquivo para gravar a configuração SSH.

Parâmetros Opcionais

--certificate-file -c

Caminho para o arquivo de certificado.

--ip

O endereço IP público (ou nome do host) da VM.

--keys-dest-folder --keys-destination-folder

Pasta onde as novas chaves geradas serão armazenadas.

--local-user

O nome de usuário de um usuário local.

--name --vm-name -n

O nome da VM.

--overwrite

Substitui o arquivo de configuração se esse sinalizador estiver definido.

valor predefinido: False
--port

Porto SSH.

--prefer-private-ip

Usará um IP privado, se disponível. Por padrão, apenas IPs públicos são usados.

valor predefinido: False
--private-key-file -i

O caminho do arquivo de chave privada RSA.

--public-key-file -p

O caminho do arquivo de chave pública RSA.

--resource-group -g

o nome do grupo de recursos. Você pode configurar o grupo padrão usando az configure --defaults group=<name>.

--resource-type

O tipo de recurso deve ser Microsoft.Compute/virtualMachines, Microsoft.HybridCompute/machines ou Microsoft.ConnectedVMwareSphere/virtualMachines.

--ssh-client-folder

Caminho da pasta que contém executáveis ssh (ssh.exe, ssh-keygen.exe, etc). Padrão para ssh pré-instalado se não fornecido.

--ssh-proxy-folder

Caminho para a pasta onde o proxy ssh deve ser salvo. Padrão para a pasta .clientsshproxy no diretório base do usuário, se não for fornecido.

--yes --yes-without-prompt -y

Atualize a configuração do serviço sem avisar o usuário.

valor predefinido: False
Parâmetros de Globais
--debug

Aumente a verbosidade do log para mostrar todos os logs de depuração.

--help -h

Mostrar esta mensagem de ajuda e sair.

--only-show-errors

Mostrar apenas erros, suprimindo avisos.

--output -o

Formato de saída.

valores aceites: json, jsonc, none, table, tsv, yaml, yamlc
valor predefinido: json
--query

Cadeia de caracteres de consulta JMESPath. Consulte http://jmespath.org/ para obter mais informações e exemplos.

--subscription

o nome ou o ID da subscrição. Você pode configurar a assinatura padrão usando az account set -s NAME_OR_IDo .

--verbose

Aumente a verbosidade do registro. Use --debug para logs de depuração completos.

az ssh vm

SSH em VMs do Azure ou Arc Servers.

Os usuários podem fazer login usando certificados emitidos pelo AAD ou usando credenciais de usuário local. Recomendamos fazer login usando certificados emitidos pelo AAD. Para SSH usando credenciais de usuário local, você deve fornecer o nome de usuário local usando o parâmetro --local-user.

az ssh vm [--certificate-file]
          [--hostname]
          [--local-user]
          [--name]
          [--port]
          [--prefer-private-ip]
          [--private-key-file]
          [--public-key-file]
          [--rdp]
          [--resource-group]
          [--resource-type]
          [--ssh-client-folder]
          [--ssh-proxy-folder]
          [--yes]
          [<SSH_ARGS>]

Exemplos

Dê um nome de grupo de recursos e um nome de máquina ao SSH usando certificados emitidos pelo AAD

az ssh vm --resource-group myResourceGroup --name myVM

Dê o IP público (ou nome do host) de uma VM para SSH usando certificados emitidos pelo AAD

az ssh vm --ip 1.2.3.4
az ssh vm --hostname example.com

Usando um arquivo de chave privada personalizado

az ssh vm --ip 1.2.3.4 --private-key-file key --public-key-file key.pub

Usando argumentos ssh adicionais

az ssh vm --ip 1.2.3.4 -- -A -o ForwardX11=yes

Forneça o Tipo de Recurso do destino. Útil quando há uma VM do Azure e um Arc Server com o mesmo nome no mesmo grupo de recursos. O tipo de recurso pode ser "Microsoft.HybridCompute" para Arc Servers ou "Microsoft.Compute" para Máquinas Virtuais do Azure.

az ssh vm --resource-type [Microsoft.Compute/virtualMachines|Microsoft.HybridCompute/machines] --resource-group myResourceGroup --name myVM

Dê um nome de usuário local ao SSH com credenciais de usuário local usando autenticação baseada em certificado.

az ssh vm --local-user username --ip 1.2.3.4 --certificate-file cert.pub --private-key-file key

Dê um nome de usuário local ao SSH com credenciais de usuário local usando autenticação baseada em chave.

az ssh vm --local-user username --resource-group myResourceGroup --name myVM --private-key-file key

Dê um nome de usuário local ao SSH com credenciais de usuário local usando autenticação baseada em senha.

az ssh vm --local-user username --resource-group myResourceGroup --name myArcServer

Dê a uma pasta de cliente SSH para usar os executáveis ssh nessa pasta, como ssh-keygen.exe e ssh.exe. Se não for fornecida, a extensão tenta usar o cliente OpenSSH pré-instalado (no Windows, a extensão procura executáveis pré-instalados em C:\Windows\System32\OpenSSH).

az ssh vm --resource-group myResourceGroup --name myVM --ssh-client-folder "C:\Program Files\OpenSSH"

Abra a conexão RDP sobre SSH. Útil para conectar via RDP a Arc Servers sem endereço IP público. Atualmente suportado apenas para clientes Windows.

az ssh vm --resource-group myResourceGroup --name myVM --local-user username --rdp

Parâmetros Opcionais

--certificate-file -c

Caminho para um arquivo de certificado usado para autenticação ao usar credenciais de usuário local.

--hostname --ip

O endereço IP público (ou privado acessível) (ou nome de host) da VM.

--local-user

O nome de usuário de um usuário local.

--name --vm-name -n

O nome da VM.

--port

Porta SSH.

--prefer-private-ip

Vai preferir IP privado. Requer conectividade com o IP privado.

valor predefinido: False
--private-key-file -i

O caminho do arquivo de chave privada RSA.

--public-key-file -p

O caminho do arquivo de chave pública RSA.

--rdp --winrdp

Inicie a conexão RDP por SSH.

valor predefinido: False
--resource-group -g

o nome do grupo de recursos. Você pode configurar o grupo padrão usando az configure --defaults group=<name>.

--resource-type

O tipo de recurso deve ser Microsoft.Compute/virtualMachines, Microsoft.HybridCompute/machines ou Microsoft.ConnectedVMwareSphere/virtualMachines.

--ssh-client-folder

Caminho da pasta que contém executáveis ssh (ssh.exe, ssh-keygen.exe, etc). Padrão para ssh pré-instalado se não fornecido.

--ssh-proxy-folder

Caminho para a pasta onde o proxy ssh deve ser salvo. Padrão para a pasta .clientsshproxy no diretório base do usuário, se não for fornecido.

--yes --yes-without-prompt -y

Atualize a configuração do serviço sem avisar o usuário.

valor predefinido: False
<SSH_ARGS>

Argumentos adicionais passados para o OpenSSH.

Parâmetros de Globais
--debug

Aumente a verbosidade do log para mostrar todos os logs de depuração.

--help -h

Mostrar esta mensagem de ajuda e sair.

--only-show-errors

Mostrar apenas erros, suprimindo avisos.

--output -o

Formato de saída.

valores aceites: json, jsonc, none, table, tsv, yaml, yamlc
valor predefinido: json
--query

Cadeia de caracteres de consulta JMESPath. Consulte http://jmespath.org/ para obter mais informações e exemplos.

--subscription

o nome ou o ID da subscrição. Você pode configurar a assinatura padrão usando az account set -s NAME_OR_IDo .

--verbose

Aumente a verbosidade do registro. Use --debug para logs de depuração completos.