Erkennen, Aktivieren und Deaktivieren von SMBv1, SMBv2 und SMBv3 unter Windows
Gilt für: Windows Server 2022, Windows 10, Windows 8.1, Windows 8, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
In diesem Artikel wird beschrieben, wie Sie Server Message Block (SMB) Version 1 (SMBv1), SMB Version 2 (SMBv2) und SMB Version 3 (SMBv3) auf den SMB-Client- und -Serverkomponenten aktivieren und deaktivieren.
Das Deaktivieren oder Entfernen von SMBv1 kann zwar bei alten Computern oder alter Software zu Kompatibilitätsproblemen führen, aber SMBv1 weist erhebliche Sicherheitsrisiken auf, und wir raten Ihnen dringend von seiner Verwendung ab.
Deaktivieren von SMBv2 oder SMBv3 zur Problembehandlung
Sie sollten SMBv2 und SMBv3 aktiviert lassen, aber es kann hilfreich sein, eines vorübergehend für die Problembehandlung zu deaktivieren. Weitere Informationen finden Sie unter Erkennen, Aktivieren und Deaktivieren von SMBv1, SMBv2 und SMBv3 in Windows.
In Windows 10 Windows 8.1, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2 und Windows Server 2012 deaktiviert SMBv3 die folgenden Funktionen:
- Transparentes Failover: Clients stellen während der Wartung oder des Failovers ohne Unterbrechung die Verbindung mit Clusterknoten wieder her
- Aufskalieren: gleichzeitiger Zugriff auf freigegebene Daten auf allen Dateiclusterknoten
- Multichannel: Aggregation von Netzwerkbandbreite und Fehlertoleranz, wenn mehrere Pfade zwischen SMB-Client und -Server verfügbar sind
- SMB Direct: Fügt RDMA-Netzwerkunterstützung für hohe Leistung bei geringer Latenz und geringer CPU-Auslastung hinzu
- Verschlüsselung: Bietet End-to-End-Verschlüsselung und schützt vor Lauschangriffen in nicht vertrauenswürdigen Netzwerken
- Directory Leasing: Verbessert die Antwortzeiten von Anwendungen in Zweigstellen durch Zwischenspeichern
- Leistungsoptimierungen: Optimierungen für kleine zufällige Lese-/Schreib-E/A
In Windows 7 und Windows Server 2008 R2 wird durch das Deaktivieren von SMBv2 die folgende Funktionalität deaktiviert:
- Anforderungsverbund: Ermöglicht das Senden mehrerer SMBv2-Anforderungen als einzelne Netzwerkanforderung
- Größere Lese- und Schreibvorgänge: bessere Verwendung schnellerer Netzwerke
- Zwischenspeichern von Ordner- und Dateieigenschaften: Clients behalten lokale Kopien von Ordnern und Dateien bei
- Dauerhafte Handles: Ermöglichen die transparente Wiederherstellung der Verbindung mit dem Server bei einer vorübergehenden Trennung
- Verbesserte Nachrichtensignatur: HMAC SHA-256 ersetzt MD5 als Hashalgorithmus
- Verbesserte Skalierbarkeit für die Dateifreigabe: Anzahl von Benutzern, Freigaben und geöffneten Dateien pro Server wurde erheblich erhöht
- Unterstützung für symbolische Verknüpfungen
- Client-Oplock-Leasingmodell: schränkt die zwischen Client und Server übertragenen Daten ein, verbessert die Leistung in Netzwerken mit hoher Latenz und erhöht die Skalierbarkeit von SMB-Servern
- Unterstützung großer MTUs: für die vollständige Verwendung von 10-Gigabit-Ethernet (GbE)
- Verbesserte Energieeffizienz: Clients, die Dateien auf einem Server geöffnet haben, können in den Energiesparmodus gehen
Das SMBv2-Protokoll wurde in Windows Vista und Windows Server 2008 eingeführt, während das SMBv3-Protokoll in Windows 8 und Windows Server 2012 eingeführt wurde. Weitere Informationen zu den Funktionen von SMBv2 und SMBv3 finden Sie in den folgenden Artikeln:
Vorgehensweise: Entfernen von SMBv1
Hier erfahren Sie, wie Sie SMBv1 in Windows 10, Windows 8.1, Windows Server 2019, Windows Server 2016 und Windows 2012 R2 entfernen können.
PowerShell-Methoden
Nachfolgend finden Sie die Schritte zum Erkennen, Deaktivieren und Aktivieren von SMBv1-Client und -Server mithilfe von PowerShell-Befehlen.
Hinweis
Der Computer wird neu gestartet, nachdem Sie die PowerShell-Befehle ausführen, um SMBv1 zu deaktivieren oder zu aktivieren.
Erkennen:
Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Deaktivieren:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Aktivieren Sie:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Windows Server 2012 Windows Server 2012 R2, Windows Server 2016, Windows Server 2019: Server-Manager Methode
So entfernen Sie SMBv1 von Windows Server:
- Wählen Sie das Server-Manager-Dashboard des Servers aus, von dem Sie SMBv1 entfernen möchten, und wählen Sie unter Diesen lokalen Server konfigurieren die Option Rollen und Features hinzufügen aus.
- Wählen Sie auf der Seite Vorbereitung die Option Assistent zum Entfernen von Rollen und Features starten aus, und wählen Sie dann auf der folgenden Seite Weiter aus.
- Stellen Sie auf der Seite Zielserver auswählen unter Serverpool sicher, dass der Server, von dem Sie das Feature entfernen möchten, ausgewählt ist, und wählen Sie dann Weiter aus.
- Wählen Sie auf der Seite Serverrollen entfernen die Option Weiter aus.
- Aktivieren Sie auf der Seite Features entfernen das Kontrollkästchen für SMB 1.0-/CIFS-Dateifreigabeunterstützung, und wählen Sie Weiter aus.
- Bestätigen Sie auf der Seite Entfernungsauswahl bestätigen, dass das Feature aufgelistet ist, und wählen Sie dann Entfernen aus.
Windows 8.1 und Windows 10: Methode zum Hinzufügen oder Entfernen von Programmen
So deaktivieren Sie SMBv1 auf Windows 8.1 und Windows 10:
- Wählen Sie in der Systemsteuerung die Option Programme und Features aus.
- Wählen Sie auf der Startseite der Systemsteuerung die Option Windows-Features aktivieren oder deaktivieren aus, um das Feld Windows-Features zu öffnen.
- Scrollen Sie im Feld Windows-Features in der Liste nach unten, deaktivieren Sie das Kontrollkästchen für SMB 1.0-/CIFS-Dateifreigabeunterstützung, und wählen Sie OKaus.
- Nachdem Windows die Änderung angewendet hat, wählen Sie auf der Bestätigungsseite Jetzt neu starten aus.
Vorgehensweise: Erkennen des Status, Aktivieren und Deaktivieren von SMB-Protokollen auf dem SMB-Server
Für Windows 8.1 Windows Server 2012, Windows Server 2012 R2, Windows 10 und Windows Server 2019
In Windows 8 und Windows Server 2012 wurde das neue Windows PowerShell-Cmdlet Set-SMBServerConfiguration eingeführt. Mit dem Cmdlet können Sie die Protokolle SMBv1, SMBv2 und SMBv3 für die Serverkomponente aktivieren oder deaktivieren.
Hinweis
Wenn Sie SMBv2 in Windows 8 oder Windows Server 2012 aktivieren oder deaktivieren, wird SMBv3 ebenfalls aktiviert oder deaktiviert. Dieses Verhalten tritt auf, weil diese Protokolle denselben Stapel verwenden.
Sie müssen den Computer nicht neu starten, nachdem Sie das Cmdlet Set-SMBServerConfiguration ausgeführt haben.
SMBv1 auf SMB-Server
Erkennen:
Get-SmbServerConfiguration | Select EnableSMB1Protocol
Deaktivieren:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
Aktivieren Sie:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Weitere Informationen finden Sie unter Stop using SMB1 (Verwenden Sie SMB1 nicht mehr).
SMB v2/v3 auf SMB-Server
Erkennen:
Get-SmbServerConfiguration | Select EnableSMB2Protocol
Deaktivieren:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Aktivieren Sie:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Für Windows 7, Windows Server 2008 R2, Windows Vista und Windows Server 2008
Verwenden Sie zum Aktivieren oder Deaktivieren von SMB-Protokollen auf einem SMB-Server mit Windows 7, Windows Server 2008 R2, Windows Vista oder Windows Server 2008 Windows PowerShell oder den Registrierungs-Editor.
PowerShell-Methoden
Hinweis
Diese Methode erfordert PowerShell 2.0 oder eine höhere Version von PowerShell.
SMBv1 auf SMB-Server
Erkennen:
Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Standardkonfiguration = Aktiviert (Kein Registrierungsnamewert wird erstellt), sodass kein SMB1-Wert zurückgegeben wird.
Deaktivieren:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 -Force
Aktivieren Sie:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 -Force
Hinweis: Sie müssen den Computer neu starten, nachdem Sie diese Änderungen vorgenommen haben. Weitere Informationen finden Sie unter Stop using SMB1 (Verwenden Sie SMB1 nicht mehr).
SMBv2/v3 auf SMB-Server
Erkennen:
Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Deaktivieren:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 -Force
Aktivieren Sie:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 -Force
Hinweis
Sie müssen den Computer neu starten, nachdem Sie diese Änderungen vorgenommen haben.
Registrierungs-Editor
Wichtig
Folgen Sie den Schritten in diesem Abschnitt sorgfältig. Wird die Registrierung falsch angepasst, können schwerwiegende Probleme auftreten. Bevor Sie sie ändern, sichern Sie die Registrierung zwecks Wiederherstellung für den Fall, dass Probleme auftreten.
Um SMBv1 auf dem SMB-Server zu aktivieren oder deaktivieren, konfigurieren Sie den folgenden Registrierungsschlüssel:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Registry entry: SMB1
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = Enabled (No registry key is created)
Um SMBv2 auf dem SMB-Server zu aktivieren oder deaktivieren, konfigurieren Sie den folgenden Registrierungsschlüssel:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Registry entry: SMB2
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = Enabled (No registry key is created)
Hinweis
Sie müssen den Computer neu starten, nachdem Sie diese Änderungen vorgenommen haben.
Vorgehensweise: Erkennen des Status, Aktivieren und Deaktivieren von SMB-Protokollen auf dem SMB-Client
Hier erfahren Sie, wie Sie Status-, Aktivierungs- und Deaktivieren von SMB-Protokollen auf dem SMB-Client erkennen, Windows 10, Windows Server 2019, Windows 8.1, Windows Server 2016, Windows Server 2012 R2 und Windows Server 2012.
Hinweis
Wenn Sie SMBv2 in Windows 8 oder Windows Server 2012 aktivieren oder deaktivieren, wird SMBv3 ebenfalls aktiviert oder deaktiviert. Dieses Verhalten tritt auf, weil diese Protokolle denselben Stapel verwenden.
SMBv1 auf dem SMB-Client
Detect
sc.exe qc lanmanworkstation
Deaktivieren:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi sc.exe config mrxsmb10 start= disabled
Aktivieren Sie:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb10 start= auto
Weitere Informationen finden Sie unter Stop using SMB1 (Verwenden Sie SMB1 nicht mehr).
SMBv2/v3 auf dem SMB-Client
Erkennen:
sc.exe qc lanmanworkstation
Deaktivieren:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi sc.exe config mrxsmb20 start= disabled
Aktivieren Sie:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb20 start= auto
Hinweis
- Sie müssen diese Befehle an einer Eingabeaufforderung mit erhöhten Rechten ausführen.
- Sie müssen den Computer neu starten, nachdem Sie diese Änderungen vorgenommen haben.
Deaktivieren von SMBv1 mithilfe von Gruppenrichtlinie
In diesem Abschnitt wird erläutert, wie Sie Gruppenrichtlinie zum Deaktivieren von SMBv1 verwenden. Sie können diese Methode für verschiedene Versionen von Windows verwenden.
SMBv1-Server deaktivieren
Mit diesem Verfahren wird das folgende neue Element in der Registrierung konfiguriert:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Registrierungseintrag: SMB1
- REG_DWORD: 0 = Deaktiviert
Führen Sie die folgenden Schritte aus, um die Gruppenrichtlinie zu konfigurieren:
Öffnen Sie die Gruppenrichtlinien-Verwaltungskonsole. Klicken Sie mit der rechten Maustaste auf das Gruppenrichtlinienobjekt (GPO, Group Policy Object), das das neue Einstellungselement enthalten soll, und klicken Sie dann auf Bearbeiten.
Erweitern Sie in der Konsolenstruktur unter Computerkonfiguration den Ordner Einstellungen, und erweitern Sie dann den Ordner Windows-Einstellungen.
Klicken Sie mit der rechten Maustaste auf den Knoten Registrierung, zeigen Sie auf Neu, und wählen Sie Registrierungselement.
Wählen Sie im Dialogfeld Neue Registrierungseigenschaften Folgendes aus:
- Aktion: Aktualisieren
- Struktur: HKEY_LOCAL_MACHINE
- Schlüsselpfad:SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Wertname: SMB1
- Werttyp: REG_DWORD
- Wertdaten: 0
Mit diesem Verfahren werden die SMBv1-Serverkomponenten deaktiviert. Diese Gruppenrichtlinie muss auf alle erforderlichen Arbeitsstationen, Server und Domänencontroller in der Domäne angewendet werden.
Hinweis
WMI-Filter können auch so festgelegt werden, dass nicht unterstützte Betriebssysteme oder ausgewählte Ausschlüsse wie Windows XP ausgeschlossen werden.
Wichtig
Gehen Sie vorsichtig vor, wenn Sie diese Änderungen auf Domänencontrollern vornehmen, auf denen ältere Windows XP- oder ältere Linux- und Drittanbietersysteme (die SMBv2 oder SMBv3 nicht unterstützen) Zugriff auf SYSVOL oder andere Dateifreigaben benötigen, auf denen SMB v1 deaktiviert ist.
SMBv1-Client deaktivieren
Um den SMBv1-Client zu deaktivieren, muss der Diensteregistrierungsschlüssel aktualisiert werden, um den Start von MRxSMB10 zu deaktivieren. Anschließend muss die Abhängigkeit von MRxSMB10 aus dem Eintrag für LanmanWorkstation entfernt werden, damit er normal gestartet werden kann, ohne dass MRxSMB10 zuerst gestartet werden muss.
In diesem Leitfaden werden die Standardwerte in den folgenden beiden Elementen in der Registrierung aktualisiert und ersetzt:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10
Registrierungseintrag: Start REG_DWORD: 4= Deaktiviert
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
Registrierungseintrag: DependOnService REG_MULTI_SZ: „Bowser“, „MRxSmb20“, „NSI“
Hinweis
Zum Standard zählt MRxSMB10, was jetzt als Abhängigkeit entfernt wird.
Führen Sie die folgenden Schritte aus, um dies mithilfe der Gruppenrichtlinie zu konfigurieren:
Öffnen Sie die Gruppenrichtlinien-Verwaltungskonsole. Klicken Sie mit der rechten Maustaste auf das Gruppenrichtlinienobjekt (Group Policy Object, GPO), das das neue Einstellungselement enthalten soll, und klicken Sie dann auf Bearbeiten.
Erweitern Sie in der Konsolenstruktur unter Computerkonfiguration den Ordner Einstellungen, und erweitern Sie dann den Ordner Windows-Einstellungen.
Klicken Sie mit der rechten Maustaste auf den Knoten Registrierung, zeigen Sie auf Neu, und wählen Sie Registrierungselement.
Wählen Sie im Dialogfeld Neue Registrierungseigenschaften Folgendes aus:
- Aktion: Aktualisieren
- Struktur: HKEY_LOCAL_MACHINE
- Schlüsselpfad: SYSTEM\CurrentControlSet\services\mrxsmb10
- Wertname: Start
- Werttyp: REG_DWORD
- Wertdaten: 4
Entfernen Sie dann die Abhängigkeit von MRxSMB10, was deaktiviert wurde.
Wählen Sie im Dialogfeld Neue Registrierungseigenschaften Folgendes aus:
- Aktion: Ersetzen
- Struktur: HKEY_LOCAL_MACHINE
- Schlüsselpfad: SYSTEM\CurrentControlSet\Services\LanmanWorkstation
- Wertname: DependOnService
- Werttyp: REG_MULTI_SZ
- Wertdaten:
- Bowser
- MRxSmb20
- NSI
Hinweis
Diese drei Zeichenfolgen enthalten keine Aufzählungszeichen (siehe folgenden Screenshot).
Der Standardwert enthält MRxSMB10 in vielen Versionen von Windows, sodass sie durch diese mehrwertige Zeichenfolge ersetzt werden, es wird wirksam, MRxSMB10 als Abhängigkeit für LanmanWorkstation zu entfernen und von vier Standardwerten bis zu diesen drei Werten oben zu wechseln.
Hinweis
Wenn Sie die Gruppenrichtlinien-Verwaltungskonsole verwenden, müssen Sie keine Anführungszeichen oder Kommas verwenden. Geben Sie einfach die einzelnen Einträge in einzelne Zeilen ein.
Starten Sie die Zielsysteme neu, um die Deaktivierung von SMB v1 fertig zu stellen.
Überwachen der SMBv1-Nutzung
Um zu ermitteln, welche Clients versuchen, eine Verbindung mit einem SMB-Server mit SMBv1 herzustellen, können Sie die Überwachung unter Windows Server 2016, Windows 10 und Windows Server 2019 aktivieren. Sie können auch unter Windows 7 und Windows Server 2008 R2 überwachen, ob das monatliche Update vom Mai 2018 installiert ist, und unter Windows 8.1 und Windows Server 2012 R2, ob das monatliche Update vom Juli 2017 installiert ist.
Aktivieren Sie:
Set-SmbServerConfiguration -AuditSmb1Access $true
Deaktivieren:
Set-SmbServerConfiguration -AuditSmb1Access $false
Erkennen:
Get-SmbServerConfiguration | Select AuditSmb1Access
Wenn die SMBv1-Überwachung aktiviert ist, wird das Ereignis 3000 im Ereignisprotokoll „Microsoft-Windows-SMBServer\Audit“ angezeigt, das jeden Client identifiziert, der versucht, eine Verbindung mit SMBv1 herzustellen.
Zusammenfassung
Wenn sich alle Einstellungen im selben GPO befinden, zeigt die Gruppenrichtlinienverwaltung die folgenden Einstellungen an.
Testen und Validieren
Lassen Sie nach Abschluss der Konfigurationsschritte in diesem Artikel die Richtlinie zum Replizieren und Aktualisieren zu. Führen Sie, falls zum Testen erforderlich, gpupdate /force an einer Eingabeaufforderung aus, und überprüfen Sie dann die Zielcomputer, um sicherzustellen, dass die Registrierungseinstellungen ordnungsgemäß angewendet werden. Stellen Sie sicher, dass SMBv2 und SMBv3 für alle anderen Systeme in der Umgebung funktionieren.
Hinweis
Vergessen Sie nicht, die Zielsysteme neu zu starten.