Tailscale 的 TLS 证书过期,网站挂了 90 分钟!
3月7日,基于 WireGuard 的知名 VPN 厂商 Tailscale 的官方网站 tailscale.com 因 TLS 证书过期而中断服务约90分钟。
虽然影响有限,但这起事件还是在 Hacker News 等论坛引发了热烈的讨论和反思。
网友们纷纷表达了自己的看法。smackeyacky 感慨道:“我说过一次,现在我要再说一次:证书过期已然成为新时代服务中断的头号杀手。”
Tailscale 联合创始人 bradfitz 也第一时间在 Hacker News 回应,介绍了事发原因和应对过程。原来,他们在去年12月进行了一次大规模的网站迁移,涉及底层架构、域名解析等多个环节的重构。为了支持 IPv6,他们还特意搭建了额外的代理服务器。
但令人始料未及的是,这个看似无伤大雅的改动,竟然埋下了祸根。由于代理服务器终止了 TLS 连接,加上 DNS 配置的疏忽,监控系统没能及时发现证书已经过期的警告。bradfitz 坦言,这次事故暴露出团队在变更管理和风险评估方面还有很大的提升空间。
这波 “辩解”,你买账吗?让我们来看看网友们怎么说。
j45 就提出了质疑:如果 IPv6 如此重要,为什么当初要选择一家压根不支持的供应商呢?bradfitz 只能苦笑,表示公司内部在这个问题上尚未达成共识。
lmeyerov 则一针见血地指出,关键脚本和文档不应该放在营销页面上,那无异于 “身败名裂”。
更有意思的是,大家对 Tailscale 下一步的打算出谋划策。amluto 建议他们最好换成 TCP 代理,这样可以充分利用 Let's Encrypt 的 HTTP 验证方式。agwa 的想法则更大胆:要不要试试每天自动更新证书?延长过期时间虽然安全,但如此频繁的滚动更新,应该也不是什么难事儿吧?
光说不练假把式,Tailscale 到底准备如何破局?bradfitz 表示,除了之前提到的监控改进,他们还计划进一步简化网络拓扑,减少对特殊方案的依赖。同时,为了防患于未然,还要像 “古人” 那样设置每月提醒,专人盯防,避免证书过期时 “完犊子”。
但 bradfitz 也不忘自信满满地补充:Tailscale 的设计目标,本来就是打造一个弹性十足的网状架构。即便控制平面偶尔抽风,用户的连接状态也不会受到影响。这次事故恰恰印证了他们的优势所在。
Tailscale 本次的应对,可谓是基础设施领域的 “教科书”。他们没有避重就轻、诿过于人,而是勇于承担责任;他们没有急于修补、敷衍了事,而是深刻反思、触及本质。这种开诚布公、虚心接纳的态度,值得每一个技术团队学习。
回到本次事件,笔者认为,Tailscale 暴露出的问题绝非个案。在快速迭代的今天,任何平台都难免经历这样那样的折腾。但关键是要时刻保持警惕,尊重专业,关注细节。一念之差,可能就是业务中断、口碑受损的起点。
尤其值得警惕的是 “身败名裂” 式的设计。当一个看似不起眼的页面或服务,成为了整个系统的 “生死簿”,我们就必须格外留心。是否应该适当解耦?是否需要特别优化?唯有未雨绸缪,才能降低 “黑天鹅” 事件的影响。
对创业公司而言,技术固然重要,但更要注重全局观。什么是真正的刚需?什么又是可以简化的?架构师们需要时刻问自己这样的问题。盲从所谓 “最佳实践”,搞出一堆 “金玉其外败絮其中” 的玩意儿,那就本末倒置了。
总而言之,Tailscale 的 “证书门”,为我们敲响了警钟:安全可用是一切的基础。必须通过周密的设计、严谨的态度,才能获得用户的信赖。相信 Tailscale 能够从这次事件中汲取教训,以更成熟、专业的姿态,打造真正韧性十足的服务,在 VPN 领域一路高歌。
尽管 Tailscale 因 TLS 证书过期导致了90分钟的服务中断,但这恰恰凸显了它的一大优势——多数用户几乎没有受到影响。Tailscale 的分布式架构使得用户端的连接不依赖于中心节点始终在线。这种弹性设计是 Tailscale 区别于传统 VPN 的关键所在。短暂的中心服务中断并不能否定 Tailscale 的价值,反而凸显了其良好的容错性。
Tailscale 的 TLS 证书过期,网站挂了 90 分钟!的更多相关文章
- 在阿里云托管kubernetes上利用 cert-manager 自动签发 TLS 证书[无坑版]
前言 排错的过程是痛苦的也是有趣的. 运维乃至IT,排错能力是拉开人与人之间的重要差距. 本篇会记录我的排错之旅. 由来 现如今我司所有业务都运行在阿里云托管kubernetes环境上,因为前端需要对 ...
- 新开源HTML5单文件网页版ACME客户端,可在线申请Let's Encrypt、ZeroSSL免费HTTPS多域名通配符泛域名SSL/TLS证书(RSA/ECC/ECDSA)
目录 开源项目的起源 项目地址 使用方法 第一步:选择Let's Encrypt.ZeroSSL或其他证书颁发机构 第二步:证书配置,填写域名 第三步:完成域名所有权的验证 第四步:下载保存证书PEM ...
- 二进制搭建kubernetes多master集群【一、使用TLS证书搭建etcd集群】
上一篇我们介绍了kubernetes集群架构以及系统参数配置,参考:二进制搭建kubernetes多master集群[开篇.集群环境和功能介绍] 下面本文etcd集群才用三台centos7.5搭建完成 ...
- 附008.Kubernetes TLS证书介绍及创建
一 Kubernetes证书 1.1 TLS Kubernetes系统的各个组件需要使用TLS证书对其通信加密以及授权认证,建议在部署之前先生成相关的TLS证书. 1.2 CA证书创建方式 kuber ...
- 十大免费SSL证书:网站免费添加HTTPS加密
SSL证书,用于加密HTTP协议,也就是HTTPS.随着淘宝.百度等网站纷纷实现全站Https加密访问,搜索引擎对于Https更加友好,加上互联网上越来越多的人重视隐私安全,站长们给网站添加SSL证书 ...
- 从sslyze看TLS证书的点点滴滴
纵观眼下,https已经深入大街小巷,成为网络生活中不可或缺的一部分了.提到了https,我们又不得不想到TLS(SSL),而提到了TLS,我们又不得不提到一个让人捉摸不透的东西:TLS证书. 关于证 ...
- https证书过期问题
这个是以前配置证书的文章,同时更新证书的有效的一篇文章 最近网站的https证书过期了,造成无法对外提供服务,怀疑是当时配置的自动更新没有起作用. 然后去后台更新https证书,却遇到了问题,使用的具 ...
- 基于TLS证书手动部署kubernetes集群(上)
一.简介 Kubernetes是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,Kubernetes也叫K8S. K8S是Google内部一个叫Borg的容器集群管理系统衍生 ...
- 免费SSL证书(https网站)申请
如何拥有一个自己的免费的SSL证书,并且能够长期拥有.这篇文章让你找到可用的免费证书o(* ̄︶ ̄*)o 各厂商提供的免费SSL基本是Symantec(赛门铁克),申请一年,不支持通配符,有数量限制. ...
- SSL证书/TLS证书是什么
https://blog.csdn.net/donghaixiaolongwang/article/details/79193695 A. SSL协议与TLS是什么?它们的功能是什么? 答:SSL(S ...
随机推荐
- 简化Simulink的建模与模型重构
简化Simulink的建模与模型重构 模型重构 Simulink作为汽车和自动化领域中经典的模型工程必备工具,不管是专业的汽车控制器的开发还是自动化控制的专业应用编程,都会使用到Simulink进行图 ...
- Html飞机大战(十): 消灭敌机
好家伙,本篇是带着遗憾写完的. 很遗憾,我找了很久,找到了bug但并没有成功修复bug 再上一篇中我们看到 子弹射中了敌机,但是敌机并没有消失,所以这篇我们要来完善这个功能 按照惯例我们来捋一下思路: ...
- 【Azure Notification Hub】创建Notification Hub失败,提示 unrecognized arguments: --sku Free
问题描述 用Azure CLI命令创建 Notification Hub,报错不识别的参数 --Free SKU 问题解答 经测试发现,在创建Notification Hub前,需要创建 Notifi ...
- 【Azure 应用服务】更便捷的方式抓取Azure App Service for Windows的网络包
问题描述 在之前的一篇博文中,介绍了在App Service中抓取网络日志: 抓取Windows的网络包:[应用服务 App Service]App Service中抓取网络日志 抓取Linux的网络 ...
- 学习ASP.NET MVC 编程系列文章目录
学习ASP.NET MVC(一)--我的第一个ASP.NET MVC应用程序 学习ASP.NET MVC(二)--我的第一个ASP.NET MVC 控制器 学习ASP.NET MVC(三)--我的第一 ...
- base-table 加入动态slot 流程 vue2
columns { title: '字段标题', slot: 'yourSlotName', minWidth: 50, align: 'center' }, 组件内 props: { columns ...
- 启用reactRouter,让Navigator支持多页面
启用reactRouter,让Navigator支持多页面 当前系统就一个页面,感觉是时候让她晋级到多页面程序了. 网上此类教程,我只记录我需要的最小范围. 0.目标 整站由原来的一个页面,变成2个页 ...
- WPF之XAML语法
目录 树形结构 对象属性赋值语法 使用标签的Attribute 使用属性元素 扩展:标记扩展(Markup Extensions) 扩展:使用TypeConverter 类映射Atribute与Pro ...
- 关于黑客网络 for linux,这个游戏的启动解决方法
原帖位置https://tieba.baidu.com/p/6200215090
- 封装TornadoFx常用控件库
github:https://github.com/Stars-One/common-controls 为TornadoFx的封装的常用控件与工具,基于Jfoenix,借鉴Kfoenix 前言 这个开 ...