Estou vendo algumas falhas estranhas de handshake SSL no lado do cliente. Estamos tendo um aplicativo web customizado js que é acessado apenas por navegadores com Webkit antigo (como encontrado no Epiphany). Todas as solicitações vindas do cliente são feitas no mesmo navegador (versão e tipo).
Aqui estão os sintomas:
a.) O navegador do cliente exibe falha de handshake SSL:
b.) Nenhum erro SSL é encontrado no erro nginx, syslog ou log de abertura
c.) No tcp dump, estou vendo alguns erros ocasionais de SSL Handshake:
d.) estamos usando Vamos criptografar certificados SSL
e.) nginx.conf:
ssl_prefer_server_ciphers em;
O nginx funciona como proxy que redireciona todo o tráfego HTTP para https
ativado para sites:
server {
listen 80; server_name srv_name; return 301 https://$host$request_uri;
}
server {
listen 443; server_name srv_name; proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600; ssl on; ssl_certificate fullchain.pem_path; ssl_certificate_key privkey.pem_path; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL; location /robots.txt { alias /opt/robots.txt; } location /.well-known/ { alias /usr/share/nginx/html/.well-known/; } location / { proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_pass http://localhost:8000/; break; }
}
f.) Fluxo básico:
g.) As coisas começaram a acontecer após a migração para novos servidores (do Ubuntu 14.04 lts (openssl 1.0.1f 6 jan 2014) para o Ubuntu 16.04 lts (1.0.2g 1 mar 2016) A versão do aplicativo e do navegador do cliente permaneceu a mesma.
Você tem alguma idéia de onde procurar em seguida? Por que isso não está acontecendo sempre quando o cliente abre o URL, mas muito esporadicamente.