Todos os produtos
Search
Central de documentação

Elastic Compute Service:Build a TDX confidential computing environment and verify remote attestation

Última atualização: Sep 02, 2026

Este tópico descreve como criar um ambiente de computação confidencial TDX em uma instância ECS baseada na Intel® Trusted Domain Extension (Intel® TDX), denominada instância TDX, e como executar casos de teste para verificar as capacidades do TDX.

Contexto

A Intel® TDX é uma tecnologia de proteção baseada em hardware para instâncias ECS. Em uma instância TDX, o hardware da CPU protege confidencialmente os registradores, os dados de memória, o tratamento de interrupções e outros estados de execução. Nem provedores de cloud nem atacantes externos conseguem monitorar ou adulterar o estado interno de execução de uma instância TDX, como processos em andamento e dados sensíveis durante a computação. Consulte Intel® Trusted Domain Extension (Intel® TDX).

A Intel® TDX protege instâncias e aplicações por padrão. Aplicações existentes podem migrar para instâncias TDX sem necessidade de redesenvolvimento.

image

Pré-requisitos

Console

A criação de uma instância TDX é semelhante à de uma instância padrão. Apenas as configurações específicas do TDX são descritas aqui. Para configurações gerais, consulte Create an instance on a custom basis.

  1. Acesse ECS console - Instances.

  2. No canto superior esquerdo da página, selecione uma região e um grupo de recursos.

  3. Clique em Create Instance e configure os seguintes parâmetros.

    Parâmetro

    Descrição

    Região e zona

    As regiões e zonas compatíveis variam conforme o tipo de instância. Consulte Supported regions, instance types, and images.

    Este exemplo utiliza China (Beijing) Zone I e ecs.g8i.xlarge.

    Tipo de instância

    Imagem

    Marque a caixa de seleção Confidential VM e selecione a imagem Alibaba Cloud Linux 3.2104 LTS 64-bit.

  4. Conclua as configurações restantes para criar a instância.

CLI and API

Chame a operação RunInstances ou use a Alibaba Cloud CLI para criar uma instância ECS com TDX habilitado. Configure os seguintes parâmetros.

Parâmetro

Descrição

Exemplo

RegionId

China (Beijing)

cn-beijing

ZoneId

Disponível apenas em zonas específicas. Os tipos de instância variam por zona. Consulte Supported regions, instance types, and images.

cn-beijing-i

InstanceType

ecs.g8i.2xlarge

ImageId

ID de uma imagem compatível com TDX. Somente imagens UEFI do Alibaba Cloud Linux 3.2104 LTS 64-bit com kernel 5.10.134-16.al8.x86_64 ou posterior são compatíveis.

aliyun_3_x64_20G_alibase_20241218.vhd

SecurityOptions.ConfidentialComputingMode

O modo de computação confidencial.

TDX

Exemplo de CLI

aliyun ecs RunInstances \
  --SecurityOptions.ConfidentialComputingMode TDX \
  --Region cn-beijing \
  --ZoneId cn-beijing-i \
  --SystemDisk.Category cloud_essd \
  --ImageId 'aliyun_3_x64_20G_alibase_20241218.vhd' \
  --InstanceType 'ecs.g8i.2xlarge' \
  --SecurityGroupId 'sg-<YourSecurityGroupId>' \
  --VSwitchId 'vsw-<YourVSwitchId>' \
  --KeyPairName <YourKeyPairName> \
  

Procedimento

Etapa 1: Verifique se o TDX está ativado

