1 of 60

數位發展部

如何做到網站韌性與零信任

數位發展部資訊處 周詳

1

2 of 60

講者介紹

周詳 Sean Chou

數位發展部資訊處 解決方案架構師

負責架構規劃與系統維運,包含Cloud Native、Kubernetes、DevOps、Zero Trust、CDN、網頁前端與後端開發、滲透測試等

medium.com/chouhsiang

2

3 of 60

數位發展部簡介

數位發展部成立於2022/08/27,主要負責推動我國數位政策的創新與變革,整合電信、資訊、資安、網路與傳播五大領域,整體規劃數位發展政策,統籌基礎建設、環境整備及資源運用業務,以達確保國家資通安全、促進數位經濟發展及提升國家數位轉型,現任部長為唐鳳。

3

4 of 60

組織架構

4

5 of 60

推動項目

5

Cloud Native

系統逐步上雲

DevOps

自動化流程

Kubernetes

容器化

網站韌性

CDN、WAF、

DDoS防護、IPFS

Zero Trust

身份鑑別、設備鑑別、信任推斷

6 of 60

Zero Trust

6

7 of 60

什麼是零信任 Zero Trust

零信任安全模型強調在網路內外均不信任任何人或裝置,要求持續驗證和授權。以最小權限原則運作,限制每個用戶或設備的訪問範圍,有效降低內外部威脅。該模型改變傳統防禦觀念,強調以微分權限和多層驗證為基礎,提升資料和網路安全。

傳統強化邊界的方法面臨挑戰:BYOD、雲端服務、遠距上班、內網架構

7

8 of 60

世界重要國家政府推動規劃

零信任已從概念探討階段進入實務部署規劃,世界重要國家之政府紛紛建立國家零信任網路安全戰略

8

具體規劃2024年前聯邦網路完成初步遷移

美國

發布國家級標準,建立「零信任聯盟」規劃轉型

中國

2020年建立歐盟網安戰略,提出標準框架,協助成員國轉型

歐盟

2021年10月網路安全戰略,定為國家網安框架

新加坡

9 of 60

我國零信任政策規劃

  • 依據「國家資通安全發展方案(110年至113年)」,推動機關逐年導入零信任網路之身分鑑別、設備鑑別及信任推斷機制
    • 完善政府網際服務網防禦深廣度�評估並導入零信任(Zero Trust),並逐步試行以驗證其可行性

9

10 of 60

A級機關推動零信任

10

https://www.netadmin.com.tw/netadmin/zh-tw/market/ACE44C9B9B364D90A86443E9AC06AFBC

11 of 60

原始架構 VS 零信任架構

11

使用者

服務

原始架構

零信任架構

身份驗證伺服器

使用者

零信任閘道

身份驗證伺服器

服務

12 of 60

數位部導入經驗

  • 數位發展部於2022年掛牌日,內部服務透過Cloudflare Access驗證
  • 使用AAD進行二階段驗證、群組分類
  • 使用Cloudflare Tunnel加強防護
  • 用於地端與雲端的服務
  • 數位部內部逾50個網域加入Access驗證

12

13 of 60

國家資通安全研究院 零信任架構說明文件

13

https://www.nics.nat.gov.tw/ZeroTrustMain.htm

14 of 60

政府零信任架構身分鑑別功能符合性驗證通過廠商清單

14

https://www.nics.nat.gov.tw/ZeroTrustMain.htm

15 of 60

零信任架構圖

15

16 of 60

數位發展部驗證機制

  • 所有系統皆與Azure AD驗證單一登入,包含Google Workspace
  • Azure AD介接行動、實體自然人憑證驗證,達到無密碼驗證
  • 以Cloudflare Access作為Zero Trust的Gateway,整合Azure AD驗證
  • 以Crowdstrike、Microsoft Intune作為設備鑑別
  • 同仁在哪都可以辦公

16

17 of 60

限制存取

  • Cloudflare Access
    • 根據不同網域、路徑可以設定不同規則
    • 依據身份、組織、IP進行檢查
    • 整合設備鑑別
  • Azure AD
    • 條件式存取
    • 二階段驗證
    • 未來可整合信任推斷

17

18 of 60

登入流程

18

https://i-eip.moda.gov.tw/

生物辨識、實體金鑰

19 of 60

零信任App清單

19

20 of 60

整合Zaraz

20

21 of 60

數位發展部零信任機制

21

21

設備鑑別機制

Cloudflare Zero Trust

Microsoft

Azure AD

Service

② Redirect

⑧ Proxy

⑨ Redirect

自然人憑證

SSO

③ Redirect

⑤ Auth

⑥ Redirect

⑦ Redirect

⑩ token

⑪ 取得使用者資料

Microsoft

Graph API

④ 取得身分證 hash

自然人憑證

22 of 60

身份驗證等級

22

身分保證等級(IAL)

鑑別保證等級(AAL)

聯邦保證等級(FAL)

說明

使用者用來證明自己身分之強度

鑑別過程之防護強度

身分提供方(IdP)傳遞給依賴方(RP)之使用者身分鑑別聲明(Assertion)之防護強度

等級1

自己宣稱的個人身分便具有效力

至少需要單因子身分鑑別

IdP傳遞給RP之使用者身分鑑別聲明須經過IdP簽章

等級2

需親自提供證據進行身分證明

  • 需要2種不同的鑑別因子
  • 鑑別過程之通訊,需使用加密技術

IdP傳遞給RP之使用者身分鑑別聲明須簽章加密

等級3

