首页/网络/协议速查/openssl s_client 排障用法

openssl s_client 排障用法

最通用的 TLS 诊断工具:指定 SNI 与版本、查看证书链、验证 OCSP、手工发请求,一条命令覆盖大半握手问题。

协议速查网络更新于 2026-10-12

常用组合

常用组合
openssl s_client -connect example.com:443 -servername example.com </dev/null
openssl s_client -connect example.com:443 -showcerts </dev/null 2>/dev/null | head -80
openssl s_client -connect example.com:443 -tls1_2 -brief </dev/null
openssl s_client -connect example.com:443 -CAfile /etc/ssl/certs/ca-certificates.crt </dev/null
printf 'GET / HTTP/1.0\r\nHost: example.com\r\n\r\n' | openssl s_client -quiet -connect example.com:443 -servername example.com 2>/dev/null | head

参数

参数作用典型场景
-servername设置 SNI虚拟主机排错必带
-showcerts打印整条证书链检查中间证书
-tls1_2/-tls1_3锁定版本兼容性验证
-brief精简输出脚本化检查
-verify_return_error验证失败即报错严格校验
-status请求 OCSP 装订吊销状态检查

易错点

  • 不加 -servername 测试多域名站点会拿到默认证书,容易得出错误的「证书不匹配」结论

数据来源与参考

  • OpenSSL 文档(s_client)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