微軟全球大當機,是時候導入Linux 桌面及桌面虛擬化的時候了

七月下旬全球關鍵營運系統包含 機場/醫院/鐵路運輸/金融機關/遊樂園/商場結帳櫃台,超過850萬台電腦停擺,出現熟悉的 “藍色螢幕死亡畫面” ,真是另人嘆為觀止。我心想這麼關鍵的系統怎麼會在 Windows 作業系統上執行?Windows 是駭客攻擊/勒索軟體及病毒的最愛,結果用來保護端點安全的雲端服務供應商Crowdstrike出包,就好像保護大樓的保全公司,不小心自己放了一把火,燒掉大樓。Windows 這棟大樓,門戶大開,在美國國防部眼裡認定是有高度資安風險,結果沒人在意,出事了,才知道原來有那麼多的公司機關用在關鍵營運系統。要知道 Windows 系統是所有的功能綁在一起,牽一髮而動全身,一個環節出問題,就可能全部掛掉,反觀Linux 系統是模組化的設計,單一環節出錯,頂多功能異常,不會全部掛掉,除非底層的硬體出了問題。

"25 % 財富 500大公司(不包含微軟),估計就損失54億美金,還有很多賠償訴訟進行中,如達美航空超過6000 航班取消"
check source
check source

以機場航班資訊系統顯示為例,因為系統故障,導致航班大亂,航空公司只能取消航班,旅客望著巨大的藍屏死機畫面,無窮無盡的等待,真是苦不堪言。其實這種windows畫面,我在捷運站也看過,明明是顯示捷運卡還有多少餘額的系統,結果出現Windows 桌面,估計是發生故障了。我想難到底層作業系統不能換成Linux? 比較有可能的原因是系統還是用老舊的 Client/Server 架構,Client 端要裝Windows應用程式才行。如果改成 Web Service 架構,Linux 桌面應該沒問題。但無論如何作業系統過度倚賴 Windows,的確是相當危險。有人將這次事件堪比Y2K 電腦系統時間出現錯亂,但我覺得影響層面有過之而無不及。

再來要了解的是就是像這種邊緣運算的系統出問題了,如何復原?或是說系統被勒索軟體綁架要如何回到正常狀態?如果說系統是跑在實體主機,輕則可用 clonezilla 還原 image (前提是你要有備份),重則資料被鎖住,可能直接換新機重灌才行。但系統救援需要時間,營運停擺可以撐多久,那是非常難熬的。之前也有客戶產線上的電腦似乎出現故障,急的採買現貨替換,都説明了實體主機運作的系統還是有一定的風險,要嘛你要準備好備機,當系統故障可以馬上替換,但我知道有這種危機意識的公司實在不多。

 Linux 桌面如 Ubuntu Desktop 幾乎不會中毒,也不會被勒索軟體綁架,更不會因為單一軟體造成系統停擺,除非底層硬體故障

[ Linux 桌面如 Ubuntu Desktop 幾乎不會中毒,也不會被勒索軟體綁架,更不會因為單一軟體造成系統停擺,除非底層硬體故障 ]

那麼有什麼比較好的方法可以來預防災難發生呢?桌面虛擬化也許是好主意。例如你用 Proxmox 運行桌面虛擬機,除了定時做備份外,也可以排程做快照,像這種藍屏死機畫面或是中了勒索病毒只要還原到正常的時間點就可以了。當要運行更多的桌面虛擬機器時,後端 Server 最好有 HA 機制來保護才行。

實做上我們可以建置 RDP Gateway,並在前端做雲端的零信任架構。當使用者要使用屬於他的桌面時,可以輸入網址,就會出現認証畫面,在e-mail 中拿到認証碼後輸入,就可以導向遠端桌面登入的畫面,登入後,就會看到可連結的桌面。當然如果你要連結的後端系統是執行在 web service,不需要進入遠端桌面,只要通過零信任架構,在任何地方不需要 VPN ,都可以直接輸入網址連進內部系統,非常方便。

導入Cloudflare 雲端零信任架構,在外網進入遠端桌面前,先進行email 身份認證

[ 導入Cloudflare 雲端零信任架構,在外網進入遠端桌面前,先進行email 身份認證 ]

登入遠端桌面管理界面,可在任何地點 ,不須經過 VPN,執行公司內網的桌面

[ 通過零信任架構後,登入遠端桌面管理界面,可在任何地點 ,不須經過 VPN,執行公司內網的桌面]

桌面虛擬化架構 VDI   (Virtual Desktop Infrastructure ) 對很多公司來說,是全新的架構,除了桌面是放在伺服器,可以節省終端的硬體需求,類似這種當機事件,還原系統是非常方便的。如果這些機場的資訊系統都改用 Linux 並採用桌面虛擬化之後,可以預見的是,你可能再也不用睡機場了吧!


三年疫情是不是白來了?原本分散式運作全部又改為集中式運作?