A partir do ESXi 8.0 Atualização 1, você pode configurar origens de entropia externas no arquivo kickstart para instalação com script.

Você pode configurar o ESXi em um ambiente altamente seguro para consumir entropia de fontes de entropia externas, como um Módulo de Segurança de Hardware (HSM), e alinhar-se a padrões como Critérios Comuns do BSI, EAL4 e NIST FIPS CMVP, usando o script método de instalação.

ESXi A Atualização 1 do 8.0 apresenta um daemon de entropia, entropyd, que cria um endpoint de vAPI para fornecer REST API para consultar e enviar dados de entropia para hosts ESXi. O daemon de entropia tem vários parâmetros configuráveis: in-memory-cache size, in-storage-cache size, in-memory-low watermark e entropy-lost-timeout. As fontes de entropia, internas e externas, são coletadas no módulo do misturador de entropia. O daemon de entropia encaminha fontes de entropia do mixer para o pool de entropia do kernel.

Se você não precisar selecionar origens de entropia externas, não precisará alterar nada nos scripts existentes.

Você pode configurar origens de entropia externas somente para novas instalações. O daemon de entropia usa dados de entropia passados durante a instalação na primeira inicialização.
Observação: Você não pode usar nenhum outro método, como instalação interativa, uma imagem de cluster ou Implantação automática, para configurar origens de entropia externas. Você não pode ativar o recurso em um host ESXi existente.

Antes de atualizar o arquivo de kickstart, você deve obter dados de entropia binária legítimos de uma fonte externa, como HSM, e salvá-los como um arquivo de tamanho entre 512 KB e 10 MB, por exemplo, entropy_data.dat. Em seguida, codifique o conteúdo do arquivo entropy_data em um formato base64 válido para criar outro arquivo, por exemplo, entropy_data.b64.

No arquivo kickstart, você fornece os seguintes novos parâmetros como parte do comando entropy:

  • data - os dados de entropia codificados em base64 de uma fonte externa.
  • 2 - Esse valor de bitmask (=default4, =interrupts8, =RDRANDsources, 0= }RDSEED, 1=entropyd.) é definido nas configurações do kernel durante o tempo de instalação. Se o RDSEED for compatível, o padrão será conformidade com FIPS. Caso contrário, o padrão será todas as origens de entropia, exceto entropyd. Para conformidade com EAL4, 8 é o único valor necessário, mas você pode usar outras origens no intervalo decimal 0-15. Os valores de origem persistem como uma configuração de kernel durante a instalação.
    Observação: Se você configurar um host ESXi apenas com origens de entropia externas, ou seja, quando o valor sources for definido como 8, deverá continuar fornecendo entropia externa ao host usando a API de entropia. Se a entropia externa se esgotar no host, o host deixará de responder e poderá ser necessária uma reinicialização forçada ou uma reinstalação para recuperar o host dessa situação.

Um kickstart de amostra com os parâmetros de entropia:

vmaccepteula
rootpw xxxxxxxx 
entropy --sources=8 --data=xxxxxxx/xx/xxxxx/xx/xxxx...
install --firstdisk --overwritevmfs 
network --bootproto=dhcp
Figura 1. Fluxo de trabalho de instalação com script para adicionar origens de entropia externas
Fluxo de trabalho de instalação com script para adicionar origens de entropia externas
Após a conclusão da instalação, você pode fazer login no host ESXi e definir alguns parâmetros para o daemon de entropia do shell usando os seguintes comandos ESXCLI:

Comandos ESXCLI

1. Obter comandos

## esxcli system entropyd get Descrição do comando
1 <no argument> Obter os valores padrão e configurados no momento de todos os parâmetros entropyd
2 --default-values Obter valores padrão

2. Definir comandos

## conjunto de entropyd do sistema esxcli Descrição do comando
1 --help Imprimir detalhes do comando "esxcli system entropyd set" e seus argumentos
2

--reset=all

--reset=memory-cache-size

--reset=memory-cache-low-watermark

--reset=storage-cache-size

--reset=external-entropy-lost-timeout

Redefina um parâmetro ou todos os parâmetros para seus valores padrão.
3 --memory-cache-size=<value in KiB> Defina o tamanho do cache de memória em KiB.
4 --memory-cache-low-watermark=<value in %> Defina a marca d'água baixa do cache de memória em porcentagem.
5 --storage-cache-size=<value in KiB> Defina o tamanho do cache de armazenamento em KiB.
6 --external-entropy-lost-timeout=<value in seconds> Defina o tempo limite de perda de entropia externa em segundos.

Exemplo:

$ esxcli system entropyd set --external-entropy-lost-timeout=70 --memory-cache-low-watermark=30 --memory-cache-size=612 --storage-cache-size=5096
$ esxcli system entropyd get
External Entropy Lost Timeout Seconds: 70
Memory Cache Low Watermark Percentage: 30
Memory Cache Size Kibibytes: 612
Storage Cache Size Kibibytes: 5096
                
$ esxcli system entropyd get --default-values
External Entropy Lost Timeout Seconds: 60
Memory Cache Low Watermark Percentage: 20
Memory Cache Size Kibibytes: 512
Storage Cache Size Kibibytes: 4096

Durante a instalação, o instalador do ESXi atualiza o valor das origens de entropia nas configurações do kernel para que ele persista no ConfigStore após a instalação. Essa alteração não afeta a inicialização segura de hosts ESXi.

Para obter mais informações, consulte os guias de programação de SDKs de vSpheresegurança e vSphereautomação.