介紹理念的文章太多了,這次換換口味,,介紹一個(gè)實(shí)戰(zhàn)案例,。看看互聯(lián)網(wǎng)巨頭的零信任落地架構(gòu),。看看零信任的界面長(zhǎng)什么樣。
1,、Airbnb原來(lái)的架構(gòu)
Airbnb是全球最火的短租平臺(tái)。平臺(tái)對(duì)外提供很多特別酷的民宿,,有別墅,,有城堡,有樹(shù)屋……用戶還可以在airbnb.com網(wǎng)站上共享自己的房間做短租,。
Airbnb.com網(wǎng)站部署在亞馬遜AWS上,。Airbnb公司內(nèi)部的一些管理系統(tǒng),為了減少延遲,,部署在了公司本地的機(jī)房,。
下面是Airbnb的網(wǎng)絡(luò)架構(gòu)圖。
?。?)圖中間是用戶,,用戶可以自由地使用不同的瀏覽器訪問(wèn)業(yè)務(wù)系統(tǒng)。員工在公司的話,,通過(guò)802.1x認(rèn)證才能連上公司網(wǎng)絡(luò),。員工在家的話,是用VPN接入,。
?。?)圖左邊是用戶平時(shí)會(huì)用到的SaaS服務(wù),比如Slack(相當(dāng)于國(guó)內(nèi)的釘釘),、Google系列(郵箱,、文檔等)、Github等等,;
?。?)圖右邊是公司的亞馬遜AWS云,云上有一大批業(yè)務(wù)系統(tǒng),,Airbnb自己的或采購(gòu)第三方的都有,;
(4)值得一提的是,,Airbnb已經(jīng)做了一套很完善的終端管理工具,。他們使用開(kāi)源的OSquery工具收集終端的信息,并且自己開(kāi)發(fā)了一套終端信息分析預(yù)警系統(tǒng)StreamAlert,。
所以,,Airbnb本身已經(jīng)有一些零信任技術(shù)的基礎(chǔ)了,。
2、Airbnb面臨的挑戰(zhàn)
Airbnb公司10年前在舊金山成立,。如今的Airbnb在全球40多個(gè)城市建立了分公司,。
隨著公司的擴(kuò)張,公司的IT架構(gòu)也面臨越來(lái)越大的挑戰(zhàn),。
AIrbnb還是小公司的時(shí)候,,安全很容易搞。
把業(yè)務(wù)系統(tǒng)放AWS云上,,用設(shè)置IP白名單的方式做訪問(wèn)控制,,只允許來(lái)自公司IP的訪問(wèn)。這樣,,安全方面基本上就不會(huì)出什么大問(wèn)題,。
但是公司擴(kuò)張了,很多問(wèn)題就跑出來(lái)了,。一次技術(shù)分享上,Airbnb的安全工程師列出了下面這些問(wèn)題,。
(1)802.1x的局限
802.1x是一種網(wǎng)絡(luò)準(zhǔn)入?yún)f(xié)議,。總部員工用起來(lái)沒(méi)什么問(wèn)題,。但分公司一般都用不起來(lái),。
雖然說(shuō)確實(shí)有一些技術(shù)可以實(shí)現(xiàn)分公司的802.1x認(rèn)證,但是總的來(lái)說(shuō)還是太麻煩,。所以,,Airbnb分公司的員工都是通過(guò)VPN遠(yuǎn)程接入的。
(2)VPN的局限
VPN太慢了,。Airbnb在全球都有分公司,,但大部分業(yè)務(wù)系統(tǒng)都跑在美國(guó)。結(jié)果就是訪問(wèn)這些系統(tǒng)的延遲非常的高,。尤其是距離VPN網(wǎng)關(guān)很遠(yuǎn)的員工,,或者在飛機(jī)上的員工。你離總部越遠(yuǎn),,問(wèn)題就越嚴(yán)重,。
最可笑的例子就是,用VPN的時(shí)候,,要求輸入動(dòng)態(tài)碼的場(chǎng)景,。員工訪問(wèn)內(nèi)部系統(tǒng)要進(jìn)行多因子驗(yàn)證。多因子驗(yàn)證要用動(dòng)態(tài)碼,。動(dòng)態(tài)碼是幾秒一變的,。有時(shí)候趕上VPN特別慢,,員工每次輸完動(dòng)態(tài)碼,提交過(guò)去的時(shí)候,,動(dòng)態(tài)碼就過(guò)期了,。用戶就一直都過(guò)不了多因子認(rèn)證。體驗(yàn)非常糟糕,。
VPN本來(lái)就很慢了,。有時(shí)候用戶還會(huì)選錯(cuò)VPN網(wǎng)關(guān),讓事情更糟,。
比如澳大利亞的用戶想連VPN的時(shí)候,,首先會(huì)想連到離他最近的新加坡的接入點(diǎn)。但是如果你看看地球儀的話,,就會(huì)發(fā)現(xiàn)澳大利亞-新加坡-美國(guó)這條路線,,比澳大利亞直接到美國(guó)的路線要長(zhǎng)50%。
再比如在飛機(jī)上的情況,,飛機(jī)上一般使用基于衛(wèi)星的wifi,,流量要去外太空繞一圈,延遲至少要600毫秒,。從東京飛洛杉磯的話,,流量一般會(huì)在衛(wèi)星間跳轉(zhuǎn)幾次,最后從歐洲出口出來(lái),。用戶應(yīng)該選擇歐洲的VPN網(wǎng)關(guān),,但是用戶不知道啊,如果憑直覺(jué)選了美國(guó)的vpn網(wǎng)關(guān),,就慢死了,,用戶還不知道為啥。
當(dāng)然這都不能怪用戶,。用戶不懂這些,。
用戶只會(huì)對(duì)比互聯(lián)網(wǎng)的速度和VPN的速度。當(dāng)用戶可以很快的打開(kāi)Gmail的時(shí)候,,他就會(huì)期望打開(kāi)內(nèi)部系統(tǒng)也是很快的,。
3、Airbnb的目標(biāo)
跟很多媒體文章的觀點(diǎn)不同,,現(xiàn)實(shí)中的公司,,例如Airbnb,沒(méi)有對(duì)VPN的安全性做出太多抱怨,。Airbnb主要對(duì)VPN的性能和體驗(yàn)感到不滿,。
Airbnb的愿景是——如果用戶的互聯(lián)網(wǎng)很快,而且用戶設(shè)備的安全等級(jí)足夠,那么他就應(yīng)該能夠同樣快速地接入內(nèi)網(wǎng),。
當(dāng)然如果把系統(tǒng)全部放在互聯(lián)網(wǎng)上,,體驗(yàn)是最好的,但安全方面肯定接受不了,。
Airbnb的安全工程師希望找到一個(gè)用戶體驗(yàn)和安全的最佳平衡點(diǎn),。體驗(yàn)要比VPN好,安全性要比直接暴露在互聯(lián)網(wǎng)上高,。
4,、零信任似乎是個(gè)合適的解決方案
為了解決安全和體驗(yàn)的問(wèn)題,Airbnb把目光投向了谷歌的零信任方案——BeyondCorp,。
最早,,谷歌公司內(nèi)部也是用VPN,體驗(yàn)問(wèn)題同樣嚴(yán)重,。谷歌還經(jīng)歷過(guò)一次嚴(yán)重的攻擊,,攻擊者順著VPN就進(jìn)到內(nèi)網(wǎng)了,谷歌吃過(guò)大虧,。所以攻擊事件之后,,谷歌吸取教訓(xùn),把VPN替換成了安全又快速的BeyondCorp,。
BeyondCorp跟VPN的區(qū)別主要在于——BeyondCorp的網(wǎng)關(guān)是一個(gè)分布式的云,。
云的好處有很多,例如云能夠提供負(fù)載,、加速,、彈性擴(kuò)容,、自動(dòng)容災(zāi)等等特性,。這就解決了VPN的性能瓶頸。
BeyondCorp的性能更好,,如果安全性上也能超越VPN的話,,那么它就是更佳的替代方案。
下面就通過(guò)BeyondCorp的架構(gòu)圖看看它的安全性,。
5,、BeyondCorp的架構(gòu)
BeyondCorp目前已經(jīng)在谷歌云上有商用版本了(可惜國(guó)內(nèi)用不了),下面就是這個(gè)商用版的架構(gòu)圖,。
BeyondCorp分為Global Frontend負(fù)載,、訪問(wèn)規(guī)則引擎、策略執(zhí)行節(jié)點(diǎn)等三個(gè)部分,。
(1)BeyondCorp客戶端:收集用戶的身份,、行為、設(shè)備信息。
身份沒(méi)什么可說(shuō)的,。
舉個(gè)“行為”的例子,。例如,你每周二都從家里登錄,,但是突然有一個(gè)周二你在另一個(gè)地方登錄了,,不管其他因素是否可信,這次的行為肯定是偏離了用戶行為規(guī)律,。很有可能是發(fā)生了賬號(hào)竊取等情況,。這種情況下,系統(tǒng)會(huì)記錄一條異常行為記錄,,或者發(fā)出告警,。
設(shè)備信息是指設(shè)備上的配置合不合理。比如,,磁盤(pán)是否做了加密,、是否開(kāi)啟了鎖屏密碼、操作系統(tǒng)版本是否最新等等,。
BeyondCorp一共用到了120多個(gè)環(huán)境因素作為是否授權(quán)的判斷條件,。起碼從數(shù)量上看,可以說(shuō)是非常完善了,。
(2)Global Frontend:這是谷歌云提供的全球部署的負(fù)載,,可以提供對(duì)業(yè)務(wù)系統(tǒng)的加速。
谷歌每天都在掃描全球所有網(wǎng)站,,所以谷歌的威脅情報(bào)還是不錯(cuò)的,。BeyondCorp會(huì)屏蔽掉來(lái)自惡意IP的流量。
(3)規(guī)則引擎:用于制定訪問(wèn)規(guī)則,。
例如,,設(shè)備必須安裝最新的操作系統(tǒng)版本,并且來(lái)自某個(gè)特定IP,,才能可以訪問(wèn)安全級(jí)別最高的系統(tǒng),。OS版本比最新低2個(gè)版本以?xún)?nèi)的設(shè)備,可以訪問(wèn)安全級(jí)別為中級(jí)的系統(tǒng),。
所以規(guī)則還是比較靈活的,。安全級(jí)別比較低的用戶也不是說(shuō)就完全不能進(jìn)入了,而是他們只能進(jìn)入級(jí)別要求比較低的系統(tǒng),。
(4)執(zhí)行節(jié)點(diǎn):負(fù)責(zé)持續(xù)阻攔不符合規(guī)則的訪問(wèn)請(qǐng)求,。BeyondCorp會(huì)檢測(cè)每個(gè)訪問(wèn)請(qǐng)求的位置、時(shí)間,、線程時(shí)間等等信息,,不只是登錄的時(shí)候檢測(cè)。
6、BeyondCorp實(shí)際用起來(lái)是什么效果
員工要使用BeyondCorp,,必須先安裝一個(gè)Chrome插件,。好像Chrome企業(yè)版是可以后臺(tái)自動(dòng)推送插件的。而且國(guó)外Chrome的使用率也比較高,,所以對(duì)Airbnb來(lái)說(shuō),,還不算麻煩。
(1)限制用戶和IP
管理員可以在后臺(tái)配置員工的權(quán)限,,和業(yè)務(wù)系統(tǒng)的安全級(jí)別,。
例如,A系統(tǒng)允許外包公司的員工Bob訪問(wèn),,但訪問(wèn)者的IP限制為只有Bob公司辦公室的IP才能訪問(wèn),。
這時(shí)候,Bob在辦公室的時(shí)候,,可以訪問(wèn)系統(tǒng)A,。當(dāng)Bob離開(kāi)辦公室,連上樓下咖啡館的WIFI的時(shí)候,,打開(kāi)系統(tǒng)A,,就會(huì)彈出報(bào)錯(cuò)。
(2)限制Mac OS版本
管理員還可以在后臺(tái)對(duì)設(shè)備進(jìn)行限制,。
例如,,有一天蘋(píng)果突然公布了一個(gè)系統(tǒng)漏洞,非常嚴(yán)重,。管理員希望所有用戶都升級(jí)到打了安全補(bǔ)丁的最新版本,。怎么辦呢?
管理員可以在后臺(tái)設(shè)置一下安全級(jí)別,,限制只有Mac OS版本高于10.0.1的設(shè)備才能訪問(wèn)系統(tǒng)A,。
這個(gè)時(shí)候,所有不符合安全級(jí)別的用戶就都無(wú)法訪問(wèn)了,。
?。?)設(shè)備管理
一般公司的資產(chǎn)登記表是不靠譜的,。人的天性就是懶,。自己的設(shè)備一般就直接給其他人用了,不會(huì)去更新登記表,。
零信任的一個(gè)額外的好處就是資產(chǎn)統(tǒng)計(jì)更準(zhǔn)確了,。從后臺(tái)可以查出每個(gè)用戶都使用了哪些設(shè)備,哪些是公司發(fā)的,,哪些是自己帶的,。
還可以查看設(shè)備的詳情,看到設(shè)備的安全等級(jí)等等信息
7、Airbnb的零信任架構(gòu)
BeyondCorp的零信任網(wǎng)關(guān)部署在業(yè)務(wù)系統(tǒng)之前,。員工先走代理,,再轉(zhuǎn)發(fā)到業(yè)務(wù)系統(tǒng)。零信任網(wǎng)關(guān)是安全策略執(zhí)行者,,也是個(gè)負(fù)載,。
下面是Airbnb部署零信任產(chǎn)品后的架構(gòu)圖。
從架構(gòu)圖上可以看到零信任對(duì)Airbnb的架構(gòu)影響很小,,只有VPN和802.1x被替代掉了,,其他基本不變。
用戶的使用流程是:
?。?)用戶裝上終端檢測(cè)插件,。
(2)用戶連上零信任網(wǎng)關(guān),,進(jìn)行一系列身份檢查,。
(3)然后網(wǎng)關(guān)就可以直接把合法流量轉(zhuǎn)發(fā)到業(yè)務(wù)系統(tǒng)了,。
實(shí)際部署的時(shí)候Airbnb發(fā)現(xiàn)了一個(gè)問(wèn)題,,就是BeyondCorp不能把流量導(dǎo)到AWS(可能是有競(jìng)爭(zhēng)關(guān)系吧),所以用了一個(gè)Nginx把流量導(dǎo)到公司內(nèi)網(wǎng),。然后,,云和內(nèi)網(wǎng)用AWS的連接工具做了打通。
?。?)osquery整合到零信任體系里面了,。osquery收集的信息跟零信任插件的信息會(huì)匯總到一起,進(jìn)入日志分析系統(tǒng),、公司的資產(chǎn)統(tǒng)計(jì)表,。Airbnb的分析系統(tǒng)還會(huì)反過(guò)來(lái)反饋分析結(jié)果給到零信任的規(guī)則引擎。
8,、零信任帶來(lái)的好處
(1)無(wú)邊界
原來(lái)用戶在公司總部用802.1x,,在外地用vpn。現(xiàn)在無(wú)論在哪,,直接打開(kāi)chrome就能訪問(wèn)了,,使用變得特別簡(jiǎn)單。
?。?)加速
零信任網(wǎng)關(guān)做了全球加速,。尤其是對(duì)澳大利亞、日本的員工和常常出差的員工來(lái)說(shuō),,體驗(yàn)有極大的提升,。
(3)安全
零信任加強(qiáng)了終端的安全檢測(cè),,這是原來(lái)VPN做不到的。零信任還替代了Airbnb原來(lái)自己開(kāi)發(fā)的終端檢測(cè)工具,。一個(gè)頂倆,。
9、總結(jié)
這個(gè)案例里,,谷歌的零信任在各方面都能吊打VPN,。我感覺(jué)國(guó)內(nèi)產(chǎn)品應(yīng)該還都達(dá)不到谷歌的水平。
國(guó)內(nèi)廠商似乎都過(guò)于關(guān)注安全方面了,,體驗(yàn)和加速方面還不夠吊打VPN的程度,。從用戶角度看,雖然安全必不可少,,但是體驗(yàn)肯定是一個(gè)更痛的點(diǎn),。