Console serial do Azure para Linux

Observação

O CentOS referenciado neste artigo é uma distribuição do Linux e chegará ao EOL (End Of Life). Considere seu uso e planeje de acordo. Para obter mais informações, confira Diretrizes de Fim de Vida do CentOS.

O console serial no portal do Azure fornece acesso a um console baseado em texto para máquinas virtuais Linux (VMs) e instâncias de conjunto de dimensionamento de máquinas virtuais. Essa conexão serial se conecta à porta serial ttys0 da VM ou da instância do conjunto de escala de máquina virtual, fornecendo acesso a ela independentemente da rede ou do estado do sistema operacional. O console serial só pode ser acessado usando o portal do Azure e é permitido apenas para os usuários que têm uma função de acesso de Colaborador ou superior para a VM ou conjunto de dimensionamento de máquinas virtuais.

O console serial funciona da mesma maneira para VMs e instâncias de conjunto de dimensionamento de máquinas virtuais. Neste documento, todas as menções a VMs incluirão implicitamente instâncias do conjunto de dimensionamento de máquinas virtuais, salvo indicação em contrário.

O Console Serial está geralmente disponível em regiões globais do Azure e em visualização pública no Azure Governamental. Ainda não está disponível na nuvem Azure China.

Para obter a documentação do Console serial para Windows, consulte Console serial para Windows.

Observação

O console serial é compatível com uma conta de armazenamento de diagnóstico de inicialização gerenciada.

Pré-requisitos

  • Sua instância de conjunto de dimensionamento de VM ou máquina virtual deve usar o modelo de implantação de gerenciamento de recursos. As implantações clássicas não são compatíveis.

  • Sua conta que usa o console serial deve ter a função de colaborador de máquina virtual para a VM e a conta de armazenamento diagnóstico de inicialização

  • Sua instância de conjunto de dimensionamento de VM ou máquina virtual deve ter um usuário baseado em senha. Você pode criar uma com a função redefinir senha da extensão de acesso VM. Selecione Redefinir senha na seção Ajuda.

  • A instância do conjunto de dimensionamento de VM ou máquina virtual deve ter o diagnóstico de inicialização ativado.

    Captura de tela da página de configurações de diagnóstico no portal do Azure. A opção de diagnóstico de inicialização está habilitada.

  • Para configurações específicas para distribuições Linux, consulte Disponibilidade de distribuição Linux de console serial.

  • A instância do conjunto de dimensionamento de VM ou máquina virtual deve ser configurada para saída serial em ttys0. Esse é o padrão para imagens do Azure, mas você deve verificar isso nas imagens personalizadas. Detalhes abaixo.

Observação

O console serial requer um usuário local com uma senha configurada. VMs ou conjuntos de dimensionamento de máquinas virtuais configurados apenas com uma chave pública SSH não poderão entrar no console serial. Para criar um usuário local com uma senha, use a VMAccess Extension, que está disponível no portal selecionando Redefinir senha no portal do Azure e crie um usuário local com uma senha. Você também pode redefinir a senha do administrador em sua conta usando o GRUB para inicializar no modo de usuário único.

Disponibilidade de distribuição do Serial Console Linux

Para que o console serial funcione corretamente, o sistema operacional convidado deve ser configurado para ler e gravar mensagens do console na porta serial. A maioria das distribuições Azure Linux endossadas tem o console serial configurado por padrão. Selecionar Console serial na seção Ajuda do portal do Azure fornece acesso ao console serial.

Observação

Se você não estiver vendo nada no console serial, certifique-se de que o diagnóstico de inicialização esteja ativado em sua VM. Pressionar Enter geralmente corrige problemas em que nada está aparecendo no console serial.

Distribuição Acesso ao console serial
Red Hat Enterprise Linux Acesso ao console serial ativado por padrão.
CentOS Acesso ao console serial ativado por padrão.
Debian Acesso ao console serial ativado por padrão.
Ubuntu Acesso ao console serial ativado por padrão.
CoreOS Acesso ao console serial ativado por padrão.
SUSE Imagens SLES mais recentes disponíveis no Azure têm acesso ao console serial habilitado por padrão.
Oracle Linux Acesso ao console serial ativado por padrão.

Imagens personalizadas do Linux

Para ativar o console serial para sua imagem de VM Linux personalizada, ative o acesso ao console no arquivo /etc/inittab para executar um terminal em ttyS0. Por exemplo: S0:12345:respawn:/sbin/agetty -L 115200 console vt102. Você também pode precisar gerar um getty em ttyS0. Isso pode ser feito com systemctl start serial-getty@ttyS0.service.

