2020/12/23

【覚書】SMB2 での安全でないゲストアクセスの無効化について(SMB2はSMB v2+v3)(追記あり)

Windows 10 ver 1709(Enterprise/Education)、Windows Server, version 1709(SAC)、Windows Server 2019(LTSC)の SMB クライアント(LanMan ワークステーション)の「安全でないゲスト アクセス(安全でないゲスト ログオン、insecure guest logons)」(初出時「安全な」って間違えてました)が既定で無効化された件。

認証なしでアクセス可能な NAS とかへの接続に影響するかもな件です。既定値の変更であって、ポリシー設定やレジストリ編集で従来の仕様に戻せる。

ちょっとややこしいんですが、

Guest access in SMB2 disabled by default in Windows
Original product version:   Windows 10 - all editions, Windows Server 2019, Windows Server 2016
Original KB number:   4046019
https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/guest-access-in-smb2-is-disabled-by-default
(旧 https://support.microsoft.com/en-us/help/4046019、この例もそうですが、旧 KB の URL <更新プログラムのページを除く> が docs に次々に移行してますね、いつまでリダイレクトしてくれるのかな)

このドキュメントのSMB2は、SMBv3を含むSMB2のこと。MS-SMB2 の SMB2(SMBv3 が SMB2 な理由を話すと長くなる)。

[MS-SMB2]: Server Message Block (SMB) Protocol Versions 2 and 3
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-smb2

Windows Server 2016 でも既定で無効みたいに書いてるけど、Windows Server, version 1709 以降が正しいと思う。SMB 1.0/CIFS には影響しない(変更なし)。 

Windows Server 2008(SMB 2.0)、Windows Server 2008 R2(SMB 2.1)、Windows Server 2016(SMB 3.1.1)の各サーバーで Guest アカウントを有効化して、ネットワークアクセスも有効化して、Everyone:フルコントロールな共有を作成して確認してみた。SMB 3.1.1 でもちゃんとブロックされている。つまり、上の SMB2 は SMB v2 と v3 のこと。

Home Pro の ver 1709 以降、Windows Server 2016 には HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters に AllowInsecureGuestAuth 値は存在しないのでこれまでどおり。

ていうか、最近の Windows でゲストアクセスできる SMB 共有作るの結構面倒いかった。 

検証画面追加(クライアント側、左 Pro、右 Enterprise、どちらも既定のまま)


検証画面追加(サーバー側、Pro からの接続は SMB 3.1.1 の Guest アクセス)

チェック マン参上!

Windows 10 Enterprise ver 1703(従来と同じ)

Windows 10 Enterprise ver 1709(既定で無効)
(※ ver 2004/20H2 Enterprise Evaluation には AllowInSecureGuestAuth は無かった。ver 1903/1909 Ent Eval にはある。20H2 Pro for Works にはない。ver 1809 Ent Eval は未確認)

Windows Server 2016(従来と同じ)

Windows Server 2019(既定で無効) 

参考:Windows Server で安全でないゲストアクセスを有効にする方法(非推奨)

ローカル ポリシー

コンピューターの構成\Windows の設定\セキュリティの設定\セキュリティ オプション
 アカウント: Guest アカウントの状態:有効
 ネットワーク アクセス: Everyone のアクセス許可を匿名ユーザーに適用する:有効
 ネットワーク アクセス: SAM アカウントおよび共有の匿名の列挙を許可しない:無効
 ネットワーク アクセス: 匿名でアクセスできる共有:共有名

共有設定

 NTFS アクセス許可: Everyone 変更
   共有 アクセス許可: Everyone 変更

これでたぶん、適当な資格情報(ローカルログオン中のユーザーの資格情報とか)で認証なしで接続できるはず。


 

0 件のコメント: