Partilhar via


Solucionar problemas de certificação de máquina virtual

Quando você publica sua imagem de máquina virtual (VM) no Azure Marketplace, a equipe do Azure a valida para garantir que ela seja inicializável, segura e compatível com o Azure. Se a imagem da VM falhar em qualquer um dos testes de alta qualidade, ela não será publicada. Você receberá uma mensagem de erro que descreve o problema.

Este artigo explica mensagens de erro comuns durante a publicação de imagens de VM, juntamente com soluções relacionadas.

Observação

Se você tiver dúvidas sobre este artigo ou sugestões de melhoria, entre em contato com de suporte do Partner Center.

Falha na extensão da VM

Verifique se a imagem suporta extensões de VM.

Para habilitar extensões de VM:

  1. Selecione sua VM Linux.

  2. Vá para Configurações de diagnóstico.

  3. Habilite matrizes base atualizando a conta Storage.

  4. Selecione Salvar.

    Captura de tela que mostra como habilitar o monitoramento no nível de convidado.

Para verificar se as extensões de VM estão ativadas corretamente:

  1. Na VM, selecione a guia extensões de VM e verifique o status do Linux Diagnostics Extension.

  2. Verifique o status do provisionamento.

    • Se o status for Provisionamento bem-sucedido, o caso de teste de extensões foi aprovado.
    • Se o status for Falha de provisionamento, o caso de teste de extensões falhou e você precisará definir o sinalizador Fortalecido.

    Captura de tela mostrando que o provisionamento foi bem-sucedido.

    Se a extensão da VM falhar, consulte Usar a extensão de diagnóstico do Linux para monitorar métricas e logs habilitá-la. Se você não quiser que a extensão de VM seja habilitada, entre em contato com a equipe de suporte e peça para desativá-la.

Problema de provisionamento de VM

Verifique se você seguiu rigorosamente o processo de provisionamento de VM antes de enviar sua oferta. Para exibir o formato JSON para provisionar a VM, consulte Testar uma imagem de máquina virtual.

Os problemas de provisionamento podem incluir os seguintes cenários de falha:

Cenário Erro Justificação Solução
1 Disco rígido virtual (VHD) inválido Se o valor do cookie especificado no rodapé do VHD estiver incorreto, o VHD será considerado inválido. Recrie a imagem e envie a solicitação.
2 Tipo de blob inválido O provisionamento de VM falhou porque o blob usado é um tipo de bloco em vez de um tipo de página. Recrie a imagem como tipo de página e envie a solicitação.
3 Tempo limite de provisionamento ou não generalizado corretamente Há um problema com a generalização da VM. Recrie a imagem com generalização e envie o pedido.

Observação

Para obter mais informações sobre a generalização de VM, consulte:

  • de documentação Linux
  • de documentação do Windows

Observação

Se o provisionamento falhar, pois a imagem da VM requer um modelo ARM personalizado para implantação, habilite a caixa de seleção 'Requer modelo ARM personalizado para implantação' na página 'Configuração técnica' do Partner Center. Isso ajuda a equipe de certificação a tomar as medidas adequadas para essa solicitação sem falhar por problema de provisionamento.

caixa de seleção Modelo ARM personalizado

Especificações VHD

A string 'conectix' faz parte da especificação VHD. É definido como o cookie de 8 bytes no rodapé VHD que identifica o criador do ficheiro. Todos os ficheiros VHD criados pela Microsoft têm este cookie.

Um blob formatado em VHD deve ter um rodapé de 512 bytes neste formato:

Campos de rodapé do disco rígido Tamanho (bytes)
Biscoitos 8
Caraterísticas 4
Versão do formato de arquivo 4
Deslocamento de dados 8
Carimbo de data/hora 4
Aplicação Creator 4
Versão do criador 4
Creator Host OS 4
Tamanho original 8
Tamanho atual 8
Geometria do disco 4
Tipo de disco 4
Soma de verificação 4
ID Único 16
Estado salvo 1
Reservado 427

Especificações VHD

Para garantir uma experiência de publicação suave, certifique-se de que seu VHD atenda aos seguintes critérios:

  • O cookie contém a string 'conectix'.
  • O tipo de disco é Fixo.
  • O tamanho virtual do VHD é de pelo menos 20 MB.
  • O VHD está alinhado. O tamanho virtual deve ser um múltiplo de 1 MB.
  • O comprimento do blob VHD é igual ao tamanho virtual mais o comprimento do rodapé VHD (512).

Faça o download do especificação VHD.

Conformidade de software para Windows

Se sua solicitação de imagem do Windows for rejeitada devido a um problema de conformidade de software, pode ser que você tenha criado uma imagem do Windows com uma instância do SQL Server instalada. Em vez disso, você deve obter a imagem base da versão relevante do SQL Server do Azure Marketplace.

Não crie sua própria imagem do Windows com o SQL Server instalado. Use as imagens base aprovadas do SQL Server (Enterprise/Standard/Web) do Azure Marketplace.

Se você estiver tentando instalar o Visual Studio ou qualquer produto licenciado pelo Office, entre em contato com a equipe de suporte para obter aprovação prévia.

Para obter mais informações sobre como selecionar uma base aprovada, consulte Criar uma máquina virtual a partir de uma base aprovada.

Falha na execução do caso de teste do kit de ferramentas

O kit de ferramentas de Certificação Microsoft pode ajudá-lo a executar casos de teste e verificar se seu VHD ou imagem é compatível com o ambiente do Azure.

