介绍理念的文章太多了,这次换换口味,介绍一个实战案例。看看互联网巨头的零信任落地架构。看看零信任的界面长什么样。

1、Airbnb原来的架构

Airbnb是全球最火的短租平台。平台对外提供很多特别酷的民宿,有别墅,有城堡,有树屋……用户还可以在airbnb.com网站上共享自己的房间做短租。

Airbnb.com网站部署在亚马逊AWS上。Airbnb公司内部的一些管理系统,为了减少延迟,部署在了公司本地的机房。

下面是Airbnb的网络架构图。

(1)图中间是用户,用户可以自由地使用不同的浏览器访问业务系统。员工在公司的话,通过802.1x认证才能连上公司网络。员工在家的话,是用VPN接入。

(2)图左边是用户平时会用到的SaaS服务,比如Slack(相当于国内的钉钉)、Google系列(邮箱、文档等)、Github等等;

(3)图右边是公司的亚马逊AWS云,云上有一大批业务系统,Airbnb自己的或采购第三方的都有;

(4)值得一提的是,Airbnb已经做了一套很完善的终端管理工具。他们使用开源的OSquery工具收集终端的信息,并且自己开发了一套终端信息分析预警系统StreamAlert。

所以,Airbnb本身已经有一些零信任技术的基础了。

2、Airbnb面临的挑战

Airbnb公司10年前在旧金山成立。如今的Airbnb在全球40多个城市建立了分公司。

随着公司的扩张,公司的IT架构也面临越来越大的挑战。

AIrbnb还是小公司的时候,安全很容易搞。

把业务系统放AWS云上,用设置IP白名单的方式做访问控制,只允许来自公司IP的访问。这样,安全方面基本上就不会出什么大问题。

但是公司扩张了,很多问题就跑出来了。一次技术分享上,Airbnb的安全工程师列出了下面这些问题。

(1)802.1x的局限

802.1x是一种网络准入协议。总部员工用起来没什么问题。但分公司一般都用不起来。

虽然说确实有一些技术可以实现分公司的802.1x认证,但是总的来说还是太麻烦。所以,Airbnb分公司的员工都是通过VPN远程接入的。

(2)VPN的局限

VPN太慢了。Airbnb在全球都有分公司,但大部分业务系统都跑在美国。结果就是访问这些系统的延迟非常的高。尤其是距离VPN网关很远的员工,或者在飞机上的员工。你离总部越远,问题就越严重。

最可笑的例子就是,用VPN的时候,要求输入动态码的场景。员工访问内部系统要进行多因子验证。多因子验证要用动态码。动态码是几秒一变的。有时候赶上VPN特别慢,员工每次输完动态码,提交过去的时候,动态码就过期了。用户就一直都过不了多因子认证。体验非常糟糕。

VPN本来就很慢了。有时候用户还会选错VPN网关,让事情更糟。

比如澳大利亚的用户想连VPN的时候,首先会想连到离他最近的新加坡的接入点。但是如果你看看地球仪的话,就会发现澳大利亚-新加坡-美国这条路线,比澳大利亚直接到美国的路线要长50%。

再比如在飞机上的情况,飞机上一般使用基于卫星的wifi,流量要去外太空绕一圈,延迟至少要600毫秒。从东京飞洛杉矶的话,流量一般会在卫星间跳转几次,最后从欧洲出口出来。用户应该选择欧洲的VPN网关,但是用户不知道啊,如果凭直觉选了美国的vpn网关,就慢死了,用户还不知道为啥。

当然这都不能怪用户。用户不懂这些。

用户只会对比互联网的速度和VPN的速度。当用户可以很快的打开Gmail的时候,他就会期望打开内部系统也是很快的。

3、Airbnb的目标

跟很多媒体文章的观点不同,现实中的公司,例如Airbnb,没有对VPN的安全性做出太多抱怨。Airbnb主要对VPN的性能和体验感到不满。

Airbnb的愿景是——如果用户的互联网很快,而且用户设备的安全等级足够,那么他就应该能够同样快速地接入内网。

当然如果把系统全部放在互联网上,体验是最好的,但安全方面肯定接受不了。

Airbnb的安全工程师希望找到一个用户体验和安全的最佳平衡点。体验要比VPN好,安全性要比直接暴露在互联网上高。

4、零信任似乎是个合适的解决方案

为了解决安全和体验的问题,Airbnb把目光投向了谷歌的零信任方案——BeyondCorp。

最早,谷歌公司内部也是用VPN,体验问题同样严重。谷歌还经历过一次严重的攻击,攻击者顺着VPN就进到内网了,谷歌吃过大亏。所以攻击事件之后,谷歌吸取教训,把VPN替换成了安全又快速的BeyondCorp。

BeyondCorp跟VPN的区别主要在于——BeyondCorp的网关是一个分布式的云。

云的好处有很多,例如云能够提供负载、加速、弹性扩容、自动容灾等等特性。这就解决了VPN的性能瓶颈。

BeyondCorp的性能更好,如果安全性上也能超越VPN的话,那么它就是更佳的替代方案。

下面就通过BeyondCorp的架构图看看它的安全性。

5、BeyondCorp的架构

