以下事件發生不見得,每個人所發生狀況都會一樣,提共給各位參考,在找出問題時多一個想法
事發 客戶的電腦維修重灌完之後更新,送回安裝後出現連接NAS 或是檔案伺服器都出現了
"使用者帳號或者密碼錯誤"
此時把之前知道的問題處理方法通通用過一遍,
1. 增加SMBv1 通訊協定
2. 本機群組原則中開啟 網路安全性: LAN Manager 驗證等級 如下圖
結果都無效 依然是無法透過SMB (網路芳鄰)這個服務登入,一直顯示密碼錯誤
就必須要刪除 這一個選項目,刪除的方法請進入Regedit 去找到一個
path: 電腦\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet\Control\Lsa
機碼: LMCompatibilityLevel
請注意 若已經啟用了 "網路安全性: Lam Manager 驗證等級" 後出現密碼永遠錯誤的狀況,請刪除上述regedit 路徑後的機碼
在依照下面去檢查目前所使用的smb版本
關閉啟用windows跟samba的SMBv1 and SMBv2 and SMBv3
在powershell底下輸入以下指令
查看SMBv1
Get-SmbServerConfiguration | Select EnableSMB1Protocol
查看SMBv2
Get-SmbServerConfiguration | Select EnableSMB2Protocol
沒有SMBv3,v2跟v3是一起的
啟用SMBv2 and 關閉SMBv2
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Set-SmbServerConfiguration -EnableSMB2Protocol $false
啟用SMBv1 and 關閉SMBv1
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Set-SmbServerConfiguration -EnableSMB1Protocol $false
在win10上查看SMB狀態,指令如上
舊系統,可以使用命令提示字元,下指令
查詢
sc.exe qc lanmanworkstation
啟用SMBv1
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto
關閉SMBv1
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
啟用SMBv2
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto
關閉SMBv2
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc.exe config mrxsmb20 start= disabled
在AD內要使用群組原則(GPO)部署,請參考官方文件
https://docs.microsoft.com/zh-tw/windows-server/storage/file-server/troubleshoot/detect-enable-and-disable-smbv1-v2-v3
在舊系統的時代,檔案分享都要開啟
137port,138port,139port,445port是因為NetBIOS的關係
NetBIOS是windows自己開發的協定,把IP轉成電腦名稱用的
可以關閉只開啟445port,用SMB連就好了,直接用ip連,簡化防火牆管理
SAMBA伺服器是linux跟windows共享的檔案伺服器,版本4.11以上,不支援SMBv1
關閉SMBv1,把設定值更改就好了
sudo vim /etc/samba/smb.conf //更改設定
client min protocol = SMB2 //最小支援
client max protocol = SMB3 //最大支援
重新啟動SMB服務,就好了