é a primeira vez que eu configuro um certificado SSL na minha máquina de desenvolvimento (não sou sysadmin - preciso de SSL para trabalhar com o facebook). Eu decidi ir com ngingx proxying um aplicativo ruby sinatra, nada extravagante.
Este é o erro que recebo quando o Facebook tenta se conectar ao meu servidor HTTP. Nginx AFAIK é o culpado aqui:
2015/11/26 15:42:03 [info] 42872#0: *3 SSL_do_handshake() failed (SSL: error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca:SSL alert number 48) while SSL handshaking, client: 31.13.113.70, server: 0.0.0.0:4567
Foi o que eu fiz:
Instalado localmente nginx e configurado assim:
upstream server {
server 0.0.0.0:8080;
}
server {
listen 4567 default_server ssl;
server_name sandbox.thing.it;
ssl_certificate /Users/ngw/thing/server.crt;
ssl_certificate_key /Users/ngw/thing/server.key;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/ssl/cert/RapidSSL_CA_bundle.pem;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 10s;
ssl_prefer_server_ciphers On;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;
location / {
proxy_pass http://server;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Reiniciaram o nginx e o puma respectivamente na porta 4567 e 8080
Fizemos o link , o aplicativo respondeu como esperado, a conexão foi criptografada e o certificado parece ser o correto.
Foi para o Facebook e tentou registrar uma nova assinatura de página ( link ). O erro relatado na parte superior (SSL_do_handshake () falhou) quando o Facebook tentou validar minha URL de retorno de chamada
Alguma sugestão?
Tags ssl nginx ssl-certificate