您好,登錄后才能下訂單哦!
本文介紹如何在 SMB 客戶端和服務器組件上啟用/禁用服務器消息塊 SMBv1、SMBv2 和 SMBv3。
注意:建議由專業技術工程師完成以下操作。
禁用 SMBv2 和 SMBv3 的影響
我們建議不要禁用 SMBv2 或 SMBv3。禁用 SMBv2 或 SMBv3 只能作為臨時故障排除措施。請勿使 SMBv2 或 SMBv3 保持禁用狀態。
禁用 SMBv2 的影響
在 Windows 7 和 Windows Server 2008 R2 中,禁用 SMBv2 會停用以下功能:
禁用 SMBv3 的影響
在 Windows 8、Windows 8.1、Windows 10、Windows Server 2012 和 Windows Server 2016 中,禁用 SMBv3 會停用以下功能(以及以上列表中所述的 SMBv2 功能):
在 SMB 服務器上啟用/禁用 SMB 協議
Windows 8 和 Windows Server 2012
Windows 8 和 Windows Server 2012 引入了新的 Set-SMBServerConfiguration Windows PowerShell cmdlet。 通過此 cmdlet,你可以在服務器組件上啟用或禁用 SMBv1、SMBv2 和 SMBv3 協議。
注意:因為 SMBv2 和 SMBv3 共用一個堆疊,所以在 Windows 8 或 Windows Server 2012 中啟用或禁用 SMBv2 時,也會啟用或禁用 SMBv3。
使用 PowerShell cmdlet
運行 Set-SMBServerConfiguration cmdlet 后,無須重啟計算機。
若要獲取 SMB 服務器協議配置的當前狀態,請運行以下 cmdlet:
Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol
若要在 SMB 服務器上禁用 SMBv1,請運行以下 cmdlet:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
若要在 SMB 服務器上禁用 SMBv2 和 SMBv3,請運行以下 cmdlet:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
若要在 SMB 服務器上啟用 SMBv1,請運行以下 cmdlet:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
若要在 SMB 服務器上啟用 SMBv2 和 SMBv3,請運行以下 cmdlet:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Windows 7、Windows Server 2008 R2、Windows Vista 和 Windows Server 2008
若要在運行 Windows 7、Windows Server 2008 R2、Windows Vista 或 Windows Server 2008 的 SMB 服務器上啟用或禁用 SMB 協議,請使用 Windows PowerShell 或注冊表編輯器。
使用 Windows PowerShell 2.0 或更高版本的 PowerShell
若要在 SMB 服務器上禁用 SMBv1,請運行以下 cmdlet:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 -Force
若要在 SMB 服務器上禁用 SMBv2 和 SMBv3,請運行以下 cmdlet:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 -Force
若要在 SMB 服務器上啟用 SMBv1,請運行以下 cmdlet:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 -Force
若要在 SMB 服務器上啟用 SMBv2 和 SMBv3,請運行以下 cmdlet:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 -Force
注意:進行這些更改后,必須重啟計算機。
使用注冊表編輯器
注意:以下內容包含有關如何修改注冊表的信息。修改注冊表之前,一定要先對其進行備份。并且一定要知道在發生問題時如何還原注冊表。有關如何備份、還原和修改注冊表的更多信息,請查看 如何在 Windows 中備份和還原注冊表。
若要在 SMB 服務器上啟用或禁用 SMBv1,請配置以下注冊表項:
注冊表子項:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters 注冊表項: SMB1
REG_DWORD: 0 = 已禁用
REG_DWORD: 1 = 已啟用
默認值: 1 = 已啟用
若要在 SMB 服務器上啟用或禁用 SMBv2,請配置以下注冊表項:
注冊表子項:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters 注冊表項: SMB2
REG_DWORD: 0 = 已禁用
REG_DWORD: 1 = 已啟用
默認值: 1 = 已啟用
在 SMB 客戶端上啟用/禁用 SMB 協議
Windows Vista、Windows Server 2008、Windows 7、Windows Server 2008 R2、Windows 8 和 Windows Server 2012
注意:因為 SMBv2 和 SMBv3 共用一個堆疊,所以在 Windows 8 或 Windows Server 2012 中啟用或禁用 SMBv2 時,也會啟用或禁用 SMBv3。
若要在 SMB 客戶端上禁用 SMBv1,請運行以下命令:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
若要在 SMB 客戶端上啟用 SMBv1,請運行以下命令:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto
若要在 SMB 客戶端上禁用 SMBv2 和 SMBv3,請運行以下命令:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc.exe config mrxsmb20 start= disabled
若要在 SMB 客戶端上啟用 SMBv2 和 SMBv3,請運行以下命令:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto
注意:
必須在提升的命令提示符中運行這些命令。
進行這些更改后,必須重啟計算機。
使用組策略禁用 SMBv1 服務器
這將在注冊表中配置以下新項:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters 注冊表項: SMB1 REG_DWORD: 0 = Disabled
使用組策略配置流程
1、打開組策略管理控制臺。右鍵單擊應包含新首選項的組策略對象 (GPO),然后單擊 編輯。
2、在 計算機配置 下的控制臺樹中,展開 首選項 文件夾,然后展開 Windows 設置 文件夾。
3、右鍵單擊 注冊表 節點,指向 新建,然后選擇 注冊表項。
4、在 新建注冊表屬性 對話框中,選擇以下內容:
操作: 創建
Hive: HKEY_LOCAL_MACHINE
注冊表項路徑: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
值名稱: SMB1
值類型: REG_DWORD
值數據: 0
5、將此組策略應用到域中所有必需的工作站、服務器和域控制器,以禁用 SMBv1 服務器組件。也可以將 WMI 篩選器設置為不包含不受支持的操作系統或選中的排除項(如 Windows XP)。
注意:在舊版 Windows XP 或 Linux 早期版本以及第三方系統(不支持 SMBv2 或 SMBv3)需要訪問 SYSVOL 或其他文件共享(已啟用 SMB v1)的域控制器上進行這些更改時要謹慎小心。
使用組策略禁用 SMBv1 客戶端
若要禁用 SMBv1 客戶端,需要將服務注冊表項更新為禁止 MRxSMB10 啟動,然后還需要將 MRxSMB10 的依賴項從 LanmanWorkstation 項中刪除,以便它可以正常啟動(無需首先啟動 MRxSMB10)。
這將更新和替換注冊表以下 2 個項中的默認值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10 注冊表項: Start REG_DWORD: 4 = Disabled
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation 注冊表項: DependOnService REG_MULTI_SZ: “Bowser”,”MRxSmb20″,”NSI”
注意:默認包含的 MRxSMB10 現已作為依賴項刪除。
使用組策略配置流程
1、打開組策略管理控制臺。右鍵單擊應包含新首選項的組策略對象 (GPO),然后單擊 編輯。
2、在 計算機配置 下的控制臺樹中,展開 首選項 文件夾,然后展開 Windows 設置 文件夾。
3、右鍵單擊 注冊表 節點,指向 新建,然后選擇 注冊表項。
4、在 新建注冊表屬性 對話框中,選擇以下內容:
操作: 更新
Hive: HKEY_LOCAL_MACHINE
注冊表項路徑: SYSTEM\CurrentControlSet\services\mrxsmb10
值名稱: Start
值類型: REG_DWORD
值數據: 4
然后刪除剛剛禁用的 MRxSMB10 的依賴項
5、在 新建注冊表屬性 對話框中,選擇以下內容:
操作: 替換
Hive: HKEY_LOCAL_MACHINE
注冊表項路徑: SYSTEM\CurrentControlSet\Services\LanmanWorkstation
值名稱: DependOnService
值類型 REG_MULTI_SZ
值數據:
Bowser
MRxSmb20
NSI
注意: 這 3 個字符串不帶項目符號(具體如下)
在 Windows 的多個版本中,默認值包括 MRxSMB10,通過將其替換為此多值字符串,實際上就刪除了作為 LanmanServer 依賴項的 MRxSMB10,結果是從四個默認值減少為上述這三個值。
注意:使用組策略管理控制臺時,無需使用引號或逗號。只需在各行鍵入每個項,如上面所示。
需要重新啟動
應用策略且正確設置注冊表后,必須重新啟動目標系統,然后才能禁用 SMB v1。
摘要
如果所有設置均在同一組策略對象 (GPO) 中,組策略管理將顯示以下設置。
測試和驗證
配置完成后即允許策略進行復制和更新。作為測試的必要步驟,請從 CMD.EXE 提示符處運行 gpupdate/force,然后查看目標計算機,以確保注冊表設置得以正確應用。確保 SMBv2 和 SMBv3 在環境中的所有其他系統中正常運行。
注意:請務必重新啟動目標系統。
如何在 Windows 8.1、Windows 10、Windows 2012 R2 和 Windows Server 2016 中輕松刪除 SMBv1
Windows Server:使用 “服務器管理器”
Windows Server:使用 PowerShell (Remove-WindowsFeature FS-SMB1)
Windows 客戶端:使用 “添加或刪除程序”
Windows 客戶端:使用 PowerShell (Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol)
參考與適用性
本文來源自微軟官方技術文檔:如何在 Windows 和 Windows Server 中啟用和禁用 SMBv1、SMBv2 和 SMBv3。
如有變化,以微軟官方為準。
這篇文章中的信息適用于:
Windows 10 Pro released in July 2015,
Windows 10 Enterprise released in July 2015
Windows Vista Enterprise
Windows Vista Business
Windows Vista Home Basic
Windows Vista Home Premium
Windows Vista Ultimate
Windows 7 Enterprise
Windows 7 Home Basic
Windows 7 Home Premium
Windows 7 Professional
Windows 7 Ultimate
Windows Server 2008 Datacenter
Windows Server 2008 Enterprise
Windows Server 2008 Standard
Windows Server 2008 R2 Datacenter
Windows Server 2008 R2 Enterprise
Windows Server 2008 R2 Standard
Windows 8
Windows 8 Enterprise
Windows 8 Pro
Windows Server 2012 Datacenter
Windows Server 2012 Datacente
Windows Server 2012 Essentials
Windows Server 2012 Foundation
Windows Server 2012 Foundation
Windows Server 2012 Standard
Windows Server 2012 Standard
Windows Server 2016
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。