openssl s_client shows the certificate the server actually sends
When the browser says the chain is wrong, go and look at the chain.
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null \
| openssl x509 -noout -dates -subject -issuer-servername matters. Without it, a server holding several certificates sends back the default one, which isn't the one you're debugging.
shellsecurity