Você também deseja adicionar ttys0 como o destino da saída serial. Para obter mais informações sobre como configurar uma imagem personalizada para funcionar com o console serial, consulte os requisitos gerais do sistema em Criar e carregar um Linux VHD no Azure.

Se você estiver construindo um kernel personalizado, considere habilitar estes sinalizadores de kernel: CONFIG_SERIAL_8250=y e CONFIG_MAGIC_SYSRQ_SERIAL=y. O arquivo de configuração geralmente está localizado no caminho /boot/.

Cenários comuns para acessar o console serial

Cenário Ações no console serial
Arquivo FSTAB quebrado Pressione a tecla Enter para continuar e use um editor de texto para corrigir o arquivo FSTAB. Pode ser necessário estar no modo de usuário único para fazer isso. Para obter mais informações, consulte a seção do console serial em Como corrigir problemas do fstab e Usar o console serial para acessar o GRUB e o modo de usuário único.
Regras de firewall incorretas Se você configurou o iptables para bloquear a conectividade SSH, pode usar o console serial para interagir com sua VM sem precisar de SSH. Mais detalhes podem ser encontrados na página de manual do iptables.
Da mesma forma, se o firewalld estiver bloqueando o acesso SSH, você poderá acessar a VM por meio do console serial e reconfigurar o firewalld. Mais detalhes podem ser encontrados na documentação do firewall.
Corrupção/verificação do sistema de arquivos Consulte a seção do console serial de A VM Linux do Azure não pode ser iniciada devido a erros do sistema de arquivos para obter mais detalhes sobre como solucionar problemas de sistemas de arquivos corrompidos usando o console serial.
Problemas de configuração SSH Acesse o console serial e altere as configurações. O console serial pode ser usado independentemente da configuração SSH de uma VM, pois não exige que a VM tenha conectividade de rede para funcionar. Um guia de solução de problemas está disponível em Solucionar problemas de conexões SSH para uma VM Azure Linux que falha, apresenta erros ou é recusada. Mais detalhes estão disponíveis em Etapas detalhadas de solução de problemas SSH para problemas de conexão com uma VM Linux no Azure
Interagindo com o bootloader Reinicie sua VM de dentro da lâmina do console serial para acessar o GRUB em sua VM Linux. Para obter mais detalhes e informações específicas da distribuição, consulte Usar o console serial para acessar o GRUB e o modo de usuário único.

Desabilitar o console serial

Por padrão, todas as assinaturas têm acesso ao console serial ativado. Você pode desabilitar o console serial no nível de assinatura ou no nível de conjunto de dimensionamento de VM/máquina virtual. Para obter instruções detalhadas, visite Habilitar e desabilitar o console serial do Azure.

Segurança do console serial

Use o console serial com o firewall de conta de armazenamento de diagnóstico de inicialização personalizado ativado

