O navegador provavelmente usa o SNI, enquanto o openssl, como você escreveu, não usa. Tente isto:
echo | openssl s_client -connect mysite.com:443 -servername mysite.com 2>/dev/null | openssl x509 -noout -dates
Estou usando o Let's Encrypt via Certbot no RHEL para obter SSL para o meu servidor. Recentemente tive que renovar meu certificado, o que fiz. Tudo correu bem com o dry-run de renovação do certbot, e atualizei meu certificado. Agora, se eu abrir o site, ele mostrará que o novo certificado expira em três meses, mas quando eu uso esse comando para verificar a expiração do certificado:
echo | openssl s_client -connect mysite.com:443 2>/dev/null | openssl x509 -noout -dates
mostra que o certificado já expirou (o antigo). Não tenho certeza do que estou perdendo? Por que o navegador pode encontrar o certificado correto enquanto o openssl não pode?
Obrigado