需在監督下親自提供證據生物特徵進行身分證明

  • 透過密鑰(key)進行鑑別
  • 需要硬體加密鑑別器

IdP傳遞給RP之使用者身分鑑別聲明須簽章加密,且使用者應向RP證明,擁有與使用者身分鑑別聲明對應之密鑰

23 of 60

網站韌性

23

24 of 60

官網高可用方法

  • CDN / WAF / DDoS保護
  • 靜態託管
  • Kubernetes
  • Cloud Native
  • IPFS

24

25 of 60

網路架構

25

Cloudflare

CDN / WAF / DDoS保護 / 靜態託管

26 of 60

Cloudflare流量順序

26

27 of 60

WAF規則

27

28 of 60

全站靜態化

  • SSR(Server Side Rendering)

  • SSG(Static Side Generation)

28

https://www.tothenew.com/blog/server-side-rendering-vs-static-site-generation-in-next-js/

29 of 60

數位發展部官網

29

30 of 60

數位發展部官網靜態部署

30

API Server

Cloudflare Pages

Cloudflare CDN

靜態前端

API

民眾

Proxy

31 of 60

官網開發過程

31

Stage 1

網站開發

Stage 2

靜態部署

Stage 3

導入零信任

Stage 4

容器化

2022/08

2022/11

2023/06

2023/07

Stage 5

Kubernetes

2023/08

Stage 6

DevOps

2022/03

32 of 60

IPFS

IPFS(InterPlanetary File System)是一個分散式的檔案系統,旨在改進傳統的網際網路檔案儲存和共享方式,為去中心化的Web3架構,使用者可以在任一節點上傳網頁,並在任何節點訪問該網頁。它使用分散節點存儲檔案,通過唯一的雜湊值確保內容的完整性和可驗證性。IPFS 提高了傳輸效率,增強了檔案的可靠性,並鼓勵內容共享和協作。

32

33 of 60

IPFS 上傳與下載

33

開發者

1.上傳檔案

取得CID值

瀏覽者

2.瀏覽CID值

的檔案

3.依CID值

下載網站

34 of 60

官網 Web3

  • Cloudflare Pages
    • https://moda.gov.tw
  • Cloudflare IPFS DNSLink
    • https://ipfs.moda.gov.tw
  • IPNS
    • ipns://moda.gov.tw

34

35 of 60

官網前端部署流程

35

Server

Generate

Static files

Github

Auto Deploy to Cloudflare Pages

Upload to

Pinata IPFS

&

Update

DNS record

Cloudflare Web3 IPFS Node

36 of 60

Kubernetes

36

37 of 60

雲端的優勢

  • 彈性、高可用性:建立具彈性及高可用性的系統
  • 易於維護:微服務架構模組化開發
  • 標準化結構:新系統開發及上線成本降低
  • 依不同特性提供的服務:VM、Serverless、DB、Log等

37

38 of 60

Kubernetes導入項目

  • 數位發展部全球資訊網 moda.gov.tw
  • 政府標準資料平臺 schema.gov.tw
  • 政府資料開放平臺 data.gov.tw
  • 內部行動自然人憑證驗證平台
  • 內部表單管理系統

38

39 of 60

數位發展部官網

39

40 of 60

政府標準資料平臺

40

41 of 60

政府資料開放平臺

41

42 of 60

內部行動自然人憑證驗證平台

42

43 of 60

導入流程

  • 由Windows轉為Linux
  • 將服務進行拆解,打包成docker-compose的容器
  • 將docker-compose改為Kubernetes部署
  • 完善DevOps流程

43

44 of 60

克服項目

  • Windows 轉為 Linux,相容性問題
  • 廠商未有容器化經驗
  • 帶入 DevOps 文化取代傳統做法
  • 資安稽核

44

45 of 60

合規

  • ISMS 資訊安全管理制度
  • VANS 資通安全弱點通報機制
  • SOC 資通安全威脅偵測管理
  • EDR 端點偵測及回應
  • GCB 政府組態基準
  • 主機防毒軟體

45

46 of 60

官網架構

46

CDN

Zero Trust

官網(前端託管)

官網API

官網後台

47 of 60

Kubernetes架構

47

靜態產生

Crontab

官網後台

Deployment

官網API

Deployment

Google Kubernetes Engine

Github

靜態託管

Storage

Database

Registry

48 of 60

全球資訊網服務架構

48

49 of 60

全球資訊網雲原生架構

49

50 of 60

50

51 of 60

公家單位可以怎麼導入Kubernetes

  • 先將專案進行解耦、拆解
  • 甲方與乙方對容器化要有基本了解
  • 將K8s納入RFP內容
  • 一同帶入DevOps概念
  • 長官支持

51

52 of 60

DevOps

52

53 of 60

DevOps

53

https://shalb.com/blog/what-is-devops-and-where-is-it-applied/

54 of 60

數位部DevOps

54

Operate

Build, Test, Deploy

Code

Azure Repos

Azure Pipelines

Google Kubernetes Engine

Google Compute Engine

Google Artifact Registry

Google Cloud

Storage

55 of 60

DevOps

55

56 of 60

56

57 of 60

Mend Bolt

57

58 of 60

NeuVector

58

59 of 60

未來展望

  • 持續將手上網站開源,官網、OpenData、AAD整合TWFidO
  • 完善DevOps、Kubernetes整合
  • 推廣Cloud Native、Zero Trust
  • 以數位部架構為範例進行推廣

59

60 of 60

感謝聆聽

60

Medium