Instalar software VPN num host web pode reorganizar serviços, mas um certificado inesperado não prova que os arquivos do Apache foram reescritos. Algo apresentou esse certificado ao seu navegador, e a primeira tarefa é nomeá-lo. Até que o ouvinte e o host virtual sejam identificados, toda reparação é um palpite aplicado à camada errada. Toda a verificação abaixo é somente leitura.

Nada é reiniciado, desinstalado ou sobrescrito enquanto reúne os fatos que decidem o caso.

Leia o certificado que o navegador realmente recebeu

Anote o nome do host, o endereço resolvido para cada família, a porta e os detalhes do certificado de que o navegador reclamou. Um nome que resolve tanto para um registro A quanto para um AAAA pode chegar a duas frentes diferentes, e apenas uma delas pode ser o host ao qual você tem acesso de shell. Um navegador atrás de um proxy pode pegar um terceiro caminho novamente. Adivinhar qual deles produziu o aviso desperdiça a única observação que você tem.

Depois reproduza o handshake a partir de uma máquina no mesmo caminho, nomeando o endereço explicitamente e enviando o nome de servidor pretendido para que a resposta reflita o site e não o host padrão.

openssl s_client -connect 198.51.100.37:443 -servername www.example.net </dev/null 2>/dev/null |
  openssl x509 -noout -subject -issuer -fingerprint -sha256 -ext subjectAltName

Compare os nomes alternativos do sujeito e a impressão digital com o certificado que você espera, não com um emissor conhecido. Conectar-se a um endereço nu sem o nome de servidor pode selecionar um certificado padrão, que então parece o arquivo errado quando na verdade é a pergunta errada.

Identifique o processo vinculado a essa porta

No host que deve receber a conexão, liste os ouvintes e anote o endereço de vinculação, a família de endereços e o proprietário do processo. Um serviço vinculado ao endereço de loopback não é o mesmo que um vinculado a todas as interfaces, e uma publicação de contêiner pode colocar o ouvinte público num lugar completamente diferente.

sudo ss -ltnp 'sport = :443'
sudo ss -ltnp | grep -E ':(443|943)\b'

Se o TLS é terminado por um balanceador de carga ou um proxy à frente, pare aqui e inspecione essa frente em vez disso. A instância do Apache atrás dele pode nunca apresentar um certificado a um navegador público, então editar sua configuração não muda nada do que o navegador vê. A visão dos sockets e o handshake externo precisam descrever o mesmo caminho, e é isso que esta comparação estabelece.

Combine o host virtual antes do arquivo

Quando o Apache é o terminador, pergunte a ele qual host virtual vence para esse endereço e nome. O comando de controle imprime o layout efetivo, incluindo o grupo associado a cada socket, os nomes de servidor declarados e o host tratado como padrão. Editar um arquivo de certificado sem essa resposta é como o site errado acaba sendo servido a partir de um arquivo correto.

sudo apachectl -S

As perguntas frequentes sobre SSL do Apache explicam como a indicação de nome de servidor seleciona um certificado. O cabeçalho Host do HTTP chega depois do handshake e não pode alterar retroativamente o que já foi apresentado, então um nome não correspondente ou ausente recai no host padrão.

Um host virtual nomeado com um erro de digitação em ServerAlias produz exatamente este sintoma, e também um segundo arquivo de configuração que carregue primeiro um host que captura tudo. Ambos são visíveis nessa listagem de layout.

Verifique a correção em cada caminho que você afirma

Após uma mudança aprovada, repita a verificação específica do nome do host para cada família de endereços e termine com a validação comum do navegador em vez de uma sinalização de contorno. Preserve um caminho de administração separado antes de tocar nas configurações compartilhadas do ouvinte, porque um erro ali remove o acesso que você usaria para desfazê-lo. Depois anote qual ouvinte respondeu, qual host virtual correspondeu e qual certificado foi servido antes e depois.

Remover um pacote pode mudar o layout e deixar a discrepância original sem explicação, e é por isso que esse registro sobrevive à reparação.

O que você quer é o site pretendido no ponto de entrada pretendido. Um certificado diferente depois que um serviço não relacionado desapareceu não é esse resultado, mesmo quando o navegador para de reclamar.

Artigos relacionados