O console serial usa a conta de armazenamento configurada para diagnóstico de inicialização em seu fluxo de trabalho de conexão. Quando um firewall é habilitado nesta conta de armazenamento, os IPs de serviço do console serial devem ser adicionados como exclusões. Para fazer isso, siga estas etapas:

  1. Navegue até as configurações do firewall da conta de armazenamento de diagnóstico de inicialização personalizado que você habilitou.

    Observação

    Para determinar qual conta de armazenamento está habilitada para sua VM, na seção Suporte + solução de problemas, selecione Diagnóstico de inicialização>Configurações.

  2. Adicione IPs de serviço do console serial como exclusões de firewall com base na geografia da VM.

    A tabela a seguir lista os IPs que precisam ser permitidos como exclusões de firewall com base na região ou geografia onde a VM está localizada. Este é um subconjunto da lista completa de endereços IP do console serial em processamento para inclusão em etiquetas de serviço.

    Endereço IP Regiões Geografia
    20.205.69.28 Ásia Oriental, Sudeste Asiático Ásia-Pacífico
    20.195.85.180 Ásia Oriental, Sudeste Asiático Ásia-Pacífico
    20.53.53.224 Austrália Central, Austrália Central 2, Austrália Leste, Austrália Sudeste Austrália
    20.70.222.112 Austrália Central, Austrália Central 2, Austrália Leste, Austrália Sudeste Austrália
    191.234.136.63 Sul do Brasil, Sudeste do Brasil Brasil
    20.206.0.194 Sul do Brasil, Sudeste do Brasil Brasil
    52.228.86.177 Canadá Central, Canadá Leste Canadá
    52.242.40.90 Canadá Central, Canadá Leste Canadá
    20.45.242.18 Canário (EUAP)
    20.51.21.252 Canário (EUAP)
    52.146.139.220 Norte da Europa, Europa Ocidental Europa
    20.105.209.72 Norte da Europa, Europa Ocidental Europa
    20.111.0.244 França Central, França Sul França
    52.136.191.10 França Central, França Sul França
    51.116.75.88 Norte da Alemanha, Centro-Oeste da Alemanha Alemanha
    20.52.95.48 Norte da Alemanha, Centro-Oeste da Alemanha Alemanha
    20.192.168.150 Índia Central, Sul da Índia, Índia Ocidental Índia
    20.192.153.104 Índia Central, Sul da Índia, Índia Ocidental Índia
    20.43.70.205 Leste do Japão, Oeste do Japão Japão
    20.189.228.222 Leste do Japão, Oeste do Japão Japão
    20.200.196.96 Coreia Central, Coreia do Sul República da Coreia
    52.147.119.29 Coreia Central, Coreia do Sul República da Coreia
    20.100.1.184 Oeste da Noruega, Leste da Noruega Noruega
    51.13.138.76 Oeste da Noruega, Leste da Noruega Noruega
    20.208.4.98 Norte da Suíça, Oeste da Suíça Suíça
    51.107.251.190 Norte da Suíça, Oeste da Suíça Suíça
    20.45.95.66 Centro dos Emirados Árabes Unidos, Norte dos Emirados Árabes Unidos Emirados Árabes Unidos
    20.38.141.5 Centro dos Emirados Árabes Unidos, Norte dos Emirados Árabes Unidos Emirados Árabes Unidos
    20.90.132.144 Sul do Reino Unido, Oeste do Reino Unido Reino Unido
    20.58.68.62 Sul do Reino Unido, Oeste do Reino Unido Reino Unido
    51.12.72.223 Suécia Central, Suécia Sul Suécia
    51.12.22.174 Suécia Central, Suécia Sul Suécia
    20.98.146.84 Central dos EUA, Leste dos EUA 2, Leste dos EUA, Centro-Norte dos EUA, Centro-Sul dos EUA, Oeste dos EUA 2, Oeste dos EUA 3, Centro-Oeste dos EUA, Oeste dos EUA Estados Unidos
    20.98.194.64 Central dos EUA, Leste dos EUA 2, Leste dos EUA, Centro-Norte dos EUA, Centro-Sul dos EUA, Oeste dos EUA 2, Oeste dos EUA 3, Centro-Oeste dos EUA, Oeste dos EUA Estados Unidos
    20.69.5.162 Central dos EUA, Leste dos EUA 2, Leste dos EUA, Centro-Norte dos EUA, Centro-Sul dos EUA, Oeste dos EUA 2, Oeste dos EUA 3, Centro-Oeste dos EUA, Oeste dos EUA Estados Unidos
    20.83.222.102 Central dos EUA, Leste dos EUA 2, Leste dos EUA, Centro-Norte dos EUA, Centro-Sul dos EUA, Oeste dos EUA 2, Oeste dos EUA 3, Centro-Oeste dos EUA, Oeste dos EUA Estados Unidos
    20.83.222.100 Central dos EUA, Leste dos EUA 2, Leste dos EUA, Centro-Norte dos EUA, Centro-Sul dos EUA, Oeste dos EUA 2, Oeste dos EUA 3, Centro-Oeste dos EUA, Oeste dos EUA Estados Unidos
    20.141.10.130 Todas as regiões de nuvem do governo dos EUA UsGov
    52.127.55.131 Todas as regiões de nuvem do governo dos EUA UsGov

    Importante

    • Os IPs que precisam ser permitidos são específicos da região onde a VM está localizada. Por exemplo, uma máquina virtual implantada na região Norte da Europa precisa adicionar as seguintes exclusões de IP ao firewall da conta de armazenamento para a geografia da Europa: 52.146.139.220 e 20.105.209.72. Veja a tabela acima para encontrar os IPs corretos para sua região e geografia.
    • Na operação atual do console serial, o soquete da web é aberto para um ponto de extremidade como <region>.gateway.serialconsole.azure.com. Certifique-se de que o ponto de extremidade serialconsole.azure.com seja permitido para clientes de navegador em sua organização. Na nuvem do governo dos EUA (Fairfax), o sufixo do ponto de extremidade é serialconsole.azure.us.

    Para obter mais informações sobre como adicionar IPs ao firewall da conta de armazenamento, consulte Configurar firewalls de armazenamento do Azure e redes virtuais: Gerenciando regras de rede IP.

