網路隔離與安全性

與網路命名空間隔離

每個容器端點會放在自己的__網路命名空間__中。 管理主機 vNIC 和主機網路堆疊位於預設的網路命名空間。 若要在同一個主機上的容器之間強制進行網路隔離, 系統會針對每個 Windows Server 容器和容器建立一個網路命名空間, 在已安裝容器網路介面卡的 Hyper-v 隔離下執行。 Windows Server 容器使用主機 vNIC 連結到虛擬交換器。 Hyper-v 隔離使用合成 VM NIC (未公開至公用程式 VM) 附加到虛擬交換器。

文字

Get-NetCompartment

網路安全性

根據所使用的容器和網路驅動程式,Windows 防火牆和 VFP 的組合會強制執行連接埠 ACL。

Windows Server 容器

這些項目使用 Windows 主機的防火牆 (由網路命名空間啟用) 以及 VFP

  • 預設輸出:全部允許

  • 預設輸入:允許全部 (TCP、UDP、ICMP、IGMP) 未經要求的的網路流量

    • 拒絕所有其他不是來自這些通訊協定的網路流量

    注意

    在 Windows Server、版本1709和 Windows 10 秋季版創意者更新之前, 預設的入站規則是 [全部拒絕]。 執行這些舊版發行的使用者可以使用docker run -p (埠轉寄) 建立入站允許規則。

Hyper-V 隔離

在 Hyper-v 隔離中執行的容器有自己的隔離內核, 因此使用下列設定執行自己的 Windows 防火牆實例:

  • 預設在 Windows 防火牆 (在公用程式 VM 中執行) 和 VFP 中允許所有

文字

Kubernetes 箱

Kubernetes pod中, 會先建立一個端點所附加的基礎結構容器。 屬於同一個 pod 的容器, 包括基礎結構和 worker 容器, 共用通用的網路命名空間 (相同的 IP 與埠空間)。

文字

自訂預設連接埠 ACL

如果您想要修改預設的埠 Acl, 請先閱讀我們的主機網路服務檔 (即將新增連結)。 您需要更新下列元件內的原則:

注意

針對透明和 NAT 模式中的 Hyper-v 隔離, 您目前無法 reprogram 預設的埠 Acl。 這在表格中會表示為「X」。

網路驅動程式 WindowsServer 容器 Hyper-V 隔離
透明 Windows 防火牆 X
NAT Windows 防火牆 X
L2Bridge 兩者 VFP
L2Tunnel 兩者 VFP
重疊 兩者 VFP