Windows Server 2012 或SMB連線上的系統錯誤2148073478、擴充錯誤或無效簽章錯誤訊息 Windows 8

本文提供在伺服器消息塊塊 (SMB) 連線上發生之錯誤訊息的解決方案。

適用於:Windows 10 - 所有版本,Windows Server 2012 R2
原始 KB 編號: 2686098

徵狀

在以 Windows Server 2012 或 Windows 8 為基礎的電腦無法連線到支援 SMBv2 檔案通訊協定的第三方檔案伺服器之後,您會收到下列其中一個錯誤訊息或類似的錯誤訊息,視您存取第三方檔伺服器的方式而定:

  • 當您使用具有 UNC 路徑的 DIR 命令時:

    無效的簽章

  • 當您執行 NET USE 命令時:

    發生系統錯誤2148073478

  • 當您嘗試瀏覽至 UNC 路徑時:

    發生擴充錯誤

在下列常見案例中,您可能會遇到這些錯誤:

  • 執行 Hyper-V Server 2012 或 Windows Server 2012 和 Window 8) 的 Hyper-V 伺服器實時移轉 (失敗。 這是因為記憶體必須裝載在SMB共用上。
  • 您無法在視窗 8 Windows Server 2012 環境中將網路驅動器機對應至 SAN。

原因

此問題是由針對 Windows Server 2012和 Windows 8 新增至SMB 3.0的功能所Secure Negotiate造成。 這項功能取決於所有SMBv2伺服器正確簽署錯誤回應,包括僅支援通訊協定2.0和2.1版的伺服器。 某些第三方檔伺服器不會傳回已簽署的錯誤回應。 因此,聯機會失敗。

解決方案

若要解決此問題,請連絡第三方檔伺服器廠商,以要求可讓檔伺服器支援 Windows Server 2012 和 Windows 8 用戶端的更新。

因應措施

警告

我們不建議您停用安全交涉的需求,因為這會降低計算機安全性。 僅停用安全交涉作為暫時的疑難解答措施。 請勿讓安全交涉停用;請改為連絡第三方檔伺服器廠商,並要求更新以允許其檔伺服器正確支援 Windows Server 2012 和 Windows 8 用戶端。

在未來的操作系統中,可能會移除停用安全交涉功能的能力。

若要解決此問題,請使用下列其中一種方法:

  • 需要在第三方檔伺服器上簽署

    若要要求在SMB用戶端或SMB伺服器上登入,請開啟 RequireSecuritySignature 設定。 如需在廠商的SMB伺服器上將簽署設定設為 必要 設定的指示,請參閱廠商的檔。

    您可以在 Windows Server 2012 或 Windows 8 用戶端上使用 PowerShell 來啟用簽署。 若要這樣做,請執行下列命令:

    Set-SmbClientConfiguration -RequireSecuritySignature $true
    
  • 停用用戶端上的安全交涉

    您可以在 Windows Server 2012 或 Windows 8 用戶端上使用 PowerShell 來停用 Secure Negotiate 選項。 若要這樣做,請執行下列命令:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" RequireSecureNegotiate -Value 0 -Force
    

    注意事項

    此命令可能會換行至網頁瀏覽器中的多行。

參考資料

如需詳細資訊,請參閱 Windows Server 2012 檔伺服器中的新SMB 3.0功能