OS: Windows XP Home Edition
Samba 4.8.0
いつの頃からかWindows XPからSambaサーバへアクセスできなくなって困った。ユーザ名、パスワード共に正しい筈であるのにアクセスを拒まれるのである。sambaサーバのログを確認してみるとこういう具合であった。
$ less /usr/local/samba/var/samba.log [2017/09/22 21:56:31.551107, 2] ../libcli/auth/ntlm_check.c:430(ntlm_password_check) ntlm_password_check: NTLMv1 passwords NOT PERMITTED for user guro
NTLMv1という認証の方式は容認しない旨、ログに記録されている。これを変更してNTLMv2で認証をおこなうことで回避できるようである。変更するためのレジストリは次のようなものであった。取りうる値は0から5の整数で、デフォルトでは0であるという。
HKLM\SYSTEM\CurrentControlSet\Control\Lsa Name : LmCompatibilityLevel Type : DWORD
クライアントとしてNTLMv2での認証をおこなうには3以上の数値にセットすればよいようである。コマンドプロンプトから一思いにシュッと設定するのであればこのような具合である。
C:\>reg add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v LmCompatibilityLevel /t REG_DWORD /d 5 /f
これで無事Sambaサーバへアクセスできるようになった。