Konfigurieren der SMB-over-QUIC-Client-Zugriffssteuerung
Mit SMB über QUIC-Clientzugriffssteuerung können Sie einschränken, welche Clients über QUIC-Server auf SMB zugreifen können. Mit der Clientzugriffskontrolle können Sie Zulassungslisten und Blocklisten für Geräte erstellen, um eine Verbindung mit dem Dateiserver herzustellen. Die Clientzugriffssteuerung bietet Organisationen mehr Schutz, ohne die Authentifizierung zu ändern, die beim Herstellen der SMB-Verbindung verwendet wird, oder ändert die Endbenutzerumgebung.
Funktionsweise der Clientzugriffssteuerung
Die Clientzugriffskontrolle umfasst die Serverüberprüfung einer Zugriffssteuerungsliste mit Zertifikaten, um festzustellen, ob ein Client eine QUIC-Verbindung mit dem Server herstellen darf. Der Server überprüft die Clientzertifikatkette und stellt sicher, dass sie vertrauenswürdig ist, bevor Sie mit den Zugriffssteuerungsprüfungen fortfahren. Um die Clientzugriffssteuerung zu konfigurieren, stellt ein Administrator dem Client ein Zertifikat aus und kann einer vom Server verwalteten Zugriffssteuerliste einen Hash des Zertifikats hinzufügen.
Wenn der Client eine Verbindung mit dem Server über QUIC herstellen darf, wird ein TLS 1.3-verschlüsselter Tunnel über UDP-Port 443 erstellt. Die Clientzugriffssteuerung unterstützt auch Zertifikate mit alternativen Antragstellernamen. Sie können SMB über QUIC auch so konfigurieren, dass der Zugriff blockiert wird, indem Zertifikate widerrufen oder der Zugriff auf bestimmte Geräte explizit verweigert wird. Ein Serveradministrator kann verhindern, dass ein Client auf den Server zugreift, indem das Clientzertifikat widerrufen wird, anstatt sich ausschließlich auf die Clientzugriffskontrolle zu verlassen.
Hinweis
Wir empfehlen die Verwendung von SMB über QUIC mit Active Directory-Domänen. Dies ist jedoch nicht erforderlich. Sie können SMB über QUIC auch auf einem in Arbeitsgruppen eingebundenen Server mit lokalen Benutzeranmeldeinformationen und NTLM verwenden.
Zulassen-Zugriffssteuerungseinträge können mithilfe der Grant-SmbClientAccessToServer
und Revoke-SmbClientAccessToServer
Cmdlets hinzugefügt und entfernt werden. Verweigern-Zugriffssteuerungseinträge können mithilfe der Block-SmbClientAccessToServer
und Unblock-SmbClientAccessToServer
Cmdlets hinzugefügt und entfernt werden. Die Einträge in der Zugriffssteuerungsliste können mithilfe des Cmdlets Get-SmbClientAccessToServer
angezeigt werden.
Ein Blattzertifikat kann gewährt oder verweigert werden, indem ein Zugriffssteuerungseintrag hinzugefügt wird, der das Zertifikat anhand seines SHA256-Hash identifiziert. Eine Gruppe von Endzertifikaten mit einem gemeinsamen Aussteller kann durch Hinzufügen eines Aussteller-Zugriffssteuerungseintrags für den gemeinsamen Aussteller entweder Zugriff erhalten oder verweigert werden. Ein Aussteller-Eintrag kann für Zwischenzertifizierungsstellenzertifikate und Root-Zertifizierungsstellenzertifikate hinzugefügt werden. Die Verwendung von Ausstellereinträgen kann nützlich sein, da sie die Gesamtanzahl der Einträge verringern, die hinzugefügt werden müssen. Wenn keines der Zertifikate in der Zertifikatskette des Clients der Zugriff verweigert wird und mindestens eines der Zugriff gewährt wird, erhält der Client Zugriff. Zum Beispiel:
Wenn ein Zulassen-Eintrag für ein Zertifizierungsstellenzertifikat hinzugefügt und ein Verweigern-Eintrag für eines der Endzertifikate hinzugefügt wird, erhalten alle von der Zertifizierungsstelle ausgestellten Zertifikate Zugriff, außer das Zertifikat, für das der Verweigern-Eintrag hinzugefügt wurde.
Wenn ein Verweigern-Eintrag für ein Zertifizierungsstellenzertifikat hinzugefügt und ein Zulassen-Eintrag für eines der Endzertifikate hinzugefügt wird, wird allen von der Zertifizierungsstelle ausgestellten Zertifikaten der Zugriff verweigert. Das Zertifikat, für das ein Zulassen-Eintrag hinzugefügt wurde, wird ebenfalls der Zugriff verweigert, da ein Verweigern-Eintrag in der Zertifikatskette Vorrang vor Zulassen-Einträgen hat.
Angenommen, eine Root-Zertifizierungsstelle hat zwei Zwischenzertifizierungsstellen namens Intermediate CA 1 und Intermediate CA 2. Wenn ein Zulassen-Eintrag für die Root-Zertifizierungsstelle hinzugefügt und ein Verweigern-Eintrag für Intermediate CA 2 hinzugefügt wird, erhalten Zertifikate, die von Intermediate CA 1 ausgestellt wurden, Zugriff, und Zertifikate, die von Intermediate CA 2 ausgestellt wurden, wird der Zugriff verweigert.
Voraussetzungen
Bevor Sie die Clientzugriffssteuerung konfigurieren können, benötigen Sie einen SMB-Server mit den folgenden Voraussetzungen.
- Ein SMB-Server mit Windows Server 2022 Datacenter: Azure Edition mit dem Update vom 12. März 2024 – KB5035857 oder Windows Server 2025 oder höher. Um die Vorschaufunktion freizuschalten, müssen Sie auch Windows Server 2022 KB5035857 240302_030531 Feature Preview installieren.
- SMB über QUIC aktiviert und auf dem Server konfiguriert. Informationen zum Konfigurieren von SMB über QUIC finden Sie unter SMB über QUIC.
- Wenn Sie Client-Zertifikate verwenden, die von einer anderen Zertifizierungsstelle (CA) ausgestellt wurden, müssen Sie sicherstellen, dass der Server der CA vertraut.
- Administratorrechte für den SMB-Server, den Sie konfigurieren.
Wichtig
Nachdem KB5035857 installiert wurde, müssen Sie dieses Feature in der Gruppenrichtlinie aktivieren:
- Klicken Sie auf Start, geben Sie gpedit ein, und klicken Sie auf Gruppenrichtlinie bearbeiten.
- Navigieren Sie zu Computer Configuration\Administrative Templates\KB5035857 240302_030531 Feature Preview\Windows Server 2022.
- Öffnen Sie die Richtlinie KB5035857 240302_030531 Featurevorschau, und wählen Sie Aktiviert aus.
Sie benötigen auch einen SMB-Client mit den folgenden Voraussetzungen.
- Einen SMB-Client, der unter einem der folgenden Betriebssysteme ausgeführt wird:
- Windows Server 2022 Datacenter: Azure Edition mit dem Update vom 12. März 2024 – KB5035857. Um die Vorschaufunktion freizuschalten, müssen Sie auch Windows Server 2022 KB5035857 240302_030531 Feature Preview installieren.
- Windows 11 mit dem Update vom 12. März 2024 – KB5035853. Um die Vorschaufunktion freizuschalten, müssen Sie auch Windows 11 (Originalversion) KB5035854 240302_030535 Feature Preview installieren.
- Windows Server 2025 oder höher.
- Windows 11, Version 24H2 oder höher.
- Ein Clientzertifikat mit folgenden Merkmalen:
- Ausgestellt zur Clientauthentifizierung (EKU 1.3.6.1.5.5.7.3.2).
- Ausgestellt von einer vom SMB-Server vertrauenswürdigen Zertifizierungsstelle
- Im Zertifikatspeicher des Clients installiert
- Administratorrechte für den SMB-Server, den Sie konfigurieren.
Wichtig
Nachdem KB5035854 installiert wurde, müssen Sie dieses Feature in der Gruppenrichtlinie aktivieren:
- Klicken Sie auf Start, geben Sie gpedit ein, und klicken Sie auf Gruppenrichtlinie bearbeiten.
- Navigieren Sie zu Computer Configuration\Administrative Templates\KB5035854 240302_030535 Feature Preview\Windows 11 (original release).
- Öffnen Sie die Richtlinie KB5035854 240302_030535 Featurevorschau, und wählen Sie Aktiviert aus.
Konfigurieren des SMB-Servers
Um die Einstellungen für den SMB-Client zu verwalten, müssen Sie zuerst den SMB-Server so konfigurieren, dass der Client eine gültige und vertrauenswürdige Zertifikatkette sendet und die Zugriffssteuerungsprüfungen basierend auf der Clientzertifikatkette durchführt. Führen Sie zum Ausführen dieser Aktion den folgenden Befehl aus:
Set-SmbServerCertificateMapping -RequireClientAuthentication $true
Hinweis
Wenn sowohl RequireClientAuthentication als auch SkipClientCertificateAccessCheck auf $true
festgelegt sind, überprüft der Server die Gültigkeit und Vertrauenswürdigkeit der Clientzertifikatkette, führt jedoch keine Zugriffssteuerungsprüfungen durch.
Konfigurieren des SMB-Clients
Sammeln der SMB-Clientzertifikatinformationen
So sammeln Sie Ihren Clientzertifikathash mithilfe von PowerShell:
Öffnen Sie eine PowerShell-Eingabeaufforderung mit erhöhten Rechten auf dem SMB-Client.
Führen Sie die Zertifikate im Zertifikatspeicher des Clients auf, indem Sie den folgenden Befehl ausführen.
Get-ChildItem -Path Cert:\LocalMachine\My
Führen Sie den folgenden Befehl aus, um das Zertifikat in einer Variablen zu speichern. Ersetzen Sie
<subject name>
durch den Antragstellernamen des Zertifikats, das Sie verwenden möchten.$clientCert = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object {$_.Subject -Match "<subject name>"}
Notieren Sie sich den SHA256-Hash des Clientzertifikats, indem Sie den folgenden Befehl ausführen. Sie benötigen diesen Bezeichner beim Konfigurieren der Clientzugriffssteuerung.
$clientCert.GetCertHashString("SHA256")
Hinweis
Der im $clientCert
Objekt gespeicherte Fingerabdruck verwendet den SHA1-Algorithmus. Dies wird von Befehlen wie New-SmbClientCertificateMapping
verwendet. Außerdem benötigen Sie den SHA256-Fingerabdruck, um die Clientzugriffssteuerung zu konfigurieren. Diese Fingerabdrücke werden mit unterschiedlichen Algorithmen für dasselbe Zertifikat unterschiedlich abgeleitet.
Zuordnen des Clientzertifikats zum SMB-Client
So ordnen Sie das Clientzertifikat dem SMB-Client zu:
Öffnen Sie eine PowerShell-Eingabeaufforderung mit erhöhten Rechten auf dem SMB-Client.
Führen Sie den
New-SmbClientCertificateMapping
-Befehl aus, um das Clientzertifikat zuzuordnen. Ersetzen Sie<namespace>
mit dem vollqualifizierten Domänennamen (FQDN) des SMB-Servers und verwenden Sie den Fingerabdruck des SHA1-Clientzertifikats, den Sie im vorherigen Abschnitt mithilfe der Variablen gesammelt haben.New-SmbClientCertificateMapping -Namespace <namespace> -Thumbprint $clientCert.Thumbprint -StoreName My
Sobald der Vorgang abgeschlossen ist, wird der zertifizierte Client vom SMB-Client zur Authentifizierung beim SMB-Server verwendet, der dem FQDN entspricht.
Testen der Zuordnungsverbindung
Führen Sie einen Verbindungstest durch, indem Sie ein Share für Ihr Server- oder Clientgerät zuordnen. Führen Sie dazu einen der folgenden Befehle aus:
NET USE \\<server DNS name>\<share name> /TRANSPORT:QUIC
Oder
New-SmbMapping -RemotePath \\<server DNS name>\<share name> -TransportType QUIC
Wenn Sie eine Fehlermeldung erhalten, die angibt, dass der Zugriff vom Server verweigert wurde, können Sie mit dem nächsten Schritt fortfahren, da dadurch überprüft wird, ob die Serverzertifikatzuordnung und die Clientzertifikatzuordnung konfiguriert sind.
Konfigurieren der Clientzugriffssteuerung
Zuweisen einzelner Clients
Befolgen Sie die Schritte, um einem bestimmten Client mithilfe der Clientzugriffssteuerung Zugriff auf den SMB-Server zu gewähren.
Melden Sie sich beim SMB-Server an.
Öffnen Sie eine PowerShell-Eingabeaufforderung mit erhöhten Rechten auf dem SMB-Server.
Führen Sie den
Grant-SmbClientAccessToServer
-Befehl aus, um Zugriff auf das Clientzertifikat zu gewähren. Ersetzen Sie<name>
mit dem Hostnamen des SMB-Servers und<hash>
mit dem SHA256-Clientzertifikatbezeichner, den Sie im Abschnitt Sammeln der SMB-Clientzertifikatinformationen gesammelt haben.Grant-SmbClientAccessToServer -Name <name> -IdentifierType SHA256 -Identifier <hash>
Sie haben nun Zugriff auf das Clientzertifikat gewährt. Sie können den Clientzertifikatzugriff überprüfen, indem Sie das Cmdlet Get-SmbClientAccessToServer
ausführen.
Zuweisen bestimmter Zertifizierungsstellen
Befolgen Sie die Schritte, um Clients von einer bestimmten Zertifizierungsstelle, auch Aussteller genannt, mithilfe der Clientzugriffssteuerung zuzuweisen.
Melden Sie sich beim SMB-Server an.
Öffnen Sie eine PowerShell-Eingabeaufforderung mit erhöhten Rechten auf dem SMB-Server.
Führen Sie den
Grant-SmbClientAccessToServer
-Befehl aus, um Zugriff auf das Clientzertifikat zu gewähren. Ersetzen Sie<name>
mit dem Hostnamen des SMB-Servers und<subject name>
mit dem vollständigen X.500 Distinguished-Namen des Ausstellerzertifikats. Beispiel:CN=Contoso CA, DC=Contoso, DC=com
.Grant-SmbClientAccessToServer -Name <name> -IdentifierType ISSUER -Identifier "<subject name>"
Nachdem dieser Schritt abgeschlossen ist, führen Sie das New-SmbMapping
Cmdlet, wie in Testen der Zuordnungsverbindung erwähnt, erneut aus, da ein zweiter Durchlauf empfohlen wird, um zu überprüfen, ob die Client-Zugriffssteuerung korrekt konfiguriert wurde.
Überprüfen der Ereignisprotokolle
Bestimmte Ereignisse, wie etwa Zugriff gewährt und Zugriff verweigert, werden zu Fehlerbehebungszwecken erfasst. Diese Ereignisse enthalten Informationen zu den Clientzertifikaten (mit Ausnahme des Stammzertifikats) wie Betreff, Aussteller, Seriennummer, SHA1 und SHA256-Hash sowie die Zugriffssteuerungseinträge, die für diese Zertifikate gelten. Diese Ereignisse zeigen eine Verbindungs-ID an. Diese ID wird in bestimmten Clientkonnektivitätsereignissen angezeigt, sodass der Administrator den Server problemlos mit dem Client abgleichen kann, der versucht hat, die Verbindung herzustellen.
Die Überwachung dieser Ereignisse ist standardmäßig deaktiviert und kann durch Ausführen des folgenden Befehls aktiviert werden:
Set-SmbServerConfiguration -AuditClientCertificateAccess $true
Nach der Aktivierung werden diese Ereignisse in der Ereignisanzeige in den folgenden Pfaden erfasst:
Pfad | Ereignis-ID |
---|---|
Anwendungs- und Dienstprotokolle\Microsoft\Windows\SMBServer\Audit | 3007 3008 3009 |
Anwendungs- und Dienstprotokolle\Microsoft\Windows\SMBClient\Connectivity | 30831 |