Verifique se o TDX está ativado na sua instância antes de prosseguir.

  1. Verifique se o TDX está ativado.

    lscpu |grep -i tdx_guest

    Se a saída contiver tdx_guest, o TDX estará ativado.

    [root@iZwzxxxxxxxx:~]# lscpu |grep -i tdx_guest
    Flags:           fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc bts rep_good nopl xtopology tsc_known_freq pni pclmulqdq dtes64 ds_cpl ssse3 sdbg fma cx16 pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single sbd ibrs ibpb stibp ibrs_enhanced tdx_guest fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm avx512f avx512dq rdseed adx smap avx512ifma clflushopts clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves avx_vnni avx512_bf16 wbnoinvd avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq rdpid bus_lock_detect cldemote movdiri movdir64b _vp2intersect md_clear serialize tsxldtrk amx_bf16 avx512_fp16 amx_tile amx_int8 flush_l1d arch_capabilities
  2. Verifique a interface de relatório de atestação disponível.

    O kernel expõe os relatórios de atestação TDX (TD Report e Quote) ao modo usuário. A interface varia conforme a versão do kernel. Selecione um comando de verificação compatível com a versão do kernel da imagem. A aprovação em qualquer uma das verificações é suficiente.

    Interface

    Imagens e kernels aplicáveis

    Comando de verificação

    ConfigFS TSM /sys/kernel/config/tsm/report

    Alibaba Cloud Linux 4, Ubuntu 24.04, Debian 13 e Rocky 9.5 ou posterior (kernel upstream 6.7 ou posterior)

    ls -d /sys/kernel/config/tsm/report

    Dispositivo de caractere /dev/tdx_guest

    Alibaba Cloud Linux 3 (kernel 5.10.134-16.al8 ou posterior)

    ls -l /dev/tdx_guest

Etapa 2: Utilize as capacidades de computação confidencial TDX

O TDX fornece quatro capacidades atômicas ao modo usuário. Juntas, elas formam uma cadeia completa desde a medição local até a verificação remota.

Capacidade

Descrição

Finalidade

Geração de TD Report

Estrutura de atestação local retornada pelo Módulo TDX. Possui tamanho fixo de 1.024 bytes e pode vincular os 64 bytes de REPORTDATA fornecidos pelo chamador.

Obter medições locais e vincular atualidade usando um nonce ou hash de chave pública.

Geração de Quote

O Quoting Enclave assina o TD Report e incorpora a cadeia de certificados PCK. Isso produz uma credencial que uma parte remota pode verificar independentemente.

Comprovar a identidade e o estado de execução da instância para uma parte remota.

Verificação de Quote

Verifica a assinatura ECDSA e a cadeia de certificados. Recupera dados complementares como TCB Info, QE Identity e PCK CRL conforme necessário para checar o nível de TCB da plataforma e o status de revogação.

Confirmar que uma Quote é autêntica.

Leitura e extensão de registrador de medição

Lê MRTD e RTMR[0-3], analisa o log de eventos ACPI CCEL e o reproduz contra RTMR[0-3] para comparação. Além disso, estende medições personalizadas para RTMR[2] e RTMR[3].

Verificar a integridade da cadeia de inicialização e incluir eventos da camada de aplicação nas medições.

