首页/系统/Linux 运维命令速查/场景:TLS 证书巡检
本包目录(613 条)
文件与目录76 条文本处理77 条
网络命令82 条
进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

场景:TLS 证书巡检

证书到期与链问题是线上高频事故:用循环批量检查域名证书的到期时间与 SNI 返回是否正确,提前 30 天预警。

Linux 运维命令速查系统更新于 2026-10-12
场景批量证书到期检查
组合openssl s_client + x509 + 循环

单域名检查

单域名检查
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null \
  | openssl x509 -noout -subject -issuer -enddate -checkend 2592000   # 30 天内到期则退出码非 0

批量巡检

批量巡检
for d in qiqicto.com api.example.com static.example.com; do
  end=$(echo | openssl s_client -connect $d:443 -servername $d 2>/dev/null | openssl x509 -noout -enddate)
  echo "$d $end"
done
链不全(缺中间证书)表现为浏览器/curl 报错但 openssl 能握手:加 -showcerts 对照链完整性。

易错点

  • -servername 必须写:否则拿到默认证书会误判「证书域名不对」
  • 内网域名要指定目标 IP 连接(-connect IP:443)再用 -servername 域名,否则先撞 DNS

数据来源与参考

  • man 1 openssl-s_client(OpenSSL 官方手册)

相关工具

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