BeyondCorp目前已经在谷歌云上有商用版本了(可惜国内用不了),下面就是这个商用版的架构图。

BeyondCorp分为Global Frontend负载、访问规则引擎、策略执行节点等三个部分。

(1)BeyondCorp客户端:收集用户的身份、行为、设备信息。

身份没什么可说的。

举个“行为”的例子。例如,你每周二都从家里登录,但是突然有一个周二你在另一个地方登录了,不管其他因素是否可信,这次的行为肯定是偏离了用户行为规律。很有可能是发生了账号窃取等情况。这种情况下,系统会记录一条异常行为记录,或者发出告警。

设备信息是指设备上的配置合不合理。比如,磁盘是否做了加密、是否开启了锁屏密码、操作系统版本是否最新等等。

BeyondCorp一共用到了120多个环境因素作为是否授权的判断条件。起码从数量上看,可以说是非常完善了。

(2)Global Frontend:这是谷歌云提供的全球部署的负载,可以提供对业务系统的加速。

谷歌每天都在扫描全球所有网站,所以谷歌的威胁情报还是不错的。BeyondCorp会屏蔽掉来自恶意IP的流量。

(3)规则引擎:用于制定访问规则。

例如,设备必须安装最新的操作系统版本,并且来自某个特定IP,才能可以访问安全级别最高的系统。OS版本比最新低2个版本以内的设备,可以访问安全级别为中级的系统。

所以规则还是比较灵活的。安全级别比较低的用户也不是说就完全不能进入了,而是他们只能进入级别要求比较低的系统。

(4)执行节点:负责持续阻拦不符合规则的访问请求。BeyondCorp会检测每个访问请求的位置、时间、线程时间等等信息,不只是登录的时候检测。

6、BeyondCorp实际用起来是什么效果

员工要使用BeyondCorp,必须先安装一个Chrome插件。好像Chrome企业版是可以后台自动推送插件的。而且国外Chrome的使用率也比较高,所以对Airbnb来说,还不算麻烦。

(1)限制用户和IP

管理员可以在后台配置员工的权限,和业务系统的安全级别。

例如,A系统允许外包公司的员工Bob访问,但访问者的IP限制为只有Bob公司办公室的IP才能访问。

这时候,Bob在办公室的时候,可以访问系统A。当Bob离开办公室,连上楼下咖啡馆的WIFI的时候,打开系统A,就会弹出报错。

(2)限制Mac OS版本

管理员还可以在后台对设备进行限制。

例如,有一天苹果突然公布了一个系统漏洞,非常严重。管理员希望所有用户都升级到打了安全补丁的最新版本。怎么办呢?

管理员可以在后台设置一下安全级别,限制只有Mac OS版本高于10.0.1的设备才能访问系统A。

这个时候,所有不符合安全级别的用户就都无法访问了。

(3)设备管理

一般公司的资产登记表是不靠谱的。人的天性就是懒。自己的设备一般就直接给其他人用了,不会去更新登记表。

零信任的一个额外的好处就是资产统计更准确了。从后台可以查出每个用户都使用了哪些设备,哪些是公司发的,哪些是自己带的。

还可以查看设备的详情,看到设备的安全等级等等信息

7、Airbnb的零信任架构

BeyondCorp的零信任网关部署在业务系统之前。员工先走代理,再转发到业务系统。零信任网关是安全策略执行者,也是个负载。

下面是Airbnb部署零信任产品后的架构图。

从架构图上可以看到零信任对Airbnb的架构影响很小,只有VPN和802.1x被替代掉了,其他基本不变。

用户的使用流程是:

(1)用户装上终端检测插件。

(2)用户连上零信任网关,进行一系列身份检查。

(3)然后网关就可以直接把合法流量转发到业务系统了。

实际部署的时候Airbnb发现了一个问题,就是BeyondCorp不能把流量导到AWS(可能是有竞争关系吧),所以用了一个Nginx把流量导到公司内网。然后,云和内网用AWS的连接工具做了打通。

(4)osquery整合到零信任体系里面了。osquery收集的信息跟零信任插件的信息会汇总到一起,进入日志分析系统、公司的资产统计表。Airbnb的分析系统还会反过来反馈分析结果给到零信任的规则引擎。

8、零信任带来的好处

(1)无边界

原来用户在公司总部用802.1x,在外地用vpn。现在无论在哪,直接打开chrome就能访问了,使用变得特别简单。

(2)加速

零信任网关做了全球加速。尤其是对澳大利亚、日本的员工和常常出差的员工来说,体验有极大的提升。

(3)安全

零信任加强了终端的安全检测,这是原来VPN做不到的。零信任还替代了Airbnb原来自己开发的终端检测工具。一个顶俩。

9、总结

这个案例里,谷歌的零信任在各方面都能吊打VPN。我感觉国内产品应该还都达不到谷歌的水平。

国内厂商似乎都过于关注安全方面了,体验和加速方面还不够吊打VPN的程度。从用户角度看,虽然安全必不可少,但是体验肯定是一个更痛的点。

感谢大家的阅读。欢迎关注我,了解更多零信任知识。

声明:本文来自白话零信任,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。