ERR_SSL_PROTOCOL_ERROR Após a instalação do certificado SSL

2

Depois de passar pelo processo de renovação de um certificado SSL expirado, estou recebendo erros "ERR_SSL_PROTOCOL_ERROR" ao visualizar no Chrome. Depois de horas de dificuldades, eu encontrei um backup e substituí todos os meus arquivos de certificados e arquivos conf de volta para o jeito que eles eram e ainda estou recebendo o erro. (Meu certificado antigo ainda deve ser válido por mais alguns dias)

Meus registros de erros mostram uma tonelada de entradas, incluindo Invalid method in request \x16\x03\x01 . A pesquisa do Google me levou a postagens descrevendo como verificar se a saída em 443 é HTML. Eu fiz uma sessão de telnet e posso confirmar que o texto simples html está sendo enviado de volta pela porta 443.

A execução do a2enmod ssl me fornece "Módulo ssl já ativado". Essa é todas as mensagens que encontrei procurando essa menção do resultado do registro para verificar.

Quaisquer outras coisas para tentar garantir que o SSL esteja sendo executado como deveria?

UPDATE

Executando netstat -lnt eu recebo ...

Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN  

É muito difícil dizer o que está acontecendo na porta 80 com meu site. Meu domínio está na lista de pré-carga da HSTS, então é meio difícil para eu tentar a porta 80.

ATUALIZAÇÃO MAIS IMPORTANTE

A coisa aleatória de cinco milhões e oitenta que acabei tentando acabou funcionando, mas não tenho ideia do motivo.

Tudo o que fiz foi alterar <VirtualHost [my ip address]:443> para <VirtualHost *:443>

Alguém pode explicar por que isso corrigiu as coisas? A versão com o meu endereço IP era exatamente o que era antes de eu começar a fazer alterações na noite passada. Eu restaurei o arquivo do backup. Eu li em alguns lugares que NameVirtualHost e VirtualHost podem ser úteis. Mas eu nunca adicionei ou removi nada que incluísse esses comandos.

    
por Steven Jenkins 04.03.2017 / 08:25

2 respostas

1

I did a telnet session and can confirm that plaintext html is being sent back through port 443.

Parece que você não tem um servidor SSL ativado na porta 443. Para obter o html válido de volta do seu site pela porta 443, você precisa configurar uma conexão SSL e o telnet não faça isso. Para verificar uma conexão SSL, use

openssl s_client -connect example.com:443

Observe que alguns servidores configurados corretamente podem enviar de volta o html para uma conexão não https na porta 443, aconselhando apenas isso, mas você deve ter notado que, por exemplo,

<html>
<head><title>400 The plain HTTP request was sent to HTTPS port</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<center>The plain HTTP request was sent to HTTPS port</center>
<hr><center>nginx</center>
</body>
</html>
    
por 04.03.2017 / 09:02
0

Acho que você pode se beneficiar ao executar uma verificação de configuração e ver o que aparece:

sudo apachectl configtest

Da sua saída netstat, o httpd não está em execução.

Atualizado para explicar a resposta nos comentários:

OK, isso parece progresso. Você já tentou a sugestão @ istheEnglishWay , usando openssl s_client ?

    
por 04.03.2017 / 11:09

Tags