O ficheiro batch pára com “O sistema não conseguiu encontrar a chave ou o valor de registo especificados” e todos assumem que a autoridade de certificação está avariada. Não está, ou pelo menos ainda não: o script falhou enquanto procurava software, antes de pedir ao Easy-RSA para fazer algo com uma chave. Essa ordem importa, porque significa que a reparação é um problema de procura e que a PKI é apenas espectadora. Ler a linha que falha é todo o diagnóstico, e demora menos tempo do que qualquer das alternativas.

O erro ocorre antes de a CA ser tocada

Os ficheiros batch antigos do Easy-RSA 2 localizam o OpenSSL ou a instalação do OpenVPN consultando o registo, e depois definem variáveis com base no que encontram. Quando a consulta não devolve nada, o script aborta antes de qualquer operação de certificado ser executada.

Uma mensagem sobre uma chave de registo é, portanto, evidência sobre o ambiente do script, não sobre o diretório da CA.

Duas vistas do registo, um só ficheiro batch

Um processo de 32 bits e um processo de 64 bits podem ver vistas diferentes do registo, e um ficheiro batch que assume uma pode perder a entrada que existe na outra. Estas comparações só de leitura mostram a diferença para a chave antiga que alguns scripts antigos usam:

reg query "HKLM\SOFTWARE\OpenVPN" /reg:32
reg query "HKLM\SOFTWARE\OpenVPN" /reg:64

A referência de reg query documenta os seletores de vista. Execute ambos no mesmo contexto do script que falha, porque a vista depende de como o processo arranca e também dos indicadores. Se a entrada existir apenas numa vista, compare o caminho para onde aponta com as ferramentas instaladas antes de alterar seja o que for. Uma chave que existe mas aponta para um diretório de instalação antigo é uma avaria diferente de uma chave ausente.

Se nenhuma das vistas tiver a entrada, o instalador nunca a criou, e fabricar um valor à mão não fará as ferramentas funcionar.

Não acrescente /reg:64 sem condições

A correção tentadora é acrescentar o seletor de 64 bits a cada consulta e seguir em frente. Em algumas instalações isso é correto, noutras envia o script para uma vista que realmente não tem nada.

Altere a procura apenas depois de ver qual vista contém o valor esperado.

Descobrir não é reparar a PKI

Este erro não estabelece que o certificado da CA, a chave de assinatura, o ficheiro de série ou a base de dados de revogação estejam danificados. Executar um clean-all copiado de um tutorial antigo destruiria um conjunto de objetos completamente diferente e deixaria a procura avariada. Mantenha as duas atividades separadas na cabeça e no ticket. Se uma operação de certificado falhar mais tarde, avalie-a pelas suas próprias provas.

Faça uma cópia de segurança do diretório da CA antes de qualquer experiência, mesmo de uma que tenha a certeza de que é só de leitura.

Passar para o Easy-RSA 3 é uma migração

Uma instalação mantida deve usar o lançador e o modelo de configuração do pacote atual, e o Easy-RSA 3 não é o mesmo fluxo de trabalho com ficheiros batch do Easy-RSA 2. O guia de início rápido para uma nova PKI não é uma instrução de migração para uma autoridade existente. Antes de mudar de versão, preserve o material da CA e os registos de emissão e revogação, e siga as indicações de atualização dessa versão. Inicializar uma CA de substituição dentro do diretório autoritativo para fazer desaparecer um erro de descoberta de ferramentas é a pior opção da lista.

Uma mudança de versão é um projeto; o erro de registo é uma tarde.

A comparação que realmente resolve isto

Anote quatro coisas e compare-as diretamente:

  • Que script foi executado e que linha falhou.
  • Que vista do registo essa linha consultou.
  • Que caminho de executável o script esperava.
  • Que instalação existe realmente na máquina.

Quando essas quatro coincidem, o erro desaparece, e qualquer problema de certificado que reste pode ser lido pelas suas próprias provas em vez de se culpar a CA.

Artigos relacionados