Baixe o Microsoft Certification toolkit.

Casos de teste Linux

A tabela a seguir lista os casos de teste do Linux que o kit de ferramentas executa. A validação do teste é indicada na descrição.

Cenário Caso de teste Descrição
1 História do Bash Os arquivos de histórico Bash devem ser limpos antes de criar a imagem da VM.
2 Versão do Linux Agent Versão mínima suportada do agente Linux do Azure, ou superior, deve ser instalada.
3 Parâmetros do kernel necessários Verifica se os seguintes parâmetros do kernel estão definidos:
console=ttyS0
earlyprintk=ttyS0
4 Trocar partição no disco do SO Verifica se as partições swap não foram criadas no disco do SO.
5 Partição raiz no disco do SO Crie uma única partição raiz para o disco do sistema operacional.
6 Versão OpenSSL A versão OpenSSL deve ser v0.9.8 ou posterior.
7 Versão Python Python versão 2.6 ou posterior é altamente recomendado.
8 Intervalo de vida do cliente Defina ClientAliveInterval como 180. Na necessidade de aplicação, pode ser definido de 30 a 235. Se você estiver habilitando o SSH para seus usuários finais, esse valor deverá ser definido conforme explicado.
9 Arquitetura do SO Apenas sistemas operativos de 64 bits são suportados.
10 Atualização automática Identifica se a Atualização Automática do Agente Linux está habilitada.

Erros comuns de casos de teste

Consulte a tabela a seguir para obter os erros comuns que você pode ver ao executar casos de teste:

