sslnginxtesla

Nginx error: "No shared cipher". But there are


My Nginx server has an SSL certificate that looks really good and works in most browsers perfectly. The server is https://live.evmote.com . You can "hit" the server by going to https://live.evmote.com/primus . The SSL Cert check is here: https://www.ssllabs.com/ssltest/analyze.html?d=live.evmote.com

So far, so good. The problem is specifically on the Tesla Model S browser (the in-car browser). It gives a "Bad certificate" error. The Tesla browser is notoriously bad and has incomplete support. There's no way to view the cert chain or debug the problem from the Tesla. It's more like an appliance than a computer. Here's the SSL support from within the Tesla: https://i.sstatic.net/Oqk47.jpg

On the Nginx server, I'm getting this error in the log: SSL3_GET_CLIENT_HELLO:no shared cipher

Now, clearly from the Tesla SSL report and the server report, there are shared ciphers. I would expect that they would handshake on this one: TLS_RSA_WITH_AES_256_CBC_SHA (0x35)

I'm not sure how to troubleshoot from here.

Thanks, Ryan


Solution

  • The error message might be misleading. What's definitely a problem is that the browser does not support SNI, but your web site requires it. At least it only serves the valid certificate (for live.evmote.com) for SNI capable browsers, all the others get a self-signed wildcard certificate which will not be accepted by a browser doing proper certificate validation.