はじめに
SMBv1の有効、無効は影響しない
sambaへのアクセスを監視すると少なくとも通信は行っている
\\{ip-address}でアクセスしても何も表示されない
パスを直接指定すると\\{ip-address}\{path}にアクセスできません というエラーメッセージが表示される
NASの種類によってはipアドレスだけでもエラーとなる
ネットワークドライブの割当から認証情報を直接指定してもアクセスできない
設定をほとんど変更していない別のWindows10のPC複数で確認すると問題は発生しない
以上のような状態でした。幾ら検索しても(主にSMBv1のせいでこれ関係に埋もれてSMBv1以外の情報が見つけにくい状態だったことも影響していそうですが)解決はしませんでした。
原因
2020年の4月頃にzoomが必要になったものの脆弱性が話題になり、レジストリを編集していたことが原因でした。
偶然zoomの脆弱性のためにレジストリを編集しており、それが認証周りの物であったことを思い出せたので解決しましたが、思い出せなければ二度とNASにアクセスできないPCにするところでした。
解決方法
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0内のRestrictSendingNTLMTrafficを0もしくは1にする
上記の記述で分からない場合は、"RestrictSendingNTLMTraffic zoom" 等で検索すればレジストリの編集方法が見つかるので"DWORDで2にする"の部分を"DWORDで0にする"もしくは"DWORDで1にする"と読み替えてください。
詳細:
まず、SMBではNTLM/NTLMv2認証というものを利用しています。
そして、RestrictSendingNTLMTrafficについてですが、Microsoftのドキュメントに記述があり、このレジストリはそのNTLM認証を要求された際の挙動を指定するものでした。
0で認証情報の送信を制限しない。
1で認証情報の送信時にログを残す。
2で認証情報を送信しない。となります。
ZOOMの脆弱性というのが、UNCパス(上記の\\{ip-address}のようなもの)をチャットで送信された際にそれをリンクとして扱ってしまい、ユーザーがクリックしてしまうと指定されたサーバーへアクセスし、NTLM認証を試み、勿論ここで送信される認証情報はハッシュ化されていますがそれが弱く現在のPCでは数十秒で復元できてしまう、結果として認証情報を盗まれる、というものでした。
これの一時的な対処法として上記のレジストリ書き換えでNTLM認証を行わない、とすることで認証情報を盗まれる事を防ぐ、ということでした。
そして、この設定変更によりNTLM認証が行われなくなり、結果としてSMB共有へのアクセスが全て拒否される状態となりました。