nginx SSL_do_handshake() failed
ngw at nofeed.org
Fri Nov 27 15:54:29 UTC 2015
it's the first time I configure an SSL certificate on my development machine (I'm no sysadmin - I need SSL to work with facebook). I decided to go with ngingx proxying a ruby sinatra application, nothing fancy.
This is the error I get when Facebook tries to connect to my HTTP server. AFAIK nginx is the culprit here:
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: 126.96.36.199, server: 0.0.0.0:4567
This is what I did:
Downloaded the cert (a .key, a .crt and a .csr) from RapidSSL
Downloaded the trusted cert from RapidSSL (https://knowledge.rapidssl.com/library/VERISIGN/ALL_OTHER/RapidSSL%20Intermediate/RapidSSL_CA_bundle.pem) and saved locally under /etc/ssl/cert/
Installed locally nginx and configured like this: https://gist.github.com/ngw/f97adc4194b08ea355c8
Restarted both nginx and puma respectively on port 4567 and 8080
Went to https://sandbox.thing.it, the app responded as expected, the connection was encrypted and the certificate appears to be the correct one.
Went to Facebook and attempted to register a new page subscription (https://developers.facebook.com/docs/graph-api/webhooks/v2.2). Had the error reported on the top (SSL_do_handshake() failed) when Facebook attempted to validate my callback url
Thanks for your time,
More information about the nginx