2018-05-02

Windows 10 在 1709 更新之後, 如何讓其他台電腦可以看得到, 且分享其目錄或資源

會有這個問題主要是微軟對於 smb protocol 做了一些更動:

- 取消了 HomeGroups 功能
- 全面使用 SMB V2/V3
- 禁止了"不安全的來賓登入"

==========目前使用的方法=============================================
1) 先決條件 : NetBIOS over TCPIP 必須啟用
     cmd > ipconfig /all > 確認 NetBIOS over Tcpip 為啟用;
     網路連線 > 內容 > TCP/IP4 > 內容 > 進階 > WINS > 啟用 [NetBIOS over TCP/IP ] > 重啟
     若一直無法啟用, 請參考 NetBIOS over Tcpip 一直顯示為"禁用"

2) service 設定:
    DNS Client 確定開啟
    Function Discovery Provider Host 請啟動並由手動改成自動 (延遲啟動)
    Function Discovery Resource Publication 請啟動並由手動改成自動 (延遲啟動)
SSDP Discovery 請啟動並由手動改成自動
    UPnP Device Host 請啟動並由手動改成自動
    TCP/IP NetBIOS Helper 確定為啟動狀態

3) win鍵+R 輸入gpedit.msc
電腦設定>系統管理範本>網路>Lanman 工作站>啟用不安全的來賓登入>選擇【已啟用】【確定】

退出本機原則視窗後,開一命令視窗輸入 gpupdate /force 或者重新啟動電腦

原因 : Guest access in SMB2 disabled by default in Windows 10, Windows Server 2016 version 1709, and Windows Server 2019

4) 網路和共用中心 -> 變更進階共用設定-> 私人(目前設定檔)-> 網路探索-> (enable)開啟網路探索-> (enable)開啟網路連線裝置的自動設定

5) 網路和共用中心 -> 變更進階共用設定-> 所有網路-> 以密碼保護的共用 ->關閉

6) 想要取用被分享的檔案, 可直接在 檔案總管-本機-電腦-連接網路磁碟機 上面輸入  \\電腦名稱\shared_directory 或 \\IP

強烈建議,不要重新安裝 SMBv1, 因為這個舊版通訊協定已知具有與勒索軟體和其他惡意程式碼相關的安全性問題

目前的問題是:

1) 檔案總管 -> 網路, 無法顯示相同群組內的電腦 ( 似乎是微軟 windows 10 1803 之後才有的問題 ); 若要探索網路上被分享的檔案, 必須使用上述步驟 6 的方法. ... 安裝 SMB V1 或許可解, 但不建議.

=======改用其他通訊協定 (要輸入 username/password太麻煩了) ======================
改用 HTTP Server
或架 FTP Server


===== 另外一種解法 : 強制使用舊版的SMB V1 (不建議) =================

Windows 系統管理工具\服務 開啟後\
DNS Client 確定開啟
Function Discovery Provider Host 請啟動並由手動改成自動
Function Discovery Resource Publication 請啟動並由手動改成自動
SSDP Discovery 請啟動並由手動改成自動
UPnP Device Host 請啟動並由手動改成自動

搜尋windows 找 "Windows 功能" 點進 "開啟或關閉Windows 功能"
展開SMB 1.0/CIFS 檔案共用支援
勾選"SMB 1.0/CIFS 用戶端"
重啟電腦

<< 千萬不要使用以下方法, 會有不可預期的影響 >>
先使用管理者權限執行CMD, 強制使用舊版的SMB
輸入下方指令
SC.EXE config lanmanworkstation depend=bowser/mrxsmb10/nsi
輸入下方指令
SC.EXE config mrxsmb20 start=disabled
重開機後,網路芳鄰裡的裝置就會再次出現了!

===== 另外一種現象 (還沒驗證過)  =================
1709版連不上NAS?嗯。其實還有另一種可能,叫做「Guest access in SMB2 disabled by default」。不用把SMB改回1.0版,而是把登錄檔修改一個值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] => 修改或新增“AllowInsecureGuestAuth” = 1 (DWORD)
請參考網路上找來的分享文。Windows 10 1709 無法存取QNAP Synology NAS網路芳鄰(SMB)

微軟沒事升級就升級,偏偏就喜歡偷改些東西讓你人仰馬翻......

在升級到Windows 10 1709 (RS3) Fall Creators Update以後,原因看起來是Guest access in SMB2 disabled by default,如果您未儲存NAS的帳號密碼至「認證管理員」的話,則會無法連線至NAS的網芳。

In Windows 10 Fall Creators Update and Windows Server version 1709, the SMB2 client no longer allows the following actions:
1. Guest account access to a remote server
2. Fallback to the Guest account after invalid credentials are provided

有問題的情況:
(情況1)使用我的電腦或檔案總管時,連線至 \\NAS\Multimedia,則會出現 0x80004005 錯誤。

(情況2)使用net use \\NAS\Multimedia會出現以下錯誤:
系統發生 1272 錯誤。
您無法存取此共用資料夾,因為您組織的安全性原則已封鎖未經驗證的來賓存取。這些原則可協助保護您的電腦,以防禦網路上不安全或惡意的裝置。
You can't access this shared folder because your organization's security policies block unauthenticated guest access. These policies help protect your PC from unsafe or malicious devices on the network.

解決辦法:
(方法1)把帳號密碼存入認證管理員,認證管理員進入的方式:先按win+r => 輸入control 按enter(也就是選擇「控制台」) => 「使用者帳戶」=>選擇「認證管理員」下面的「管理Windows認證」=>新增Windows認證=>輸入NAS IP或domain name、網芳帳號、網芳密碼=>確定

(方法2)修改registry,先按win+r => 輸入regedit.msc =>找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] => 修改或新增“AllowInsecureGuestAuth” = 1 (DWORD)

Reference:
SMBv1 is not installed by default in Windows 10 Fall Creators Update and Windows Server, version 1709
Guest access in SMB2 disabled by default in Windows 10 Fall Creators Update and Windows Server 2016 version 1709
Windows 10 1709 Cannot Access SMB2 Share Guest Access