連載
» 2021年02月04日 05時00分 公開

Windows 10におけるレガシーSMBプロトコルに関する重要な変更とSMB v3新機能まとめ企業ユーザーに贈るWindows 10への乗り換え案内(93)

Windows 10およびWindows Server 2016以降、レガシーなSMB(SMB v1やSMB v2)の扱いについて、既定の動作に幾つか重要な変更が行われています。Windows 10やWindows Server 2016以降への移行時、または機能更新プログラムによる新バージョンへのアップグレードのタイミングで、以前のWindowsネットワークになかった挙動に遭遇した場合は、変更点を確認してみてください。

[山市良,テクニカルライター]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「企業ユーザーに贈るWindows 10への乗り換え案内」のインデックス

企業ユーザーに贈るWindows 10への乗り換え案内

多くのWindowsネットワークはSMB v3に移行済み(のはず)

 Windowsネットワークにおける標準のファイル共有プロトコルは「Server Message Block(SMB)」です。パフォーマンス改善やセキュリティ強化のために、「Windows Vista」以降「Windows 10」まで、SMBの新しいバージョンが次々に登場しました(表1)。

SMB Windows
SMB 1.0/CIFS Windows XP(EoS)およびWindows Server 2003 R2(EoS)以前
SMB 2.0 Windows Vista(EoS)、Windows Server 2008(EoS)
SMB 2.1 Windows 7(EoS)、Windows Server 2008 R2(EoS)
SMB 3.0 Windows 8(EoS)、Windows Server 2012
SMB 3.0.2 Windows 8.1、Windows Server 2012 R2
SMB 3.1.1 Windows 10、Windows Server 2016以降
表1 SMBのバージョンとWindowsの対応

 Windows 10は最新のSMB 3.1.1をサポートしていますが、以前のSMBも全てサポートしており、SMB共有への接続に対して下位互換性を提供しています。SMBサーバとSMBクライアント間は、SMBバージョンをネゴシエートし、両者がサポートする最も上位のSMBバージョンを選択して通信します。

 Windows 10のSMB 3.1.1、「Windows 8」で登場したSMB 3.0、「Windows 8.1」のSMB 3.02を全て含めて、「SMBバージョン3(SMB v3)」と呼ぶこともあります。表1に示したように、現在サポートされているWindowsは全てSMB v3をサポートしています。プロトコルの仕様的には、SMB 2.0以降、SMB v3までを含めて「SMB2(MS-SMB2)」と呼ぶこともあり、レガシーなSMB 1.0/CIFS(SMB v1)の「SMB(MS-SMB)」と区別されます。

 サポートが終了(End of Support、EoS)したWindowsを継続して利用している(非推奨)、あるいは「拡張セキュリティ更新プログラム(Extended Security Update、ESU)」を利用して「Windows 7」や「Windows Server 2008/2008 R2」を延命している場合でない限り、SMB 2.1以前のバージョンを実行するWindowsデバイスはもう存在しないはずです。SMB v3に対応していないネットワークデバイス(FAXコピー複合機など)や、Mac、Linuxの古いバージョンが存在する場合は、SMB 2.1以前が使用されているかもしれません。

 しかしながら、MicrosoftはSMB 2.1以前のレガシーなSMBについて、Windows 10やWindows Serverの新しいバージョンでは既定の動作に幾つか重要な変更が行われています。それが影響して、Windows 10の機能更新プログラムによるバージョンアップや、クライアントPCやサーバのリプレースを機に、それまで問題のなかったSMBの通信にトラブルが発生する可能性があります。

SMB 1.0/CIFSは既定でインストールされなくなった

 以下のMicrosoftの公式ドキュメントで説明されているように、現在サポートされているWindows 10のバージョン、「半期チャネル(SAC)」のWindows Server、「Windows Server 2019」は、新規インストールではSMB 1.0/CIFSのサーバおよびクライアント機能は既定でインストールされなくなりました。

 SMB 1.0/CIFSのサーバ/クライアント機能が有効になっているWindows 10を、機能更新プログラムなどでインプレースアップグレードした場合、HomeおよびProエディションはSMB 1.0/CIFSのサーバ/クライアント機能は残りますが、このプロトコルが15日間使用されなかった場合には自動で削除されます。それ以外のエディション(Enterpriseなど)は、自動で削除されることはありません。

 SMB 1.0/CIFSのサーバ/クライアント機能が削除された場合は、SMB 1.0/CIFSに依存する「Computer Browser」サービスはアンインストールされます。そのため、レガシーなNBT(NetBIOS over TCP/IP)によるWindowsネットワークのブラウジングは機能しなくなります。

 この仕様はWindows 10 バージョン1709から始まっており、Windows 10のバージョンやエディションによって挙動が異なります。詳しくは、Microsoftの公式ドキュメントで説明されています。機械翻訳の日本語が分かりにくい場合は、オリジナルの英語ドキュメントを参照することをお勧めします。

 SMB 1.0/CIFSのサーバ/クライアント機能の15日後の自動削除は、1回のみです。Windows 10の場合、コントロールパネルの「Windowsの機能の有効化または無効化」でSMB 1.0/CIFSのサーバ/クライアント機能を個別に有効化でき、その後は削除されません(次の機能更新プログラムで再び自動削除される可能性はあります)。

 「SMB 1.0/CIFS自動削除」機能はWindows 10 バージョン1809から追加され、Enterpriseなど自動削除が行われないエディションに対して、管理者が自動削除機能を有効化するために利用できます(画面1)。

画面1 画面1 Windows 10の場合はSMB 1.0/CIFSの機能が既定でインストールされず、インプレースアップグレードの場合でも自動削除されることがある。SMB 1.0/CIFSに対応する必要がある場合は、「Windowsの機能の有効化または無効化」を使用して有効化する(非推奨)

 Windows Serverは自動削除の対象外ですが、Windows Server 2019(デスクトップエクスペリエンス)は「サーバーマネージャー」の「役割と機能の追加(または削除)ウィザード」やPowerShellコマンドレット(Enable/Disable-WindowsOptionalFeature)を使用して、SMB 1.0/CIFSのサーバ/クライアント機能を個別に有効化/無効化できます(画面2)。

画面2 画面2 Windows Server 2019(デスクトップエクスペリエンス)でSMB 1.0/CIFSをサポート(非推奨)するには、「役割と機能の追加ウィザード」などで機能を有効化する必要がある

 いずれの場合も、SMB 1.0/CIFSはセキュリティ上の問題があるため、可能な限り“有効化しない”ことを推奨します。

安全でないゲストアクセス(匿名アクセス)の無効化について

 Windows 10 Enterprise/Educationエディションのバージョン1709以降と、「Windows Server, version 1709(SAC)」以降、Windows Server 2019は、SMB2(MS-SMB2のこと、SMB v2とSMB v3の両方を含む)による共有リソースへの匿名(非認証)アクセスが既定で無効化されました。これらのOSには、以下のレジストリ値が既定で構成されており、「安全でないゲストログオン(Insecure Guest Logon)」が無効化されています。

Copyright © ITmedia, Inc. All Rights Reserved.

「Windows 7」サポート終了 対策ナビ

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。