Cenário Caso de teste Erro Solução
1 Caso de teste da versão do Linux Agent A versão mínima suportada do agente Linux do Azure, ou superior, deve ser instalada.](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/support-extensions-agent-version) Atualize a versão do agente Linux. Para obter mais informações, visite página de atualização da versão do agente Linux.
2 Caso de teste de histórico do Bash Ocorrerá um erro se o tamanho do histórico do Bash na imagem enviada for superior a 1 kilobyte (KB). O tamanho é restrito a 1 KB para garantir que seu arquivo de histórico do Bash não contenha nenhuma informação potencialmente confidencial. Resolva montando o VHD em outra VM em funcionamento e faça alterações para reduzir o tamanho para 1 KB ou menos. Por exemplo, exclua os arquivos .bash_history.
3 Caso de teste de parâmetro do kernel necessário Você receberá esse erro quando o valor de console não estiver definido como ttyS0. Verifique executando o seguinte comando:
cat /proc/cmdline
Defina o valor de console para ttyS0e reenvie a solicitação.
4 Caso de teste de intervalo ClientAlive Se o kit de ferramentas fornecer um resultado de falha para este caso de teste, há um valor inadequado para ClientAliveInterval. Defina o valor de ClientAliveInterval como menor ou igual a 235 e reenvie a solicitação.
5 smoke_test Você receberá um erro quando a imagem não puder inicializar ou reinicializar devido a um pânico no kernel. Você pode obter algumas informações de rastreamento de chamada do pânico do kernel a partir de 'descrição do erro'. Se quiser ver todo o rastreamento de chamadas e o log serial, você pode implantar uma VM no Azure usando sua imagem e verificar o 'Console serial' em seu recurso de VM no portal do Azure. Ao criar uma VM no Azure, você pode baixar o log do console serial do portal do Azure (você pode consultar https://learn.microsoft.com/en-us/troubleshoot/azure/virtual-machines/serial-console-linux para obter mais detalhes sobre o Console Serial)
6 verify_dns_name_resolution Este caso de teste verifica a resolução de nomes DNS executando command:ping bing.com -c 5 -i 0.5 -O. Ocorre um erro se não conseguir executar ping num endereço Web público 'bing.com'. Consulte https://learn.microsoft.com/en-us/azure/virtual-machines/linux/azure-dns para adicionar as configurações corretas
7 verify_no_pre_exist_users Você receberá o erro 'Senha do usuário XXXX é detectada' quando a senha de algum usuário tiver sido detetada ou quando a chave de algum usuário tiver sido detetada verifique o arquivo /etc/shadow para ver se ele tem uma senha de algum usuário, em caso afirmativo, você deve excluir a senha e excluir o arquivo '{diretório inicial do usuário}/.ssh/authorized_keys' após a mensagem de erro
8 validate_netvsc_reload Você receberá o erro 'falhou. SSHException: sessão SSH não ativa.' se a VM não puder ser conectada depois de executar o comando abaixo. Você receberá o erro 'found kernel panic from the node of xx'. se houver pânico do kernel encontrado na VM depois de executar o comando: 'modprobe -r hv_netvsc; modprobe hv_netvsc; ip link definir eth0 para baixo; ip link set eth0 up; dhclient -r eth0; dhclient eth0 » Verifique o console serial para ver se algum erro aconteceu durante o período de execução do comando acima. Você pode visitar https://learn.microsoft.com/en-us/windows-hardware/drivers/network/sr-iov-synthetic-data-path para obter mais detalhes sobre o NetVSC (Network Virtual Service Client).

Casos de teste do Windows

A tabela a seguir lista os casos de teste do Windows que o kit de ferramentas executa, juntamente com uma descrição da validação de teste:

Cenário Casos de teste Descrição
1 Arquitetura do SO O Azure suporta apenas sistemas operativos de 64 bits.
2 Dependência da conta de utilizador A execução do aplicativo não deve depender da conta de administrador.
3 Cluster de failover O recurso de cluster de failover do Windows Server ainda não é suportado. O aplicativo não deve depender desse recurso.
4 IPV6 O IPv6 ainda não tem suporte no ambiente do Azure. O aplicativo não deve depender desse recurso.
5 DHCP A função de servidor Dynamic Host Configuration Protocol ainda não é suportada. O aplicativo não deve depender desse recurso.
6 Acesso remoto A função de servidor Acesso Remoto (Acesso Direto) ainda não é suportada. O aplicativo não deve depender desse recurso.
7 Serviços de Gestão de Direitos Serviços de Gestão de Direitos. A função de servidor ainda não é suportada. O aplicativo não deve depender desse recurso.
8 Serviços de Implantação do Windows Serviços de Implantação do Windows. A função de servidor ainda não é suportada. O aplicativo não deve depender desse recurso.
9 Encriptação de Unidade BitLocker A Encriptação de Unidade BitLocker não é suportada no disco rígido do sistema operativo, mas pode ser utilizada em discos de dados.
10 Servidor de nomes de armazenamento na Internet O recurso Servidor de Nomes de Armazenamento na Internet ainda não é suportado. O aplicativo não deve depender desse recurso.
11 E/S Multipath E/S multipath. Este recurso de servidor ainda não é suportado. O aplicativo não deve depender desse recurso.
12 Balanceamento de carga de rede Balanceamento de carga de rede. Este recurso de servidor ainda não é suportado. O aplicativo não deve depender desse recurso.
13 Protocolo de Resolução de Nomes de Ponto Protocolo de Resolução de Nomes de Par. Este recurso de servidor ainda não é suportado. O aplicativo não deve depender desse recurso.
14 Serviços SNMP O recurso de serviços SNMP (Simple Network Management Protocol) ainda não é suportado. O aplicativo não deve depender desse recurso.
15 Serviço de Nomes da Internet do Windows Serviço de Cadastramento da Internet do Windows. Este recurso de servidor ainda não é suportado. O aplicativo não deve depender desse recurso.
16 Serviço de LAN sem fio Serviço de LAN sem fio. Este recurso de servidor ainda não é suportado. O aplicativo não deve depender desse recurso.

Se você encontrar alguma falha com os casos de teste anteriores, consulte a coluna Descrição na tabela para a solução. Para obter mais informações, entre em contato com a equipe de suporte.

Verificação do tamanho do disco de dados

As solicitações de disco de dados com tamanho superior a 1023 gigabytes (GB) não serão aprovadas. Esta regra aplica-se tanto ao Linux como ao Windows.

Reenvie a solicitação com um tamanho menor ou igual a 1023 GB.

Validação do tamanho do disco do SO

Consulte as regras a seguir para obter informações sobre as limitações no tamanho do disco do sistema operacional. Ao enviar qualquer solicitação, verifique se o tamanho do disco do sistema operacional está dentro da limitação para Linux ou Windows.

SO Tamanho VHD recomendado
Aplicações Linux 1 GB até 1023 GB
Mac OS 30 GB a 250 GB

Como as VMs permitem acesso ao sistema operacional subjacente, verifique se o tamanho do VHD é suficientemente grande para o VHD. Os discos não podem ser expandidos sem tempo de inatividade. Use um tamanho de disco de 30 GB a 50 GB.

Tamanho VHD Tamanho real ocupado Solução
>500 tebibytes (TiB) n/a Entre em contato com a equipe de suporte para obter uma aprovação de exceção.
250-500 TiB >200 gibibytes (GiB) diferença do tamanho do blob Entre em contato com a equipe de suporte para obter uma aprovação de exceção.

Observação

Discos maiores incorrem em custos mais altos e resultam em um atraso durante o processo de instalação e replicação. Devido a esse atraso e custo, a equipe de suporte pode procurar uma justificativa para a aprovação da exceção.

Teste de verificação de patch WannaCry para Windows

Para evitar um possível ataque relacionado ao vírus WannaCry, certifique-se de que todas as solicitações de imagem do Windows sejam atualizadas com o patch mais recente.

Você pode verificar a versão do arquivo de imagem em C:\windows\system32\drivers\srv.sys ou srv2.sys.

A tabela a seguir mostra a versão mínima corrigida do Windows Server:

SO Versão
Windows Server 2008 R2 6.1.7601.23689
Windows Server 2012 6.2.9200.22099
Windows Server 2012 R2 6.3.9600.18604
Windows Server 2016 10.0.14393.953
Windows Server 2019 NA

Observação

O Windows Server 2019 não tem nenhum requisito de versão obrigatório.

Verificação de patch de vulnerabilidade SACK

Quando você envia uma imagem do Linux, sua solicitação pode ser rejeitada devido a problemas de versão do kernel.

Atualize o kernel com uma versão aprovada e reenvie a solicitação. Você pode encontrar a versão aprovada do kernel na tabela a seguir. O número da versão deve ser igual ou superior ao número listado aqui.

Se a sua imagem não estiver instalada com uma das seguintes versões do kernel, atualize-a com os patches corretos. Solicite a aprovação necessária da equipe de suporte depois que a imagem for atualizada com estes patches necessários:

  • CVE-2019-11477
  • CVE-2019-11478
  • CVE-2019-11479
Família de SO Versão Kernel
Ubuntu 14,04 LTS 4.4.0-151
14,04 LTS 4.15.0-1049-*-azure
16,04 LTS 4.15.0-1049
18,04 LTS 4.18.0-1023
18,04 LTS 5.0.0-1025
18.10 4.18.0-1023
19.04 5.0.0-1010
19.04 5.3.0-1004
RHEL e Cent OS 6.10 2.6.32-754.15.3
7.2 3.10.0-327.79.2
7.3 3.10.0-514.66.2
7.4 3.10.0-693.50.3
7.5 3.10.0-862.34.2
7.6 3.10.0-957.21.3
7.7 3.10.0-1062.1.1
8.0 4.18.0-80.4.2
8.1 4.18.0-147
"7-RAW" (7,6)
"7-LVM" (7,6) 3.10.0-957.21.3
RHEL-SAP 7.4 A ser vendido
RHEL-SAP 7.5 A ser vendido
SLES SLES11SP4 (incluindo SAP) 3.0.101-108.95.2
SLES12SP1 para SAP 3.12.74-60.64.115.1
SLES12SP2 para SAP 4.4.121-92.114.1
SLES12SP3 4.4180-4.31.1 (kernel-azure)
SLES12SP3 para SAP 4.4.180-94.97.1
SLES12SP4 4.12.14-6.15.2 (kernel-azure)
SLES12SP4 para SAP 4.12.14-95.19.1
SLES15 4.12.14-5.30.1 (kernel-azure)
SLES15 para SAP 4.12.14-5.30.1 (kernel-azure)
SLES15SP1 4.12.14-5.30.1 (kernel-azure)
Oráculo 6.10 UEK2 2.6.39-400.312.2
UEK3 3.8.13-118.35.2
RHCK 2.6.32-754.15.3
7.0-7.5 UEK3 3.8.13-118.35.2
UEK4 4.1.12-124.28.3
RHCK segue RHEL acima
7.6 RHCK 3.10.0-957.21.3
UEK5 4.14.35-1902.2.0
CoreOS estável 2079.6.0 4.19.43*
Versão beta 2135.3.1 4.19.50*
Alfa 2163.2.1 4.19.50*
Debian Jessie (segurança) 3.16.68-2
Jessie Backports 4.9.168-1+DEB9U3
stretch (segurança) 4.9.168-1+DEB9U3
Debian GNU/Linux 10 (buster) Debian 6.3.0-18+deb9u1
Buster, SID (backports esticados) 4.19.37-5

O tamanho da imagem deve ser em múltiplos de megabytes

Todos os VHDs no Azure devem ter um tamanho virtual alinhado a múltiplos de 1 megabyte (MB). Se o VHD não respeitar o tamanho virtual recomendado, o pedido poderá ser rejeitado.

Siga as diretrizes ao converter de um disco bruto para VHD. Verifique se o tamanho do disco bruto é um múltiplo de 1 MB. Para obter mais informações, consulte Informações para distribuições não endossadas.

Acesso à VM negado

Um acesso negado problema para executar um caso de teste na VM pode ser causado por privilégios insuficientes.

Verifique se você habilitou o acesso adequado para a conta na qual os casos de autoteste estão sendo executados. Habilite o acesso para executar casos de teste se ele não estiver habilitado. Se você não quiser habilitar o acesso, você pode compartilhar os resultados do caso de autoteste com a equipe de suporte.

Para enviar sua solicitação com imagem desativada SSH para o processo de certificação:

  1. Execute a Ferramenta de Teste de Certificação mais recente para VMs do Azure na sua imagem.

  2. Levante um ticket de suporte . Certifique-se de anexar o relatório do kit de ferramentas e fornecer detalhes da oferta:

    • Nome da oferta
    • Nome do editor
    • ID do plano/SKU e versão
  3. Reenvie sua solicitação de certificação.

Observação

Se você estiver publicando uma imagem de VM bloqueada que tenha desabilitado ou restringido o ssh, ative a caixa de seleção 'Área de trabalho remota ou SSH desabilitada' na página 'Configuração técnica' do Partner Center. Isso informa a equipe de certificação que isso é por design e executar as validações corretas na imagem sem falhar para acesso restrito.

Caixa de seleção Bloqueado

Falha no download

Consulte a tabela a seguir para quaisquer problemas que surjam quando você baixa a imagem da VM com uma URL de assinatura de acesso compartilhado (SAS).

Erro Justificação Solução
Blob não encontrado O VHD pode ser excluído ou movido do local especificado.
Blob em uso O VHD é usado por outro processo interno. O armazenamento de blob de origem do VHD é modificado enquanto a publicação está em andamento. O VHD não deve estar em um estado usado quando você o baixa com uma URL SAS. Além disso, não use/altere o VHD quando a publicação estiver em andamento.
URL SAS inválido O URL SAS associado para o VHD está incorreto. Obtenha o URL SAS correto.
Assinatura inválida O URL SAS associado para o VHD está incorreto. Obtenha o URL SAS correto.
Cabeçalho condicional HTTP O URL SAS é inválido. Obtenha o URL SAS correto.
Nome VHD inválido Verifique se existem caracteres especiais, como um sinal de porcentagem % ou aspas ", no nome VHD. Renomeie o arquivo VHD removendo os caracteres especiais.

As imagens VM devem ter 1 MB de espaço livre

Se você estiver publicando sua imagem no Azure (com partição GPT), é altamente recomendável que você mantenha os primeiros 2.048 setores (1 MB) do disco do sistema operacional vazios. Este requisito é para permitir que o Azure adicione metadados importantes à imagem (exemplos incluem metadados para melhorar o tempo de inicialização para clientes, cobrança e outros detalhes). Esta é uma recomendação de práticas recomendadas se você já estiver usando uma imagem base aprovada e sua imagem tiver uma tag de faturamento válida. No entanto, se a imagem não tiver uma etiqueta de faturação válida, a publicação poderá falhar se os primeiros 1 MB do disco do SO não estiverem vazios.

Se estiver a criar a sua própria imagem que não tenha qualquer etiqueta de faturação válida, certifique-se de que os primeiros 2.048 setores (1 MB) do disco do SO estão vazios. Caso contrário, a sua publicação falhará. Este requisito aplica-se apenas ao disco do SO (não aos discos de dados). Se você estiver construindo sua imagem a partir de uma base aprovada, ela já terá os primeiros 1 MB vazios. Assim, você não precisará trabalhar nele separadamente.

Para manter os primeiros 1 MB livres no disco do SO, conclua os passos na secção seguinte.

Como manter 1 MB de espaço livre no início em um VHD vazio (2.048 setores, cada setor 512 bytes)

Estes passos aplicam-se apenas ao Linux.

  1. Crie qualquer tipo de VM Linux, como Ubuntu, CentOS ou outro. Preencha os campos obrigatórios e, em seguida, selecione Seguinte: Discos.

    Captura de tela que mostra a página Criar uma máquina virtual com o botão de comando Avançar: Discos realçado.

  2. Crie um disco não gerenciado para sua VM. Use os valores padrão ou especifique qualquer valor para campos como tamanho do disco do sistema operacional, tipo de disco do sistema operacionale tipo de criptografia.

    Imagem de captura de tela da página Discos de dados no fluxo Criar uma máquina virtual.

  3. Depois de criar a VM, no painel esquerdo, selecione Discos.

    Captura de tela mostrando como selecionar discos para um V M.

  4. Anexe seu VHD como disco de dados à sua VM para criar uma tabela de partição.

    1. Selecione Anexar discos existentes:

      Captura de ecrã a mostrar como adicionar um disco de dados ao seu V H D.

      Captura de tela mostrando como selecionar o disco de dados para o seu V H D.

    2. Encontre a sua conta de armazenamento VHD.

    3. Selecione Containere, em seguida, selecione seu VHD.

    4. Selecione OK.

      Captura de ecrã da página anexar disco não gerido.

      Seu VHD será adicionado como LUN 0 do disco de dados.

  5. Reinicie a VM.

  6. Depois de reiniciar a VM, faça login na VM usando o Putty ou outro cliente e execute o comando sudo -i para obter acesso raiz.

    captura de tela da linha de comando do cliente Putty mostrando o comando sudo -i.

  7. Crie uma partição no seu VHD.

    1. Digite fdisk /dev/sdb comando.

    2. Para visualizar a lista de partições existentes a partir do VHD, introduza p.

    3. Introduza d para eliminar todas as partições existentes disponíveis no VHD. Você pode pular esta etapa, se não for necessário.

      Captura de tela da linha de comando do cliente Putty mostrando os comandos para excluir partições existentes.

    4. Digite n para criar nova partição e selecione p para (partição primária).

    5. Insira 2048 como primeiro setor valor. Você pode deixar último setor como o valor padrão.

      Importante

      Todos os dados existentes serão apagados até 2048 setores (cada setor de 512 bytes). Faça backup do VHD antes de criar uma nova partição.

      Captura de tela da linha de comando do cliente Putty mostrando os comandos e a saída para dados apagados.

    6. Digite w para confirmar a criação da partição.

      Captura de tela da linha de comando do cliente Putty mostrando os comandos para criar uma partição.

    7. Você pode verificar a tabela de partições executando o comando n fdisk /dev/sdb e digitando p. Você verá que a partição é criada com o valor de deslocamento 2048.

      Captura de tela da linha de comando do cliente Putty mostrando os comandos para criar o deslocamento 2048.

  8. Desanexe o VHD da VM e exclua a VM.

Credenciais padrão

Nunca envie credenciais padrão com o VHD enviado. Adicionar credenciais padrão torna o VHD mais vulnerável a ameaças de segurança. Em vez disso, crie suas próprias credenciais ao enviar o VHD.

DataDisk mapeado incorretamente

Um problema de mapeamento pode ocorrer quando uma solicitação é enviada com vários discos de dados que não estão em sequência. Por exemplo, a ordem de numeração para três discos de dados deve ser 0, 1, 2. Qualquer outra ordem é tratada como um problema de mapeamento.

Reenvie a solicitação com o sequenciamento adequado de discos de dados.

Mapeamento incorreto do sistema operacional

Quando uma imagem é criada, ela pode ser mapeada ou atribuída ao rótulo errado do sistema operacional. Por exemplo, quando você seleciona Windows como parte do nome do sistema operacional enquanto cria a imagem, o disco do sistema operacional deve ser instalado apenas com o Windows. O mesmo requisito se aplica ao Linux.

VM não generalizada

Se todas as imagens retiradas do Azure Marketplace forem reutilizadas, o VHD do sistema operacional deverá ser generalizado.

  • Para Linux, o processo a seguir generaliza uma VM Linux e a reimplanta como uma VM separada.

    Na janela SSH, digite o seguinte comando: sudo waagent -deprovision+user.

  • Para Windows, generalizar imagens do Windows usando sysreptool.

    Para obter mais informações sobre a ferramenta sysreptool, consulte Visão geral do System preparation (Sysprep).

Erros de DataDisk

Para soluções para erros relacionados ao disco de dados, use a tabela a seguir:

Erro Justificação Solução
DataDisk- InvalidUrl: Esse erro pode ocorrer devido a um número de unidade lógica (LUN) inválido quando a oferta é enviada. Verifique se a sequência numérica de LUN para o disco de dados está no Partner Center.
DataDisk- NotFound: Este erro pode ocorrer porque um disco de dados não está localizado em uma URL SAS especificada. Verifique se o disco de dados está localizado na URL SAS especificada.

Problema de acesso remoto

Você receberá esse erro se a opção RDP (Remote Desktop Protocol) não estiver habilitada para a imagem do Windows.

Habilite o acesso RDP para imagens do Windows antes de enviá-las.

A história do Bash falhou

Você verá esse erro se o tamanho do histórico do Bash na imagem enviada for superior a 1 kilobyte (KB). O tamanho é restrito a 1 KB para impedir que o arquivo contenha informações potencialmente confidenciais.

Para excluir o histórico do Bash:

  1. Implante a VM e selecione a opção Executar de Comando no portal do Azure.

    Captura de ecrã do portal do Azure com a opção 'Executar comando' no painel esquerdo.

  2. Selecione a primeira opção RunShellScript e, em seguida, execute o comando: cat /dev/null > ~/.bash_history && history -c.

    Captura de ecrã da página 'Executar Script de Comando' no portal do Azure.

  3. Depois que o comando for executado com êxito, reinicie a VM.

  4. Generalize a VM, pegue o VHD da imagem e pare a VM.

  5. Reenvie a imagem generalizada.

Validações do Network Virtual Appliance

Durante a certificação de imagem do Marketplace, uma oferta de VM que seja um Network Virtual Appliance (NVA) é validada usando testes genéricos para qualquer oferta de VM e casos de teste NVA listados na tabela abaixo. O objetivo dessas validações específicas de NVA é verificar o quão bem a imagem NVA orquestra com a pilha SDN.

Caso de teste Etapas para executar o caso de teste Solução
Acesso VHD Verifique se a URL SAS correta para o VHD é fornecida, se as permissões estão definidas para permitir acesso e se a imagem NVA está generalizada. Verifique a imagem NVA e o URL fornecido.
Implantação de NVA Implante uma VM usando o NVA com uma NIC. Verifique se a implantação foi concluída em 20 minutos. Se a implantação não for concluída em 20 minutos, verifique a imagem NVA.
Reinicialização NVA Implante uma VM usando o NVA com uma NIC. Em seguida, vá para a VM no portal do Azure e, na seção Suporte + de solução de problemas no painel esquerdo, selecione Reimplantar + Reaplicar e reimplantar a VM. Após a conclusão da reimplantação, verifique se o status da VM é Executando e se a porta NIC 22 está acessível usando o comando Netcat. Se a VM não surgir após a reinicialização, pode haver um problema com a imagem NVA.

Se o teste Netcat falhar, pode ser porque a NIC não apareceu após a reinicialização, mesmo que a VM estivesse em execução. Aguarde alguns minutos e tente novamente. Se depois de 20 minutos ainda falhar, então pode haver um problema com a imagem NVA
Reimplantação de NVA Implante uma VM usando o NVA com uma NIC. Em seguida, reimplante a VM. Verifique se o status da VM é Executando e se a porta NIC 22 está acessível usando o comando Netcat. Se a reimplantação não for concluída em 15 minutos, pode haver um problema com a imagem NVA.

Se o teste Netcat falhar, pode ser porque a NIC não apareceu após a reinicialização, mesmo que a VM estivesse em execução. Aguarde alguns minutos e tente novamente. Se depois de 20 minutos ainda falhar, então pode haver um problema com a imagem NVA
Alta Disponibilidade Implante uma VM usando o NVA com uma NIC. Nenhum IP público deve ser anexado à NIC ou, se o IP público estiver anexado, o SKU deve ser padrão e o método de alocação de IP deve ser estático. Na mesma rede virtual, configure um balanceador de carga do Interno do Azure usando a configuração abaixo.
- Balanceador de carga usando SKU padrão
- Frontend IP usando o método de alocação de IP privado como dinâmico
- Sondas de saúde usando TCP, porta 22 com um intervalo de repetição de 15 segundos
- Uma regra de balanceamento de carga com protocolo como todos os e habilitar IP flutuante definido como False.
- Pool de back-end apontando para NVA VM.

Quando a configuração estiver pronta, verifique se a VM NVA está acessível através do balanceador de carga, usando o comando Netcat.
Se o NVA estiver inacessível no balanceador de carga, verifique a configuração do recurso VM, balanceador de carga e portas HA. Se tudo estiver correto, então pode haver um problema com a imagem NVA.
Emparelhamento VNET Implante uma máquina virtual VM1 usando a imagem NVA, com uma NIC em uma rede virtual VNET1. Em outra rede virtual VNET2, implante uma máquina virtual VM2 usando qualquer imagem do Linux, digamos ubuntu, com uma NIC, e configurações de VM como método de alocação de IP dinâmico e SKU básico. Criar de emparelhamento VNET entre VNET1 e VNET2 e Tráfego para rede virtual remota está configurado como Permitir (padrão)

Quando a configuração estiver pronta, verifique se a partir do VM2 podemos alcançar o IP privado da NIC no NVA VM1, usando o comando Netcat.
Se o NVA VM1 estiver inacessível a partir do VM2, verifique se o emparelhamento VNET está configurado corretamente e tente novamente. Se ainda assim não funcionar, pode haver um problema com a imagem NVA.
Rede acelerada (AN) Implante uma VM com o NVA e 1 NIC habilitada para AN. Você pode habilitar o AN em uma NIC ao criar a VM ou nas propriedades da NIC depois de criar a VM. Verifique se a VM estará ativa e em execução. Se a implantação falhar, verifique se a imagem NVA oferece suporte à Rede Acelerada.
Multi-NIC Básico Implante uma VM usando o NVA com 3 NICs com método de alocação de IP dinâmico e SKU básico. Obtenha endereços IP e MAC privados para todas as NICs (consulte ver de Interface de Rede para obter instruções). Em seguida, reimplante a VM e verifique se o IP privado e o endereço MAC de todas as NICs permanecem os mesmos de antes da reimplantação. Se o IP privado e o endereço MAC de todas as NICs mudarem após a reimplantação, pode haver um problema com a imagem NVA.
Interrupção da rede Implante uma VM usando o NVA com uma NIC. Em seguida, crie e aplique um NSG (Network Security Group) para bloquear todo o tráfego para a VM NVA. Em seguida, verifique se o status da VM é Executando. Se depois de aplicar o NSG a VM ficar inativa, então pode haver um problema com a imagem NVA.

Para obter mais informações ou perguntas, abra um caso de Suporte do Azure.

Visão geral do Netcat:

Netcat é um comando capaz de estabelecer uma conexão TCP ou UDP entre dois computadores, o que significa que ele pode escrever e ler através de uma porta aberta. Durante as validações NVA, executamos o comando Netcat a partir de uma VM que está na mesma rede virtual que a VM NVA, para testar se a porta TCP 22 está acessível. A sintaxe do comando é nc <destination_ip_address> <destination_port>, onde

  • destination_ip_address é o endereço IP privado atribuído à VM NIC,
  • destination_port é o número da porta no NVA. Usamos 22 em casos de teste de NVA.

Por exemplo, nc 192.168.1.1 22

Solicitar uma exceção em imagens de VM para testes selecionados

Os editores podem solicitar exceções para alguns testes realizados durante a certificação de VM. Exceções são fornecidas em casos raros quando um editor fornece evidências para apoiar a solicitação. A equipa de Certificação reserva-se o direito de recusar ou aprovar exceções a qualquer momento.

Esta seção descreve cenários gerais nos quais os editores solicitam uma exceção e como solicitá-la.

Cenários de exceção

Os editores geralmente solicitam exceções nos seguintes casos:

  • Exceção para um ou mais casos de teste. Entre em contato com de suporte do Partner Center para solicitar exceções para casos de teste.

  • VMs bloqueadas / Sem acesso root. Alguns editores têm cenários em que as VMs precisam ser bloqueadas porque têm software, como firewalls, instalados na VM. Nesse caso, baixe o Certified Test Tool e envie o relatório em de suporte do Partner Center.

  • Modelos personalizados. Alguns editores publicam imagens de VM que exigem um modelo personalizado do Azure Resource Manager (ARM) para implantar as VMs. Nesse caso, envie os modelos personalizados em de suporte do Partner Center para serem usados pela equipe de certificação para validação.

Informações para fornecer cenários de exceção

Entre em contato com de suporte do Partner Center para solicitar uma exceção para um dos cenários e inclua as seguintes informações:

  • ID do editor. Digite o ID do editor do portal do Partner Central.

  • ID da oferta/nome. Insira o ID ou o nome da oferta.

  • SKU/ID do plano. Digite o ID do plano de oferta da VM ou a SKU.

  • Versão. Insira a versão de oferta da VM que requer uma exceção.

  • Tipo de exceção. Escolha entre testes, VM bloqueada ou modelos personalizados.

  • Motivo do pedido. Inclua o motivo do pedido de exceção, além de quaisquer informações sobre isenções de teste.

  • Linha do tempo. Insira a data final da sua exceção.

  • Anexo. Anexados documentos comprovativos importantes:

    • Para VMs bloqueadas, anexe o relatório de teste.
    • Para modelos personalizados, forneça o modelo ARM personalizado como anexo.

    Se não incluir estes anexos, o seu pedido será negado.

Abordar uma vulnerabilidade ou uma exploração em uma oferta de VM

Esta seção descreve como fornecer uma nova imagem de VM quando uma vulnerabilidade ou exploração é descoberta com uma de suas imagens de VM. Aplica-se apenas a ofertas de VM do Azure publicadas no Azure Marketplace.

Observação

Não é possível remover a última imagem da VM de um plano ou interromper a venda do último plano de uma oferta.

Execute uma das seguintes ações:

Fornecer uma imagem de VM fixa

Para fornecer uma imagem de VM fixa para substituir uma imagem de VM que tenha uma vulnerabilidade ou exploração:

  1. Forneça uma nova imagem de VM para resolver a vulnerabilidade de segurança ou exploração.
  2. Remova a imagem da VM com a vulnerabilidade de segurança ou exploração.
  3. Republique a oferta.

Fornecer uma nova imagem de VM para abordar a vulnerabilidade de segurança ou exploração

Para concluir essas etapas, prepare os ativos técnicos para a imagem da VM que você deseja adicionar. Para obter mais informações, consulte Criar uma máquina virtual usando uma base aprovada ou Criar uma máquina virtual usando sua própria imagem e Gerar um URI SAS para sua imagem de VM.

  1. Inicie sessão no Partner Center.

  2. Na página inicial, selecione o Marketplace oferece bloco.

  3. Na coluna alias da oferta, selecione a oferta.

  4. Selecione a guia Visão geral do Plano e, em seguida, selecione o plano apropriado.

  5. Na guia de configuração técnica, em Imagens de VM , selecione + Adicionar imagem de VM.

    Observação

    Você pode adicionar apenas uma imagem de VM a um plano de cada vez. Para adicionar várias imagens de VM, publique a primeira antes de adicionar a próxima imagem de VM.

  6. Nas caixas que aparecem, forneça uma nova versão do disco e a imagem da máquina virtual.

  7. Selecione Salvar rascunho.

Em seguida, remova a imagem da VM com a vulnerabilidade de segurança.

Remover a imagem da VM com a vulnerabilidade de segurança ou exploração

  1. Inicie sessão no Partner Center.
  2. Na página inicial, selecione o Marketplace oferece bloco.
  3. Na coluna alias da oferta, selecione a oferta.
  4. Selecione a guia Visão geral do Plano e, em seguida, selecione o plano apropriado.
  5. Na guia de configuração técnica, em Imagens de VM , ao lado da imagem de VM que você deseja remover, selecione Remover imagem de VM.
  6. Na caixa de diálogo, selecione Continuar.
  7. Selecione Salvar rascunho.

Em seguida, publique novamente a oferta.

Republicar a oferta

  1. Selecione Rever e publicar.
  2. Se você precisar fornecer alguma informação à equipe de certificação, adicione-a à caixa Notas de para certificação.
  3. Selecione Publicar.

Para concluir o processo de publicação, consulte Revisar e publicar ofertas.

Corrigir uma vulnerabilidade relacionada a TLS em uma oferta de VM

Esta seção descreve como fornecer uma nova imagem de VM quando uma vulnerabilidade relacionada a TLS é descoberta com uma de suas imagens de VM. Aplica-se apenas a ofertas de VM do Azure publicadas no Azure Marketplace.

Etapas de remediação

Para resolver essas vulnerabilidades, siga estas etapas:

Desative o uso de protocolos TLS 1.0 e 1.1 e verifique se a imagem da VM suporta TLS versão 1.2 ou superior. Isso pode ser conseguido definindo as chaves do Registro apropriadas ou as definições de configuração na imagem da VM.

Para Linux, use os seguintes comandos para testar manualmente e garantir que essas versões estejam desativadas:

  • para TLS 1.0:

    openssl s_client -connect ip:port -tls1
    
  • para TLS 1.1:

    openssl s_client -connect ip:port -tls1_1
    

Para Windows, consulte a documentação oficial do TLS Registry Settings para atualizar as chaves do Registro. Use os seguintes comandos do PowerShell para definir as configurações de TLS:

Caminho Designação Valor
HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client "Habilitado" 0
HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server "Habilitado" 0
HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client "Habilitado" 0
HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server "Habilitado" 0
HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client "Habilitado" 1
HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server "Habilitado" 1

Ativando versões superiores (opcional)

Se você quiser habilitar versões superiores (por exemplo, TLS 1.3), repita as etapas acima com os caminhos e valores correspondentes para essas versões.

Imagens de VM com acesso limitado ou que exijam modelos personalizados

Oferta bloqueada (ou) desativada SSH

As imagens publicadas com SSH desativado (para Linux) ou RDP desativado (para Windows) são tratadas como VMs bloqueadas. Existem cenários de negócios especiais devido aos quais os Editores só permitem acesso restrito a nenhum/alguns usuários.

Durante as verificações de validação, as VMs bloqueadas podem não permitir a execução de determinados comandos de certificação.

Modelos personalizados

Em geral, todas as imagens publicadas em ofertas de VM única seguem o modelo ARM padrão para implantação. No entanto, há cenários em que o editor pode exigir personalização durante a implantação de VMs (por exemplo, várias NICs a serem configuradas).

Dependendo dos cenários abaixo (não exaustivos), os editores usam modelos personalizados para implantar a VM:

  • A VM requer sub-redes de rede extras.
  • Mais metadados a serem inseridos no modelo ARM.
  • Comandos que são pré-requisitos para a execução do modelo ARM.

Extensões de VM

As extensões de máquina virtual (VM) do Azure são pequenos aplicativos que fornecem tarefas de configuração e automação pós-implantação em VMs do Azure. Por exemplo, se uma máquina virtual exigir instalação de software, proteção antivírus ou executar um script dentro dela, uma extensão de VM poderá ser usada.

As validações de extensão de VM do Linux exigem que o seguinte faça parte da imagem:

Para obter mais informações, visite VM Extension.

Verificação da integridade da imagem

Se você estiver criando uma imagem e criando um disco a partir da imagem para verificar a integridade da imagem, observe que os primeiros 1 MB estão reservados para desempenho otimizado e os últimos 512 bytes estão reservados para o rodapé VHD. Portanto, ignore-os ao verificar a integridade da imagem.