Debian Nginx SSL证书有效性检查指南
一 快速检查证书到期与链
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -datesopenssl x509 -in /etc/nginx/ssl/example.com.crt -noout -datesopenssl x509 -in /etc/nginx/ssl/example.com.crt -text -nooutopenssl x509 -enddate -noout -in /etc/nginx/ssl/example.com.crt -checkend 2592000openssl s_client -connect example.com:443 -servername example.com -showcerts二 校验证书与私钥匹配及Nginx配置
openssl x509 -noout -modulus -in /etc/nginx/ssl/example.com.crt | openssl md5openssl rsa -noout -modulus -in /etc/nginx/ssl/example.com.key | openssl md5ssl_certificate 指向包含完整链的证书(如 fullchain.pem),ssl_certificate_key 指向正确私钥:
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;sudo nginx -tsudo systemctl reload nginxsudo chmod 600 /etc/nginx/ssl/*.keysudo chmod 644 /etc/nginx/ssl/*.crt三 在线与深度测试
testssl.sh example.com/usr/lib/nagios/plugins/check_http -H example.com -C 30,14(表示至少 30 天,警告阈值 14 天)。四 自动化监控与续期
ssl_stapling on; ssl_stapling_verify on; resolver 8.8.8.8 valid=300s; resolver_timeout 5s;openssl s_client -connect example.com:443 -tls1_2 -tlsextdebug 2>/dev/null | grep -i "OCSP response"sudo apt update && sudo apt install certbot python3-certbot-nginxsudo certbot renew --dry-run(先演练),确认无误后由系统定时任务自动续期(默认每 90 天检查)。sudo systemctl reload nginx。