觀點 · 資訊分享
AKS 的 Azure Files NFS 共享儲存正式支援傳輸加密:StorageClass 加一行就能開,不用改應用程式
Azure Kubernetes Service 的 Azure Files NFS 磁碟區現在可以用 TLS 加密傳輸,Azure 在 7 月 17 日宣布轉為正式版。官方文件寫明要 AKS 1.33 以上,Ubuntu 20.04 與 Windows 節點目前不支援。
- 發布
- 2026-07-18
- 篇幅
- 約 4 分鐘 · 1,925 字
- 結構
- 7 節 + 3 題常見問題
- 標籤

一句話看懂:Azure 在 7 月 17 日宣布,AKS(Azure 的託管 Kubernetes)上的 Azure Files NFS 共享儲存,現在可以用 TLS 加密傳輸資料,這項功能轉為正式版,設定一行參數就能開,不用改應用程式。

先用白話講:傳輸加密是什麼?
想像你要把重要文件從辦公室寄到倉庫。「靜態加密」是文件放進倉庫之後鎖進保險箱;傳輸加密(Encryption in Transit,簡稱 EiT) 則是運送途中裝進上鎖的運鈔車,路上被人攔截也看不到內容。
在 Kubernetes 裡,很多個 Pod(可以想成一個個小程式)會透過 NFS(一種網路共享資料夾的協定)一起讀寫同一份資料。這段「運送」的過程,如果沒有額外加密,資料就可能在途中被人讀到。這次的更新,就是替這段路加上運鈔車。
發生什麼事
根據 Azure Updates 公告(2026-07-17):
- AKS 現在正式支援 Azure Files NFS v4.1 磁碟區的傳輸加密,透過 Azure File CSI 驅動程式使用
- 資料在 AKS 工作負載與 Azure Files NFS 共享之間傳輸時,會用 TLS 加密,協助滿足安全與合規要求
- 技術上整合了 AZNFS 掛載輔助工具與 Stunnel,透過 StorageClass 設定就能開啟,不需要改應用程式
- 在所有支援 Azure Files Premium(SSD)的 Azure 區域都能用
它是怎麼加密的?
Microsoft Learn 的文件說明:加密靠 Stunnel(開源的 TLS 包裝工具),在 NFS 用戶端與 Azure Files 之間加密 TCP 資料流,使用 AES-GCM,且不需要 Kerberos,也不用額外接 Active Directory 之類的驗證系統。
簡單說,每個儲存帳戶在節點上會有一個 Stunnel 程序,監聽本機的連接埠,再把 NFS 流量用 TLS 轉送到 Azure Files。AZNFS 套件還有一個背景工作,負責確認 Stunnel 在跑、掛掉時自動重啟,卸載後清理多餘的程序。
給開發者的技術細節
在 StorageClass 加上 encryptInTransit: "true"(以下是依官方文件改寫的範例,名稱自訂):
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: azurefile-nfs-eit
provisioner: file.csi.azure.com
allowVolumeExpansion: true
parameters:
protocol: nfs
skuName: PremiumV2_LRS
encryptInTransit: "true"
- 這個參數預設是
false,只適用 NFS 協定 - 版本限制:微軟文件寫明要 AKS 1.33 以上,Ubuntu 20.04 與 Windows 節點目前不支援
- 已存在的磁碟區:在 PersistentVolume 的
volumeAttributes補上encryptInTransit: "true"即可 - 官方文件還提到,NFS 的 Premium 儲存帳戶最小共享大小是 100 GiB,建 PVC 時別設太小
我的看法
對小團隊來說,Kubernetes 上的共享儲存最常見的用途是放使用者上傳的檔案、報表、備份。這些資料常含個資,客戶的資安問卷或合規稽核也常問一句「傳輸中有沒有加密」。這項功能的好處是,答案可以從「沒有」變成「有」,而且改動只是一個參數。
不過我會提醒兩件事:加密通常會帶來一些效能成本,官方文件沒有給具體數字,上線前請用自己的流量實測一次;另外它有版本與作業系統的限制,如果叢集還在 1.33 以前或用 Ubuntu 20.04 的節點,要先規劃升級。
名詞小辭典
- AKS(Azure Kubernetes Service):微軟代管的 Kubernetes 服務,你不用自己架控制節點。
- NFS:讓多台機器掛載同一份網路資料夾的協定,常用來在多個 Pod 之間共享檔案。
- StorageClass:Kubernetes 裡「要哪種儲存、怎麼建」的樣板,建立磁碟區時會照它的設定做。
- Stunnel:一個開源的 TLS 包裝工具,把原本不加密的連線包進加密通道。