保護 Windows Server 中的 SMB 流量
作為深度防禦措施,您可以使用分割和隔離技術來保護 SMB 流量,並減少網路上裝置之間的威脅。
SMB 用於檔案共用、列印和處理序間通訊,例如具名管道和 RPC。 它也會作為網路資料網狀架構,用於儲存空間直接存取、儲存體複本、Hyper-V 即時移轉和叢集共用磁片區等技術。 使用下列各節來設定 SMB 流量分割和端點隔離,以協助防止輸出和橫向網路通訊。
封鎖輸入 SMB 存取
在您的公司硬體防火牆封鎖來自網際網路的 TCP 埠 445 輸入。 封鎖輸入 SMB 流量可防止從網際網路存取,以保護網路內的裝置。
如果您想要讓使用者在網路邊緣存取其輸入的檔案,您可以透過 QUIC 使用 SMB。 這預設會使用 UDP 埠 443,並提供 TLS 1.3 加密的安全性通道,例如 SMB 流量的 VPN。 解決方案需要Windows 11和 Windows Server 2022 Datacenter:在 Azure Stack HCI 上執行的 Azure Edition 檔案伺服器。 如需詳細資訊,請參閱 透過 QUIC 的 SMB。
封鎖輸出 SMB 存取
在您的公司防火牆封鎖 TCP 埠 445 輸出至網際網路。 封鎖輸出 SMB 流量可防止網路內的裝置使用 SMB 將資料傳送至網際網路。
除非您要求它作為公用雲端供應專案的一部分,否則您不太可能需要使用 TCP 埠 445 到網際網路的任何輸出 SMB。 主要案例包括Azure 檔案儲存體和Office 365。
如果您使用 Azure 檔案儲存體 SMB,請使用 VPN 進行輸出 VPN 流量。 藉由使用 VPN,您可以將輸出流量限制為必要的服務 IP 範圍。 如需 Azure 雲端和 Office 365 IP 位址範圍的詳細資訊,請參閱:
- Azure IP 範圍和服務標籤: 公用雲端、美國政府雲端、 德國雲端或 中國雲端。 JSON 檔案會每週更新,並同時包含完整檔案和每個個別服務標籤的版本設定。 AzureCloud標籤提供雲端 (公用、美國政府、德國或中國) 的 IP 範圍,並依該雲端內的區域分組。 檔案中的服務標籤會在新增 Azure 服務時增加。
- Office 365 URL 和 IP 位址範圍。
使用 Windows 11 和 Windows Server 2022 Datacenter:Azure Edition,您可以使用 SMB over QUIC 連線到 Azure 中的檔案伺服器。 這預設會使用 UDP 埠 443,並提供 TLS 1.3 加密的安全性通道,例如 SMB 流量的 VPN。 如需詳細資訊,請參閱 透過 QUIC 的 SMB。
清查 SMB 使用量和共用
藉由清查網路的 SMB 流量,您可以瞭解發生的流量,並判斷是否需要。 使用下列問題檢查清單來協助識別不必要的 SMB 流量。
針對伺服器端點:
- 哪些伺服器端點需要輸入 SMB 存取權才能執行其角色? 他們是否需要來自所有用戶端、特定網路或特定節點的輸入存取?
- 在其餘伺服器端點中,是否需要輸入 SMB 存取?
針對用戶端端點:
- 例如,哪些用戶端端點 (,Windows 10) 需要輸入 SMB 存取? 他們是否需要來自所有用戶端、特定網路或特定節點的輸入存取?
- 在其餘用戶端端點中,是否需要輸入 SMB 存取?
- 在其餘用戶端端點中,是否需要執行 SMB 伺服器服務?
針對所有端點,判斷您是否以最安全且最最少的方式允許輸出 SMB。
檢閱需要 SMB 輸入的伺服器內建角色和功能。 例如,檔案伺服器和網域控制站需要 SMB 輸入才能執行其角色。 如需內建角色和功能網路埠需求的詳細資訊,請參閱 Windows 的服務概觀和網路埠需求。
檢閱需要從網路內部存取的伺服器。 例如,網域控制站和檔案伺服器可能需要存取網路中的任何位置。 不過,應用程式伺服器存取可能僅限於相同子網上的一組其他應用程式伺服器。 您可以使用下列工具和功能來協助您清查 SMB 存取:
Get-FileShareInfo
使用AZSBTools模組集的 命令來檢查伺服器和用戶端上的共用。- 使用登錄機碼
Security Settings\Advanced Audit Policy Configuration\Audit Policies\Object Access\File Share
啟用SMB 輸入存取的稽核線索。 由於事件數目可能很大,請考慮啟用指定的時間量或使用 Azure 監視器。
檢查 SMB 記錄可讓您知道哪些節點會透過 SMB 與端點通訊。 您可以決定端點的共用是否正在使用中,並瞭解哪些共用存在。
設定Windows Defender防火牆
使用防火牆規則來新增額外的連線安全性。 設定規則以封鎖包含例外狀況的輸入和輸出通訊。 輸出防火牆原則,可防止在受控網路外部和內部使用 SMB 連線,同時允許存取最小伺服器集,而且沒有其他裝置是橫向防禦深度量值。
如需針對輸入和輸出連線設定之 SMB 防火牆規則的相關資訊,請參閱 支援文章防止 SMB 流量從橫向連線進入或離開網路。
支援文章包含下列專案的範本:
- 以任何類型的網路設定檔為基礎的輸入規則。
- 私人/網域 (信任) 網路的輸出規則。
- 來賓/公用 (不受信任) 網路的輸出規則。 此範本對於在封鎖輸出流量的防火牆後方的行動裝置和家用電信裝置上強制執行非常重要。 在膝上型電腦上強制執行這些規則可減少將使用者傳送到惡意伺服器的網路釣魚攻擊,以收集認證或執行攻擊碼。
- 包含網域控制站和檔案伺服器的覆寫 允許清單 的輸出規則,稱為 [如果安全時允許連線]。
若要使用 Null 封裝 IPSEC 驗證,您必須在參與規則之網路中的所有電腦上建立安全性連線規則。 否則,防火牆例外狀況將無法運作,您只會任意封鎖。
警告
在廣泛部署之前,您應該先測試安全性連線規則。 不正確的規則可能會防止使用者存取其資料。
若要建立連線安全性規則,請使用Windows Defender防火牆搭配進階安全性控制台或嵌入式管理單元:
- 在 [Windows Defender防火牆] 中,選取 [連線安全性規則],然後選擇 [新增規則]。
- 在 [規則類型] 中,選取 [ 隔離 ],然後選取 [ 下一步]。
- 在 [需求]中,選取 [要求輸入和輸出連線的驗證 ],然後選取 [ 下一步]。
- 在 [驗證方法]中,選取 [電腦] 和 [使用者 (Kerberos V5) 然後選取 [ 下一步]。
- 在 [設定檔] 中,核 (取 [ 網域]、[私人]、[公用 ]) 的所有設定檔,然後選取 [ 下一步]。
- 輸入規則的名稱,然後選取 [ 完成]。
請記住,必須在參與您輸入和輸出規則的所有用戶端和伺服器上建立連線安全性規則,否則將會封鎖連線 SMB 輸出。 這些規則可能已經從您環境中的其他安全性工作就位,而且像防火牆輸入/輸出規則一樣,可以透過群組原則進行部署。
根據 防止 SMB 流量從橫向連線到橫向連線並進入或離開網路 支援文章中的範本設定規則時,請設定下列專案來自訂 [如果安全動作時允許連線 ]:
- 在 [動作 ] 步驟中,選取 [ 允許連線是否安全 ],然後選取 [ 自訂]。
- 在 [自訂允許是否安全設定] 中,選取 [允許連線使用 Null 封裝]。
如果連線是安全選項,允許覆寫全域區塊規則,則允許連線。 您可以使用簡單但最不安全的允許連線搭配 *override 區塊規則 使用 Null 封裝 ,其依賴 Kerberos 和網域成員資格來進行驗證。 Windows Defender防火牆允許更安全的選項,例如 IPSEC。
如需設定防火牆的詳細資訊,請參閱使用進階安全性部署Windows Defender防火牆概觀。
如果未使用,請停用 SMB 伺服器
網路上的 Windows 用戶端和部分 Windows Server 可能不需要 SMB Server 服務才能執行。 如果不需要 SMB 伺服器服務,您可以停用服務。 停用 SMB 伺服器服務之前,請確定電腦上沒有任何應用程式和進程需要服務。
當您準備好實作時,您可以使用群組原則喜好設定來停用大量機器上的服務。 如需設定群組原則喜好設定的詳細資訊,請參閱設定服務專案。
使用原則測試及部署
首先,在選取的伺服器和用戶端上使用小型、手動部署進行測試。 使用階段式群組原則推出來進行這些變更。 例如,從 SMB 的最繁重使用者開始,例如您自己的 IT 小組。 如果您的小組膝上型電腦和應用程式和檔案共用存取在部署輸入和輸出防火牆規則之後運作良好,請在廣泛的測試和 QA 環境中建立測試群組原則。 根據結果,開始取樣某些部門機器,然後展開。
下一步
觀看 Jessica Payne 的 Ignite 會議研討會 解除 Windows 防火牆的解譯