Eu configurei o SSL no meu LEMP com um certificado autoassinado de acordo com as instruções aqui: link
A ÚNICA exceção é o default_server
, o qual eu não poderei usar porque este será um servidor multi-vhost (eventualmente)
Nada falha durante todo o processo até que eu tente navegar no site via HTTPS, ele falha com Secure Connection Failed
sem nenhuma outra opção para ignorar. (Espero um erro com base no certificado autoassinado, mas no Firefox geralmente há o botão 'Avançado' com o qual posso ignorar.)
Também verifiquei que as portas apropriadas estão abertas para o servidor via netstat -ntlp
Vocêpodenavegarpelositeaquisequiserveramensagemdeerro: link (não é produção, então estou não é real preocupado com isso ...)
A execução de curl -I https://www.azem.us/
está me retornando o seguinte erro: curl: (35) gnutls_handshake() failed: The TLS connection was non-properly terminated.
O que realmente me pegou, não há nada em um log de erros configurado.
O que posso fazer para corrigir isso e conseguir exibir esses sites com SSL?
NOTA: Isso também acontece com um certificado SSL adequado de uma autoridade de certificação real
Diagnóstico de progresso
A execução de openssl s_client -connect www.azem.us:443
está me retornando algumas informações interessantes:
CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 305 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1474399712
Timeout : 300 (sec)
Verify return code: 0 (ok)
---
Eu provavelmente estou fora do meu pensamento, mas isso não significa que os certificados não existem no servidor? Eu posso verificar se eles realmente existem e estão configurados corretamente no meu nginx.conf
E com: openssl s_client -verify www.azem.us:443
Retorna:
verify depth is 0
connect: Connection refused
connect:errno=111
Por nmap de outra máquina
Host is up (0.0043s latency).
Not shown: 998 filtered ports
PORT STATE SERVICE
80/tcp open http
443/tcp open https
telnet
pode se conectar, mas imediatamente fecha a conexão ao tentar a porta 443
GIT REPO para configuração: link
Finalmente chegando em algum lugar ... Eu mudei o nível error_log
para o nginx.conf principal e agora estou recebendo um erro no log: 2016/09/21 08:22:58 [error] 29557#29557: *4 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking, client: this.is.my.ip, server: 0.0.0.0:443