O sitio web mostra o certificado equivocado? Atope o proceso que escoita
Un sitio presenta un certificado inesperado e o ficheiro obvio reescríbese. Identifique o proceso que escoita e o host virtual que respondeu primeiro.
Instalar software VPN nun aloxamento web pode reorganizar servizos, pero un certificado inesperado non demostra que os ficheiros de Apache se reescribisen. Algo presentou ese certificado ao seu navegador, e a primeira tarefa é nomealo. Ata que se identifiquen o proceso que escoita e o host virtual, cada reparación é unha conxectura aplicada á capa equivocada. Toda a comprobación de abaixo é só de lectura.
Non se reinicia, desinstala nin sobrescribe nada mentres reúne os feitos que deciden o caso.
Ler o certificado que o navegador recibiu realmente
Anote o nome de host, o enderezo resolto para cada familia, o porto e os detalles do certificado dos que se queixou o navegador. Un nome que se resolve tanto nun rexistro A como nun AAAA pode chegar a dúas frontes distintas, e só unha delas pode ser o host ao que ten acceso de shell. Un navegador detrás dun proxy pode tomar de novo un terceiro camiño. Supoñer cal deles produciu o aviso desaproveita a única observación que ten.
Despois reproduza o handshake desde unha máquina no mesmo camiño, nomeando o enderezo explicitamente e enviando o nome de servidor previsto para que a resposta reflicta o sitio en lugar do host predeterminado.
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 suxeito e a pegada co certificado que agarda, non cun emisor coñecido. Conectarse a un enderezo espido sen o nome de servidor pode seleccionar un certificado predeterminado, que entón parece o ficheiro equivocado cando en realidade é a pregunta equivocada.
Identificar o proceso vinculado a ese porto
No host que debería recibir a conexión, enumere os procesos que escoitan e anote o enderezo de enlace, a familia de enderezos e o propietario do proceso. Un servizo vinculado ao enderezo de bucle local non é o mesmo que un vinculado a todas as interfaces, e unha publicación de contedor pode situar o proceso público que escoita nun lugar completamente distinto.
sudo ss -ltnp 'sport = :443'
sudo ss -ltnp | grep -E ':(443|943)\b'
Se TLS o termina un balanceador de carga ou un proxy situado diante, detéñase aquí e inspeccione esa fronte no seu lugar. A instancia de Apache que está detrás pode que nunca presente un certificado a un navegador público, así que editar a súa configuración non cambia nada do que ve o navegador. A vista de sockets e o handshake externo deben describir o mesmo camiño, e iso é o que establece esta comparación.
Facer coincidir o host virtual antes que o ficheiro
Cando Apache é o terminador, pregúntelle que host virtual gaña para ese enderezo e ese nome. O comando de control imprime a disposición efectiva, incluído o grupo asociado a cada socket, os nomes de servidor declarados e o host que se trata como predeterminado. Editar un ficheiro de certificado sen esa resposta é como o sitio equivocado acaba servíndose desde un ficheiro correcto.
sudo apachectl -S
As preguntas frecuentes sobre SSL de Apache explican como a indicación de nome de servidor selecciona un certificado. A cabeceira Host de HTTP chega despois do handshake e non pode cambiar retroactivamente o que xa se presentou, así que un nome que non coincide ou que falta recae no host predeterminado.
Un host virtual nomeado cunha errata en ServerAlias produce exactamente este síntoma, e tamén un segundo ficheiro de configuración que cargue primeiro un host comodín. Ambos son visibles nesa listaxe de disposición.
Verificar a corrección en cada camiño que afirme
Tras un cambio aprobado, repita a comprobación específica do nome de host para cada familia de enderezos e remate coa validación ordinaria do navegador en lugar dun indicador de omisión. Conserve unha ruta de administración separada antes de tocar axustes compartidos do proceso que escoita, porque un erro alí elimina o acceso que usaría para desfacelo. Despois anote que proceso respondeu, que host virtual coincidiu e que certificado se serviu antes e despois.
Eliminar un paquete pode cambiar a disposición e deixar a discrepancia orixinal sen explicar, e por iso ese rexistro sobrevive á reparación.
O que quere é o sitio previsto no punto de entrada previsto. Un certificado distinto despois de que desaparecese un servizo non relacionado non é ese resultado, nin sequera cando o navegador deixa de queixarse.