Depois que os endereços IP forem adicionados com êxito ao firewall da conta de armazenamento, tente novamente a conexão do console serial com a VM. Se você ainda tiver problemas de conexão, verifique se os endereços IP corretos foram excluídos do firewall da conta de armazenamento para a região da VM.

Segurança de acesso

O acesso ao console serial é limitado a usuários que tenham uma função de acesso de Virtual Machine Contributor ou superior para a máquina virtual. Se seu locatário do Microsoft Entra exigir MFA (autenticação multifator), o acesso ao console serial também precisará de MFA porque o acesso do console serial é por meio do portal do Azure.

Segurança do canal

Todos os dados enviados e recebidos são criptografados em trânsito com TLS 1.2 ou uma versão posterior.

Armazenamento e criptografia de dados

O console serial do Azure não revisa, inspeciona ou armazena dados transmitidos para dentro e para fora da porta serial da máquina virtual. Portanto, não há dados para criptografar em repouso.

Para garantir que todos os dados na memória que são paginados para discos por máquinas virtuais que executam o Console Serial do Azure sejam criptografados, use a criptografia baseada em host. A criptografia baseada em host é habilitada por padrão para todas as conexões do console serial do Azure.

Residência de dados

O portal do Azure ou Azure CLI atua como terminais remotos para a porta serial da máquina virtual. Como esses terminais não podem se conectar diretamente aos servidores que hospedam a máquina virtual na rede, um gateway de serviço intermediário é usado para fazer proxy do tráfego do terminal. O Console Serial do Azure não armazena nem processa esses dados do cliente. O gateway de serviço intermediário que transfere os dados residirá na geografia da máquina virtual.

Logs de auditoria

Todo o acesso ao console serial está atualmente registrado nos logs de diagnóstico de inicialização da máquina virtual. O acesso a esses logs pertence e é controlado pelo administrador da máquina virtual do Azure.

Cuidado

Nenhuma senha de acesso para o console é registrada. No entanto, se os comandos executados no console contiverem ou gerarem senhas, segredos, nomes de usuário ou qualquer outra forma de informações de identificação pessoal (PII), eles serão gravados nos logs de diagnóstico de inicialização da VM. Eles serão escritos junto com todos os outros textos visíveis como parte da implementação da função de rolagem para trás do console serial. Esses logs são circulares e somente indivíduos com permissões de leitura para a conta de armazenamento de diagnósticos têm acesso a eles. Se você estiver inserindo quaisquer dados ou comandos que contenham segredos ou PII, recomendamos o uso de SSH, a menos que o console serial seja absolutamente necessário.

Uso simultâneo

Se um usuário estiver conectado ao console serial e outro usuário solicitar com sucesso acesso a essa mesma máquina virtual, o primeiro usuário será desconectado e o segundo usuário conectado à mesma sessão.

Cuidado

Isso significa que um usuário desconectado não será desconectado. A capacidade de impor um logout após a desconexão (usando SIGHUP ou um mecanismo semelhante) ainda está no roteiro. Para Windows, há um tempo limite automático habilitado no Console Administrativo Especial (SAC); no entanto, para Linux, você pode definir a configuração de tempo limite do terminal. Para fazer isso, adicione export TMOUT=600 em seu arquivo .bash_profile ou .profile para o usuário que você usa para entrar no console. Essa configuração encerrará a sessão após 10 minutos.

Acessibilidade

A acessibilidade é um dos principais focos do Console Serial do Azure. Para isso, garantimos que o console serial esteja totalmente acessível.

Navegação pelo teclado

Use a tecla Tab em seu teclado para navegar até a interface do console serial no portal do Azure. Sua localização será destacada na tela. Para deixar o foco da janela do console serial, pressione Ctrl+F6 em seu teclado.

Use o console serial com um leitor de tela

O console serial possui suporte integrado ao leitor de tela. Navegar com um leitor de tela ativado permitirá que o texto alternativo do botão atualmente selecionado seja lido em voz alta pelo leitor de tela.

Problemas conhecidos

Estamos cientes de alguns problemas com o console serial e o sistema operacional da VM. Aqui está uma lista desses problemas e etapas para mitigação para VMs do Linux. Esses problemas e mitigações se aplicam a VMs e instâncias de conjunto de dimensionamento de máquinas virtuais. Se eles não corresponderem ao erro que você está vendo, consulte os erros comuns do serviço do console serial em Erros comuns do console serial.

