IPv6 funcionando bem, o IPv4 lança erro OpenSSL

5

Estou criando um servidor da Web ( link ), que funciona bem tanto no IPv4 quanto no IPv6 e ao usar uma conexão não SSL . No entanto, quando me conecto a ele por meio de https, o IPv6 funciona como esperado, mas uma conexão IPv4 gera um erro no lado do cliente. Os logs do lado do servidor estão vazios para a conexão IPv4 / https. Resumido em uma tabela:

     | http  | https
-----+-------+-------------------------------------------------------
IPv4 | works | OpenSSL error, failed. No server side logging.
-----+-------+-------------------------------------------------------
IPv6 | works | self signed certificate warning, but works as expected

Aparentemente, o túnel SSL não está configurado, o que explica que os logs do Apache estão vazios. Mas por que funciona bem com o IPv6 e falha com o IPv4? Minha pergunta é por que esse erro do OpenSSL está sendo lançado e como posso resolvê-lo?

Abaixo estão algumas informações extras sobre a configuração.

IPv6 https

Comando usado para reproduzir o comportamento de IPv6 / https:

$ wget --no-check-certificate -O /dev/null -6 https://blog.linformatronics.nl
--2012-11-03 15:46:48--  https://blog.linformatronics.nl/
Resolving blog.linformatronics.nl (blog.linformatronics.nl)... 2001:980:1b7f:1:a00:27ff:fea6:a2e7
Connecting to blog.linformatronics.nl (blog.linformatronics.nl)|2001:980:1b7f:1:a00:27ff:fea6:a2e7|:443... connected.
WARNING: cannot verify blog.linformatronics.nl's certificate, issued by '/CN=localhost':
  Self-signed certificate encountered.
    WARNING: certificate common name 'localhost' doesn't match requested host name 'blog.linformatronics.nl'.
HTTP request sent, awaiting response... 200 OK
Length: 4556 (4.4K) [text/html]
Saving to: '/dev/null'

100%[=======================================================================>] 4,556       --.-K/s   in 0s      

2012-11-03 15:46:49 (62.5 MB/s) - '/dev/null' saved [4556/4556]

IPv4 https

Comando usado para reproduzir o comportamento de IPv6 / https:

$ wget --no-check-certificate -O /dev/null -4 https://blog.linformatronics.nl
--2012-11-03 15:47:28--  https://blog.linformatronics.nl/
Resolving blog.linformatronics.nl (blog.linformatronics.nl)... 82.95.251.247
Connecting to blog.linformatronics.nl (blog.linformatronics.nl)|82.95.251.247|:443... connected.
OpenSSL: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
Unable to establish SSL connection.

Notas

  • Estou no Ubuntu Server 12.04.1 LTS
por jippie 03.11.2012 / 16:30

1 resposta

6

Você tem alguns erros de configuração graves de firewall / NAT. Você não está realmente executando um servidor web na porta 443 ...

$ telnet 82.95.251.247 443
Trying 82.95.251.247...
Connected to 82.95.251.247.
Escape character is '^]'.
SSH-2.0-OpenSSH_6.0p1 Debian-3ubuntu1

E o seu serviço IPv6 parece estar protegido por firewall ...

$ telnet 2001:980:1b7f:1:a00:27ff:fea6:a2e7 443
Trying 2001:980:1b7f:1:a00:27ff:fea6:a2e7...
telnet: connect to address 2001:980:1b7f:1:a00:27ff:fea6:a2e7: Permission denied

Corrija seus problemas de firewall e / ou de serviço na porta errada, e você deve descobrir que as coisas começam a funcionar.

    
por 03.11.2012 / 16:40