所有文章

SSL/域名即将过期:如何在2小时内处理P1及SOP以防止再次发生

technologySeptember 9, 2025·#Technology

Playbook P1 在 SSL/域名即将过期时恢复网站,导致“不安全”警告:检查、续订/证书、编辑混合内容、设置自动续订和监控 - 使用 SOP 防止再次发生。

SSL/域名即将过期:如何在2小时内处理P1及SOP以防止再次发生

1) 快速识别:您遇到了什么错误?

浏览器表现

  • “不安全”(HTTP 或 SSL 过期)。

  • “NET::ERR_CERT_DATE_INVALID”(SSL 过期/错误)时钟)。

  • “NET::ERR_CERT_COMMON_NAME_INVALID”(主机名不匹配)。

  • “HSTS 错误”(启用 HSTS,SSL 失败时浏览器禁止访问)。

在 DNS/域层显示

  • 访问有时有效,切换到“停放”页面。

  • 根据域名退回邮件(MX/DNS 已过期)。

  • WHOIS 报告域名过期/暂停

优先级

  • P1:无法访问商店/订单/登录,发生证书/HSTS/域名错误。

  • P2:辅助资源(图片/辅助 CDN)混合错误内容。

  • 1 — 检查真实状态(10’)
    • 在另一个 4G/ISP 上打开 https://http://,隐藏缓存(Ctrl/Cmd + Shift + R)。

    • 通过 SSL Labs/Why No Padlock 等工具检查 SSL(查看证书链、到期日期、中间证书)。

    • 检查 WHOIS 域(到期日期)、DNS (NS/A/CAA)、CDN/WAF (Cloudflare/…)。

    第 2 步 - 决定恢复路径 (15’)

    • SSL 由主机管理(cPanel/Plesk/托管)
      → 登录面板,重新发布/AutoSSL/Let's Encrypt

    • (Cloudflare)
      → 转在“完全(严格)”上,创建原始证书并安装在服务器上,或在原始位置重新颁发 Let’s Encrypt。

    第 3 步 — 续订/重新颁发证书(20–30 分钟)

    • Let’s Encrypt (HTTP-01)

      • 打开端口80/443,如果存在 WAF/验证码,请关闭机器人阻止功能。

      • certbot renew --force-renewalcertbot certonly --nginx/--webroot

    • Let’s Encrypt (DNS-01) (如果阻止端口 80/443 或通配符)

      • 根据 ACME 客户端说明创建 TXT 记录 → 颁发证书通配符 *.domain.com

    • 商业 CA

      • 创建新的CSR (2048/3072 位),验证(DNS/电子邮件/HTTP),加载证书+中间链

      • 更新vHost/Nginx/Apache指向正确的fullchain.pem + privkey.pem

    注意HSTS:如果启用了HSTS,则浏览器在 SSL 失败期间不允许 HTTP 访问。因此,不要禁用 HSTS,尽快在正确的链中更新 SSL

    第 4 步 - 测试和重新加载服务 (10’)

    • Nginx/Apache 重新加载:nginx -t && systemctl reload nginxapachectl configtest && systemctl reload httpd

    • 在 SSL 实验室检查挂锁/A 点。

    • 编辑混合内容(图像/js/css URL 仍为 http://):

      • 设置301 HTTP→HTTPS(站点范围)。

      • 查找和替换在 code/DB 中(WordPress:使用 wp search-replace)。

      • 使用协议相对https://绝对

    第 5 步 — 域名即将到期(10-20 分钟)

    • 如果域名即将到期:登录注册商续订 1-3 年

    • 如果分离提供商,请续订隐私/DNS 托管

    • 检查名称服务器A/AAAA是否更改;传播 ~ 几分钟 → 24 小时。

    第 6 步 — 冒烟测试和日志 (10’)

    • 测试:主页、购物车/结账、登录、支付 webhook、交易电子邮件。

    • 记录修复时间、根本原因 → 更新 SOP。

    3) 预防性 SOP(防止复发)

    3.1周期和自动化化学

    • 自动续订域名:启用自动续订+2种备用付款方式;提示T-30/T-7/T-1

    • 自动续订 SSL

      • 让我们加密60-90天; cron:certbot 更新日期凌晨 2 点;

        时发送警报。

      • 商业 CA:安排提醒T-30 + 所有者/计费。

    • CAA 记录:指定有效 CA(例如 0 问题“letsencrypt.org”),避免未经授权

    3.2“不间断”基础设施损坏”

    • 重定向 301 需要:HTTP→HTTPS,非 www↔www 统一。

    • 清洁链:始终从 CA 安装中间;每次安装后检查续订。

    • HSTS

      • 在网站 100% SSL 稳定(不再混合内容)后开启。

      • max-age 最初较低(1-7 天),然后逐渐增加到6-12 个月;在以下情况下考虑预加载:准备就绪。

    • 时钟:为服务器同步NTP(错误的时钟也会导致SSL“过期”)。

    • 监控

      • 正常运行时间+ SSL过期(PagerDuty/UptimeRobot):警告<14日

      • 每 5-10 分钟 Ping 检查一次交易(结账/登录)。

    3.3 运营和职责

    • 资产簿:域名、DNS、CDN、托管、SSL、到期日期、联系人

    • 去中心化:分离所有者/计费/技术;管理员必须执行 2FA。

    • P1 手册:第 2 部分的缩短版本,以便 P1 夜间/WE 员工可以立即完成。

    4) 快速问题(常见问题解答)

    过期的 SSL 是否会导致 SEO 问题?
    也许。机器人仍然可以抓取,但用户离开会导致点击率、停留时间和转化率下降。

    我使用 Cloudflare,是否需要在源端安装 SSL?
    应该使用完全(严格):在以下位置启用 SSL。 Cloudflare 安装原始证书/Let’s Encrypt at origin。避免“灵活”,因为它很容易创建混合内容/重定向循环。

    遇到问题时是否应该关闭 HSTS?
    不。如果浏览器已记住 HSTS,关闭它不会立即起作用,正确的方法是更新/重新应用证书。证书

    通配符还是非通配符?
    如果有多个子域,请选择通配符(DNS-01)。如果只是www + root,则单个证书就足够了。

    5) 运营团队的清单“壁纸”

    P1 — 恢复立即

    1. 真实检查:HTTPS、链、浏览器错误、WHOIS。

    2. 重新签发/续订 SSL(Let’s Encrypt/CA/Cloudflare Origin)。

    3. SSL + 过期警告。
      7) 添加/调整 CAA;确认时钟/NTP。
      8) 开启安全 HSTS(小 max-age),当稳定。

      P3 — 本周
      9) 添加事务监控和 ping。
      10) 更新资产簿 + 提醒计划;季度 P1 演练。

      6) 快速部署建议(WordPress/云)

      WordPress + Nginx

      # 检查证书过期
      sudo certbot 证书
      
      # 紧急延期
      sudo certbot renew --force-renewal
      
      # 或根据服务器块发布新版本
      sudo certbot --nginx -d 域名.com -d www.域名.com
      
      # 检查并重新加载
      sudo nginx -t && sudo systemctl 重新加载 nginx
      

      Cloudflare(原始 TLS)

      1. SSL/TLS → 完整(严格)

      2. 原始证书 → 创建 → 将证书 + 密钥安装到网络服务器

      3. 页面规则/重定向规则:HTTP→HTTPS (301)

      7) 当您需要“消防队”时

      如果网站是生命之源(订单/预订),那么每小时的“不安全”= 收入损失 + 失去信任。您可以:

      • 启动网站维护和响应包,让 P1 24/7 随叫随到、明确的 SLA、自动到期/正常运行时间监控:Web 维护服务 – Tan Phat Digital

      • 请参阅每月维护流程(检查 SSL/域名、备份、CWV、安全性)以防止再次发生问题。

分享

评论

0.0 / 5(0 条评分)

请登录后发表评论。

暂无评论,成为第一个分享想法的人吧。