Problema Atenuação
Pressionar Enter após o banner de conexão não faz com que um prompt de login seja exibido. O GRUB pode não estar configurado corretamente. Execute os seguintes comandos: grub2-mkconfig -o /etc/grub2-efi.cfg e/ou grub2-mkconfig -o /etc/grub2.cfg. Esse problema pode ocorrer se você estiver executando uma VM personalizada, dispositivo reforçado ou configuração GRUB que faz com que o Linux falhe ao se conectar à porta serial.
O texto do console serial ocupa apenas uma parte do tamanho da tela (geralmente após o uso de um editor de texto). Os consoles seriais não suportam a negociação sobre o tamanho da janela (RFC 1073), o que significa que não haverá sinal SIGWINCH enviado para atualizar o tamanho da tela e a VM não terá conhecimento do tamanho do seu terminal. Instale o xterm ou um utilitário semelhante para fornecer o comando resize e, em seguida, execute resize.
Colar strings longas não funciona. O console serial limita o comprimento das strings coladas no terminal a 2.048 caracteres para evitar a sobrecarga da largura de banda da porta serial.
Entrada de teclado errática em imagens SLES BYOS. A entrada do teclado é reconhecida apenas esporadicamente. Este é um problema com o pacote Plymouth. O Plymouth não deve ser executado no Azure, pois você não precisa de uma tela inicial, e o Plymouth interfere na capacidade da plataforma de usar o Console serial. Remova o Plymouth com sudo zypper remove plymouth e reinicie. Como alternativa, modifique a linha do kernel de sua configuração do GRUB anexando plymouth.enable=0 ao final da linha. Você pode fazer isso editando a entrada de inicialização no momento da inicialização ou editando a linha GRUB_CMDLINE_LINUX em /etc/default/grub, reconstruindo o GRUB com grub2-mkconfig -o /boot/grub2/grub.cfg e, em seguida, reinicializando.

Perguntas frequentes

P. Como posso enviar comentários?

R. Forneça feedback criando um problema no GitHub em https://aka.ms/serialconsolefeedback. Alternativamente (menos preferido), você pode enviar feedback via azserialhelp@microsoft.com ou na categoria de máquina virtual de https://feedback.azure.com.

P. O console serial suporta copiar/colar?

A. Sim. Use Ctrl+Shift+C e Ctrl+Shift+V para copiar e colar no ponto de extremidade.

P. Posso usar o console serial em vez de uma conexão SSH?

R. Embora esse uso possa parecer tecnicamente possível, o console serial deve ser usado principalmente como uma ferramenta de solução de problemas em situações em que a conectividade via SSH não é possível. Recomendamos não usar o console serial como substituto do SSH pelos seguintes motivos:

  • O console serial não tem tanta largura de banda quanto o SSH. Como é uma conexão somente de texto, as interações mais pesadas da GUI são difíceis.
  • Atualmente, o acesso ao console serial só é possível usando um nome de usuário e senha. Como as chaves SSH são muito mais seguras do que as combinações de nome de usuário/senha, do ponto de vista da segurança de login, recomendamos o SSH em vez do console serial.

P. Quem pode habilitar ou desabilitar o console serial para minha assinatura?

R. Para habilitar ou desabilitar o console serial em um nível de assinatura, você deve ter permissões de gravação para a assinatura. As funções que têm permissão de gravação incluem funções de administrador ou proprietário. As funções personalizadas também podem ter permissões de gravação.

P. Quem pode acessar o console serial para meu conjunto de dimensionamento de VM/máquina virtual?

R. Você deve ter a função de Colaborador de Máquina Virtual ou superior para uma VM ou escala de máquina virtual definida para acessar o console serial.

P. Meu console serial não está exibindo nada, o que eu faço?

R. Sua imagem provavelmente está mal configurada para acesso ao console serial. Para obter informações sobre como configurar sua imagem para ativar o console serial, consulte Disponibilidade de distribuição Linux do console serial.

P. O console serial está disponível para conjuntos de dimensionamento de máquinas virtuais?

R. É sim! Consulte Introdução ao console serial.

P. Se eu configurar minha VM ou conjunto de dimensionamento de máquina virtual usando apenas a autenticação de chave SSH, ainda posso usar o console serial para conectar-me à minha instância de conjunto de dimensionamento de VM/máquina virtual?

A. Sim. Como o console serial não requer chaves SSH, você só precisa configurar uma combinação de nome de usuário/senha. Você pode fazer isso selecionando Redefinir senha no portal do Azure e usando essas credenciais para entrar no console serial.

Próximas etapas

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.