A comunidade OpenAnolis fornece a ferramenta de linha de comando tdx-lab em go-tdx-guest. Seus casos de teste cobrem as quatro capacidades descritas acima. As etapas a seguir mostram como executar esses casos de teste.

  1. Obtenha e compile a ferramenta.

    sudo yum install -y git golang
    git clone https://gitee.com/anolis/go-tdx-guest.git
    cd go-tdx-guest/tools/tdx-lab
    GOPROXY='https://goproxy.cn,direct' go build -o tdx-lab .
    Nota

    Para imagens Debian e Ubuntu, execute sudo apt install -y git golang-go em vez disso.

  2. Obtenha o endereço PCCS da Alibaba Cloud da região onde a instância reside.

    token=$(curl -s -X PUT -H "X-aliyun-ecs-metadata-token-ttl-seconds: 5" "http://100.100.100.200/latest/api/token")
    region_id=$(curl -s -H "X-aliyun-ecs-metadata-token: $token" http://100.100.100.200/latest/meta-data/region-id)
    PCCS_HOST=sgx-dcap-server-vpc.${region_id}.aliyuncs.com
  3. Execute os casos de teste.

    # Run all test cases
    ./tdx-lab --skip-early --pccs-url ${PCCS_HOST}
    Nota

    O status do TCB não tem garantia de ser UpToDate. Portanto, uma falha de Strict Tcb Check em alguns cenários é esperada. Para a lista completa de parâmetros e uma descrição de cada caso de teste, consulte tools/tdx-lab/README.md.

Regiões, tipos de instância e imagens compatíveis

Limitações de região e tipo de instância

A computação confidencial está disponível apenas em zonas específicas. Os tipos de instância compatíveis variam por zona.

Região e zona

Tipos de instância

China (Beijing) Zone L

ecs.g8i.xlarge e superiores

China (Beijing) Zone I

  • ecs.g8i.xlarge e superiores

  • ecs.g9i.xlarge, ecs.c9i.xlarge, ecs.r9i.xlarge e superiores

  • Família de instâncias ebmg8i

China (Hangzhou) Zone J

ecs.r9i.xlarge e superiores

China (Hong Kong) Zone B

ecs.g8i.xlarge e superiores

China (Hong Kong) Zone C

ecs.g8i.xlarge e superiores

China (Hong Kong) Zone D

ecs.g8i.xlarge e superiores

Singapore Zone B

ecs.g8i.xlarge e superiores

Imagens

Importante

Recomendamos o uso do Alibaba Cloud Linux 3.

  • Debian 13.1 ou posterior: Debian 13.1, Debian 13.2, Debian 13.3.

  • Rocky 9.5 ou posterior: Rocky 9.5, Rocky 9.6, Rocky 9.7, Rocky 10.0, Rocky 10.1.

  • Ubuntu 24.04 ou posterior: Ubuntu 24.04.

  • Alibaba Cloud Linux 3 ou posterior: Alibaba Cloud Linux 3, Alibaba Cloud Linux 4.

Limitações

  • Instâncias TDX podem apresentar desempenho inferior ao de instâncias regulares, pois o hardware da CPU criptografa os registradores e os dados de memória.

  • Devido a redefinições de RTMR, proteção de interrupções e recuperação de estado de registradores, instâncias TDX não suportam reinicializações dentro do SO. Não execute o comando reboot dentro do sistema operacional.

  • Não há suporte para login via VNC. Utilize SSH através do Workbench ou de um cliente de terceiros. Para logs de execução, consulte View instance system logs and screenshots ou GetInstanceConsoleOutput.

  • Limitações de imagem:

    • Somente imagens UEFI são compatíveis.

    • Não há suporte para Windows.

    • Imagens com kernels desatualizados não são compatíveis. A versão do kernel deve ser 5.10.134-16.al8.x86_64 ou posterior.

  • Não há suporte para eRDMA e vários tipos de aceleradores.

  • Problemas conhecidos com o buffer SWIOTLB do kernel guest Linux:

    • Menos memória fica visível para o SO em comparação a uma instância regular. Uma instância TDX reserva memória não criptografada (SWIOTLB) para comunicação com periféricos. Por padrão, essa área corresponde a 6% da memória disponível, até o limite de 1 GiB.

    • Anexar múltiplas interfaces de rede elásticas (ENIs) a uma instância grande pode causar falhas devido à insuficiência de memória SWIOTLB em cenários de placa de rede com múltiplas filas. Pare a instância no console e desanexe as ENIs para recuperar o sistema.

    • Cargas de trabalho de alta E/S podem sofrer degradação de desempenho devido à insuficiência de SWIOTLB. Verifique com:

      dmesg| grep 'swiotlb buffer is full'
      Importante

      Configurações incorretas do SWIOTLB podem causar falha na inicialização. Consulte Create a snapshot antes de prosseguir para permitir reversão em caso de erros.

      Se esse problema ocorrer, aumente o tamanho do SWIOTLB:

      • Defina o tamanho do SWIOTLB para 1 GiB.

        grubby --update-kernel=ALL --args=swiotlb=524288
      • Para versões de kernel posteriores a 5.10.134-18.al8.x86_64, adicione o parâmetro any para oferecer suporte a tamanhos maiores de SWIOTLB:

        grubby --update-kernel=ALL --args=swiotlb=2097152,any   # Sets SWIOTLB to 4 GiB.
        Nota

        Calcule o valor do parâmetro SWIOTLB: Tamanho alvo (em MiB) × 512. Consulte The kernel's command-line parameters.

Melhores práticas

Para mais orientações sobre ambientes de computação confidencial TDX, consulte as melhores práticas a seguir, baseadas nos seus cenários de negócios específicos. Estes recursos abrangem a criação de aplicações, proteção de disco e estratégias de implantação em contêineres.