Konfigurieren der Windows-Firewall für den SQL Server-Zugriff
Gilt für: SQL Server - nur Windows
Durch Firewallsysteme kann der nicht autorisierte Zugriff auf Computerressourcen verhindert werden. Wenn eine Firewall aktiviert, aber nicht richtig konfiguriert ist, können Versuche der Verbindungsherstellung mit SQL Server blockiert werden.
Um über eine Firewall auf eine Instanz von SQL Server zugreifen zu können, müssen Sie die Firewall auf dem Computer mit SQL Server. Die Firewall ist eine Komponente von Microsoft Windows. Sie können auch eine Firewall von einem anderen Anbieter installieren. In diesem Artikel wird erläutert, wie die Windows-Firewall konfiguriert wird. Die Grundprinzipien gelten jedoch auch für andere Firewallprogramme.
Hinweis
Dieser Artikel bietet einen Überblick über die Firewallkonfiguration und fasst Informationen zusammen, die für einen SQL Server-Administrator interessant sind. Weitere Informationen zur Firewall sowie autorisierende Informationen für diese finden Sie in der Dokumentation der Firewall, z.B. im Bereitstellungshandbuch für die Windows-Firewallsicherheit.
Benutzer, die mit der Verwaltung der Windows-Firewall vertraut sind und wissen, welche Firewalleinstellungen sie konfigurieren möchten, können direkt zu den Artikeln für fortgeschrittene Benutzer wechseln:
- Konfigurieren Sie Windows-Firewall für Datenbank-Engine-Zugriff
- Konfigurieren der Windows-Firewall, um den Zugriff auf Analysis Services zuzulassen
- Konfigurieren einer Firewall für den Zugriff auf den Berichtsserver
Grundlegende Firewallinformationen
Firewalls überprüfen eingehende Pakete und gleichen diese mit den folgenden Regeln ab:
Wenn das Paket den durch die Regeln vorgeschriebenen Standards entspricht, leitet die Firewall das Paket an das TCP/IP-Protokoll zur weiteren Verarbeitung weiter.
Das Paket erfüllt die von den Regeln festgelegten Standards nicht.
Die Firewall verwirft dann das Paket.
Falls die Protokollierung aktiviert ist, wird ein Eintrag in der Firewallprotokollierungsdatei erstellt.
Die Liste des zugelassenen Datenverkehrs wird auf eine der folgenden Arten aufgefüllt:
Automatisch: Wenn ein Computer mit einer aktivierten Firewall die Kommunikation startet, erstellt die Firewall einen Eintrag in der Liste, sodass die Antwort zugelassen wird. Die Antwort gilt als angeforderter Datenverkehr, und Sie müssen keinerlei Konfiguration vornehmen.
Manuell: Ein Administrator konfiguriert Ausnahmen für die Firewall. Dadurch kann auf bestimmte Programme oder Ports auf Ihrem Computer zugegriffen werden. In diesem Fall akzeptiert der Computer den unangefordert eingehenden Datenverkehr, wenn er als Server, Listener oder Peer fungiert. Für eine Verbindung mit SQL Server muss die Konfiguration abgeschlossen sein.
Das Festlegen einer Firewallstrategie ist komplexer als die bloße Entscheidung, ob ein bestimmter Port geöffnet oder geschlossen werden sollte. Beim Entwickeln einer Firewallstrategie für Ihr Unternehmen sollten Sie unbedingt alle Regeln und Konfigurationsoptionen berücksichtigen, die Ihnen zur Verfügung stehen. In diesem Artikel werden nicht alle möglichen Firewalloptionen behandelt. Es wird empfohlen, die folgenden Dokumente zu berücksichtigen:
- Bereitstellungshandbuch für die Windows-Firewall
- Entwurfshandbuch für die Windows-Firewall
- Introduction to Server and Domain Isolation
Standardeinstellungen der Firewall
Der erste Schritt bei der Planung der Firewallkonfiguration ist die Bestimmung des aktuellen Status der Firewall Ihres Betriebssystems. Wenn das Betriebssystem aus einer vorherigen Version aktualisiert wurde, wurden die früheren Firewall-Einstellungen möglicherweise beibehalten. Die Firewalleinstellungen in der Domäne können durch die Gruppenrichtlinie oder den Administrator geändert werden.
Hinweis
Das Einschalten der Firewall wirkt sich auf andere Programme aus, die auf diesen Computer zugreifen, wie z. B. die Datei- und Druckerfreigabe und Remotedesktopverbindungen. Administratoren sollten vor dem Anpassen der Firewalleinstellungen alle auf dem Computer ausgeführten Anwendungen berücksichtigen.
Programme zur Konfiguration der Firewall
Konfigurieren Sie die Einstellungen der Windows-Firewall über Microsoft Management Console, PowerShell oder netsh.
Microsoft Management Console (MMC)
Mithilfe des MMC-Snap-Ins „Windows-Firewall mit erweiterter Sicherheit“ können Sie erweiterte Firewalleinstellungen konfigurieren. Dieses Snap-In stellt die meisten Firewalloptionen in einer benutzerfreundlichen Form sowie alle Firewallprofile bereit. Weitere Informationen finden Sie unter Verwenden des Snap-Ins „Windows-Firewall mit erweiterter Sicherheit“ weiter unten in diesem Artikel.
PowerShell
Im folgenden Beispiel wird gezeigt, wie der TCP-Port 1433 sowie der UDP-Port 1434 für die SQL Server-Standardinstanz sowie den SQL Server-Browserdienst geöffnet wird:
New-NetFirewallRule -DisplayName "SQLServer default instance" -Direction Inbound -LocalPort 1433 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "SQLServer Browser service" -Direction Inbound -LocalPort 1434 -Protocol UDP -Action Allow
Weitere Beispiele finden Sie unter New-NetFirewallRule.
Befehlszeile mit netsh
Das Tool netsh.exe kann von einem bzw. einer Administrator*in verwendet werden, um Windows-basierte Computer an der Eingabeaufforderung oder mittels einer Batchdatei zu konfigurieren und zu überwachen. Mit dem netsh-Tool können Sie die Kontextbefehle leiten, die Sie für das entsprechende Hilfsprogramm eingeben, und das Hilfsprogramm führt dann den Befehl aus. Bei einem Hilfsprogramm handelt es sich um eine .dll
-Datei (Dynamic Link Library), die die Funktionalität erweitert. Das Hilfsprogramm stellt Folgendes bereit: Konfiguration, Überwachung und Unterstützung für einen oder mehrere Dienste, Hilfsprogramme oder Protokolle für das netsh-Tool.
Sie können die Windows-Firewall für das Advanced Security-Hilfsprogramm verwenden, die als Advfirewall bezeichnet wird. Viele der beschriebenen Konfigurationsoptionen können von der Befehlszeile mithilfe von netsh advfirewall
konfiguriert werden. Führen Sie beispielsweise über eine Eingabeaufforderung das folgende Skript aus, um TCP-Port 1433 zu öffnen:
netsh advfirewall firewall add rule name = SQLPort dir = in protocol = tcp action = allow localport = 1433 remoteip = localsubnet profile = DOMAIN
Weitere Informationen zu netsh finden Sie unter den folgenden Links:
- Syntax, Kontexte und Formatierung des Befehls „netsh“
- Verwenden Sie die Netsh Advfirewall-Firewall anstelle der Netsh-Firewall, um das Verhalten der Windows-Firewall zu steuern
Für Linux
Unter Linux müssen Sie auch die Ports öffnen, die mit den Diensten verknüpft sind, auf die Sie zugreifen müssen. Für verschiedene Distributionen von Linux und unterschiedliche Firewalls gibt es jeweils eigene Vorgehensweisen. Für zwei Beispiele siehe:
- Schnellstart: Installieren von SQL Server und Erstellen einer Datenbank unter Red Hat
- Schnellstart: Installieren von SQL Server und Erstellen einer Datenbank unter SUSE Linux Enterprise Server
Von SQL Server verwendete Ports
Die folgenden Tabellen können Sie dabei unterstützen, die von SQL Server verwendeten Ports zu identifizieren.
Von der Datenbank-Engine verwendete Ports
Standardmäßig werden von SQL Server verwendete Ports und verknüpften Datenbank-Engine-Diensten die folgenden Ports verwendet: TCP 1433
, 4022
, 135
, 1434
und UDP 1434
. In der folgenden Tabelle werden diese Ports ausführlicher beschrieben. Eine benannte Instanz verwendet dynamische Ports.
In der folgenden Tabelle werden die häufig von Datenbank-Engine verwendeten Ports aufgeführt.
Szenario | Port | Kommentare |
---|---|---|
Standardinstanz, die über TCP ausgeführt wird | TCP-Port 1433 | Dies ist der häufigste durch die Firewall zulässige Port. Er gilt für Routineverbindungen mit der Standardinstallation von Datenbank-Engine oder einer benannten Instanz, bei der es sich um die einzige auf dem Computer ausgeführte Instanz handelt. (Für benannte Instanzen gelten besondere Bedingungen. Weitere Informationen finden Sie unter Dynamische Ports weiter unten in diesem Artikel.) |
Benannte Instanzen mit Standardport | Der TCP-Port ist ein dynamischer Port, der zu dem Zeitpunkt bestimmt wird, zu dem die Datenbank-Engine startet. | Weitere Informationen finden Sie im Folgenden in den Ausführungen im Abschnitt Dynamische Ports. Wenn Sie benannte Instanzen verwenden, ist möglicherweise UDP-Port 1434 für den SQL Server-Browserdienst erforderlich. |
Benannte Instanzen mit festem Port | Die vom Administrator konfigurierte Portnummer. | Weitere Informationen finden Sie im Folgenden in den Ausführungen im Abschnitt Dynamische Ports. |
Dedizierte Administratorverbindung | TCP-Port 1434 für die Standardinstanz. Andere Ports werden für benannte Instanzen verwendet. Überprüfen Sie das Fehlerprotokoll auf die Portnummer. | Remoteverbindungen über die dedizierte Administratorverbindung (Dedicated Administrator Connection, DAC) sind standardmäßig nicht aktiviert. Zum Aktivieren der Remote-DAC verwenden Sie das Facet für die Oberflächenkonfiguration. Weitere Informationen finden Sie unter Oberflächenkonfiguration. |
SQL Server Browserdienst | UDP-Port 1434 | Der SQL Server-Browserdienst lauscht auf eingehende Verbindungen mit einer benannten Instanz. Der Dienst stellt für den Client die TCP-Portnummer bereit, die dieser benannten Instanz entspricht. Normalerweise wird der SQL Server -Browserdienst immer dann gestartet, wenn benannte Instanzen von Datenbank-Engine verwendet werden. Der SQL Server-Browserdienst muss nicht verwendet werden, wenn der Client so konfiguriert ist, dass er eine Verbindung mit dem speziellen Port der benannten Instanz herstellt. |
Instanz mit HTTP-Endpunkt | Kann angegeben werden, wenn ein HTTP-Endpunkt erstellt wird. Als Standard wird TCP-Port 80 für den CLEAR_PORT -Datenverkehr und 443 für den SSL_PORT -Datenverkehr verwendet. |
Wird für eine HTTP-Verbindung über eine URL verwendet |
Standardinstanz mit HTTP-Endpunkt | TCP-Port 443 | Wird für eine HTTPS-Verbindung über eine URL verwendet. HTTPS ist eine HTTP-Verbindung, die Transport Layer Security (TLS) verwendet, früher als Secure Sockets Layer (SSL) bezeichnet. |
Service Broker | TCP-Port 4022. Führen Sie die folgende Abfrage aus, um den verwendeten Port zu überprüfen:SELECT name, protocol_desc, port, state_desc FROM sys.tcp_endpoints WHERE type_desc = 'SERVICE_BROKER' |
Für SQL Server Service Broker ist kein Standardport festgelegt. In den Beispielen der Onlinedokumentation wird die konventionelle Konfiguration verwendet. |
Datenbankspiegelung | Vom Administrator ausgewählter Port. Führen Sie die folgende Abfrage aus, um den Port zu bestimmen:SELECT name, protocol_desc, port, state_desc FROM sys.tcp_endpoints WHERE type_desc = 'DATABASE_MIRRORING' |
Für die Datenbankspiegelung ist kein Standardport festgelegt, in Beispielen der Onlinedokumentation wird jedoch TCP-Port 5022 oder 7022 verwendet. Es ist wichtig, eine Unterbrechung eines bereits verwendeten Spiegelungsendpunkts zu vermeiden, insbesondere im Modus für hohe Sicherheit mit automatischem Failover. Die Firewallkonfiguration muss eine Unterbrechung des Quorums vermeiden. Weitere Informationen finden Sie unter Angeben einer Servernetzwerkadresse (Datenbankspiegelung). |
Replikation | Für Replikationsverbindungen mit SQL Server werden die typischen regulären Datenbank-Engine-Ports verwendet (TCP-Port 1433 ist die Standardinstanz). Die Websynchronisierung und der FTP-/UNC-Zugriff für die Replikationsmomentaufnahme erfordern das Öffnen weiterer Ports auf der Firewall. Zur Übertragung der Anfangsdaten und des Schemas zwischen unterschiedlichen Standorten kann für die Replikation FTP (TCP-Port 21), die Synchronisierung über HTTP (TCP-Port 80) oder die Dateifreigabe verwendet werden. Die Dateifreigabe verwendet die UDP-Ports 137 und 138 sowie den TCP-Port 139 bei gemeinsamer Verwendung mit NetBIOS. Für die Dateifreigabe wird der TCP-Port 445 verwendet. |
Bei der Synchronisierung über HTTP wird für die Replikation der IIS-Endpunkt (konfigurierbar, Standard ist Port 80) verwendet, der IIS-Prozess stellt jedoch eine Verbindung mit der Back-End-SQL Server-Instanz über die Standardports (1433 für die Standardinstanz) her. Bei der Websynchronisierung mittels FTP findet die FTP-Übertragung zwischen IIS und dem SQL Server -Verleger und nicht zwischen Abonnent und IIS statt. |
Transact-SQL-Debugger | TCP-Port 135 Siehe Spezielle Überlegungen zu Port 135 Die IPsec -Ausnahme ist möglicherweise auch erforderlich. |
Bei Verwendung von Visual Studio müssen Sie außerdem auf dem Visual Studio -Hostcomputer devenv.exe zur Ausnahmeliste hinzufügen und den TCP-Port 135 öffnen.Bei Verwendung von Management Studiomüssen Sie außerdem auf dem Management Studio-Hostcomputer ssms.exe zur Ausnahmeliste hinzufügen und TCP-Port 135 öffnen. Weitere Informationen finden Sie unter Konfigurieren von Firewallregeln vor dem Ausführen des Transact-SQL-Debuggers. |
Eine detaillierte Anleitung zum Konfigurieren der Windows-Firewall für die Datenbank-Engine finden Sie unter Konfigurieren Sie eine Windows-Firewall für Datenbank-Engine-Zugriff.
Dynamische Ports
Standardmäßig verwenden benannte Instanzen (einschließlich SQL Server Express) dynamische Ports. Bei jedem Start der Datenbank-Engine wird daher ein verfügbarer Port ermittelt und diese Portnummer verwendet. Wenn es sich bei der benannten Instanz um die einzige von Datenbank-Engine installierte Instanz handelt, verwendet wahrscheinlich TCP-Port 1433. Wenn weitere Instanzen von Datenbank-Engine installiert sind, verwendet wahrscheinlich ein anderer TCP-Port. Da sich der ausgewählte Port bei jedem Start der Datenbank-Engine ändern kann, ist es schwierig, die Firewall so zu konfigurieren, dass der Zugriff auf die richtige Portnummer ermöglicht wird. Bei Verwendung einer Firewall wird eine Neukonfiguration der Datenbank-Engine empfohlen, damit jedes Mal dieselbe Portnummer verwendet wird. Es wird ein fester oder statischer Port empfohlen. Weitere Informationen finden Sie unter Konfigurieren eines Servers zur Überwachung eines bestimmten TCP-Ports.
Eine Alternative zum Konfigurieren einer benannten Instanz für das Lauschen auf einem festen Port ist die Erstellung einer Ausnahme für ein SQL Server-Programm wie z.B. sqlservr.exe
(für Datenbank-Engine) in der Firewall. Die Portnummer wird nicht in der Spalte Lokaler Port auf der Seite Regeln für eingehenden Datenverkehr angezeigt, wenn Sie das MMC-Snap-In „Windows-Firewall mit erweiterter Sicherheit“ verwenden. Es kann sich als schwierig erweisen, zu überwachen, welche Ports offen sind. Ein weiterer Aspekt ist, dass ein Service Pack oder kumulatives Update den Pfad zur ausführbaren SQL Server-Datei ändern kann, wodurch die Firewallregel ungültig wird.
Informationen zum Hinzufügen einer Ausnahme für SQL Server mithilfe der Windows-Firewall mit erweiterter Sicherheit finden Sie weiter unten in diesem Artikel unter Verwenden des Snap-Ins „Windows-Firewall mit erweiterter Sicherheit“.
Von Analysis Services verwendete Ports
Standardmäßig werden von SQL Server Analysis Services verwendete Ports und verknüpften Diensten die folgenden Ports verwendet: TCP 2382
, 2383
, 80
und 443
. In der folgenden Tabelle werden diese Ports ausführlicher beschrieben.
In der folgenden Tabelle werden die häufig von Analysis Services verwendeten Ports aufgeführt.
Funktion | Port | Kommentare |
---|---|---|
Analysis Services | TCP-Port 2383 für die Standardinstanz | Der Standardport für die Standardinstanz von Analysis Services. |
SQL Server Browserdienst | TCP-Port 2382, nur für eine benannte Instanz von Analysis Services notwendig | Clientverbindungsanforderungen für eine benannte Instanz von Analysis Services, in denen keine Portnummer angegeben ist, werden an Port 2382 weitergeleitet. Dies ist der Port, auf dem der SQL Server-Browser lauscht. SQL Server -Browser leitet dann die Anforderung an den Port um, der von der benannten Instanz verwendet wird. |
Analysis Services zur Verwendung durch IIS/HTTP konfiguriert (Der PivotTable®-Dienst verwendet HTTP oder HTTPS.) |
TCP-Port 80 | Wird für eine HTTP-Verbindung über eine URL verwendet |
Analysis Services zur Verwendung durch IIS/HTTPS konfiguriert (Der PivotTable®-Dienst verwendet HTTP oder HTTPS.) |
TCP-Port 443 | Wird für eine HTTPS-Verbindung über eine URL verwendet. HTTPS ist eine HTTP-Verbindung, die TLS verwendet. |
Wenn Benutzer über IIS und das Internet auf Analysis Services zugreifen, müssen Sie den Port öffnen, auf dem IIS lauscht. Geben Sie als Nächstes den Port in der Client-Verbindungszeichenfolge an. In diesem Fall müssen keine Ports für den direkten Zugriff auf Analysis Services geöffnet sein. Der Standardport 2389 und Port 2382 sollten gemeinsam mit allen anderen Ports eingeschränkt werden, die nicht benötigt werden.
Eine detaillierte Anleitung zum Konfigurieren der Windows-Firewall für Analysis Services finden Sie unter Konfigurieren der Windows-Firewall, um den Zugriff auf Analysis Services zuzulassen.
Von Reporting Services verwendete Ports
Die von SQL Server Reporting Services und verknüpften Diensten verwendeten Standardports sind folgende: TCP 80
und 443
. In der folgenden Tabelle werden diese Ports ausführlicher beschrieben.
In der folgenden Tabelle werden die häufig von Reporting Services verwendeten Ports aufgeführt.
Funktion | Port | Kommentare |
---|---|---|
Reporting Services -Webdienste | TCP-Port 80 | Wird für eine HTTP-Verbindung mit Reporting Services über eine URL verwendet. Die Verwendung der vorkonfigurierten Regel WWW-Dienste (HTTP) wird nicht empfohlen. Weitere Informationen finden Sie im Abschnitt Interaktion mit anderen Firewall-Regeln im folgenden in diesem Artikel. |
Reporting Services zur Verwendung durch HTTPS konfiguriert | TCP-Port 443 | Wird für eine HTTPS-Verbindung über eine URL verwendet. HTTPS ist eine HTTP-Verbindung, die TLS verwendet. Die Verwendung der vorkonfigurierten Regel Sichere WWW-Dienste (HTTPS) wird nicht empfohlen. Weitere Informationen finden Sie im Abschnitt Interaktion mit anderen Firewall-Regeln im folgenden in diesem Artikel. |
Wenn Reporting Services eine Verbindung mit einer Instanz von Datenbank-Engine oder Analysis Services herstellt, müssen Sie auch die entsprechenden Ports für diese Dienste öffnen. Eine Schritt-für-Schritt-Anleitung zum Konfigurieren der Windows-Firewall für Reporting Services finden Sie unter Konfigurieren einer Firewall für den Zugriff auf den Berichtsserver.
Von Integration Services verwendete Ports
In der folgenden Tabelle werden die vom Integration Services-Dienst verwendeten Ports aufgeführt.
Funktion | Port | Kommentare |
---|---|---|
Microsoft -Remoteprozeduraufrufe (MS RPC) Wird von der Integration Services -Laufzeit verwendet. |
TCP-Port 135 Siehe Spezielle Überlegungen zu Port 135 |
Der Integration Services -Dienst verwendet DCOM auf Port 135. Der Dienststeuerungs-Manager verwendet Port 135, um Tasks wie z. B. das Starten und Beenden des Integration Services-Diensts und das Übertragen von Steuerungsanforderungen an den laufenden Dienst auszuführen. Die Portnummer kann nicht geändert werden. Dieser Port muss nur dann geöffnet sein, wenn Sie eine Verbindung mit einer Remoteinstanz des Integration Services-Diensts von Management Studio oder einer benutzerdefinierten Anwendung aus herstellen. |
Eine schrittweise Anleitung zum Konfigurieren der Windows-Firewall für Integration Services finden Sie unter Integration Services-Dienst (SSIS-Dienst).
Andere Ports und Dienste
Die folgende Tabelle enthält Ports und Dienste, von denen SQL Server abhängig sein kann.
Szenario | Port | Kommentare |
---|---|---|
Windows-Verwaltungsinstrumentation Weitere Informationen zur Windows-Verwaltungsinstrumentation (WMI) finden Sie unter WMI-Anbieter für die Konfigurationsverwaltung |
WMI wird als Teil eines Hosts für gemeinsame Dienste ausgeführt, wobei Ports über DCOM zugewiesen werden. WMI verwendet möglicherweise den TCP-Port 135. Siehe Spezielle Überlegungen zu Port 135 |
SQL Server -Konfigurations-Manager verwendet WMI zum Auflisten und Verwalten von Diensten. Es wird empfohlen, die vorkonfigurierte Regelgruppe Windows-Verwaltungsinstrumentation (WMI) zu verwenden. Weitere Informationen finden Sie im Abschnitt Interaktion mit anderen Firewall-Regeln im folgenden in diesem Artikel. |
Microsoft Distributed Transaction Coordinator (MS DTC) | TCP-Port 135 Siehe Spezielle Überlegungen zu Port 135 |
Wenn Ihre Anwendung verteilte Transaktionen verwendet, müssen Sie die Firewall möglicherweise so konfigurieren, dass MS DTC-Datenverkehr ( Microsoft Distributed Transaction Coordinator) zwischen separaten MS DTC-Instanzen sowie zwischen MS DTC und Ressourcen-Managern wie SQL Server übermittelt werden kann. Es wird empfohlen, die vorkonfigurierte Regelgruppe Distributed Transaction Coordinator zu verwenden. Bei Konfiguration eines einzelnen freigegebenen MS-DTCs für den gesamten Cluster in einer separaten Ressourcengruppe sollten Sie „sqlservr.exe“ der Firewall als Ausnahme hinzufügen. |
Die Schaltfläche zum Durchsuchen in Management Studio verwendet UDP, um eine Verbindung mit dem SQL Server -Browserdienst herzustellen. Weitere Informationen finden Sie unter SQL Server-Browserdienst (Datenbank-Engine und SSAS). | UDP-Port 1434 | UDP ist ein verbindungsloses Protokoll. Die Firewall verfügt über eine Einstellung (Eigenschaft „UnicastResponsesToMulticastBroadcastDisabled“ der INetFwProfile-Schnittstelle), die das Verhalten der Firewall und von Unicastantworten auf eine Broadcast- (oder Multicast-)UDP-Anforderung steuert. Es sind zwei Verhaltensweisen möglich: Wenn die Einstellung TRUE ist, werden überhaupt keine Unicast-Antworten auf einen Broadcast zugelassen. Das Auflisten der Dienste schlägt fehl.Wenn die Einstellung FALSE (Standard) ist, werden Unicastantworten 3 Sekunden lang zugelassen. Die Zeitdauer ist nicht konfigurierbar. In einem überlasteten Netzwerk oder einem Netzwerk mit häufiger Latenz oder bei stark ausgelasteten Servern wird bei den Versuchen, Instanzen von SQL Server aufzulisten, möglicherweise eine Teilliste zurückgegeben, die die Benutzer irreführen kann. |
IPsec-Datenverkehr | UDP-Port 500 und UDP-Port 4500 | Wenn die Domänenrichtlinie eine Netzwerkkommunikation über IPSec erfordert, müssen Sie auch den UDP-Port 4500 und den UDP-Port 500 der Ausnahmeliste hinzufügen. IPsec ist eine Option, die den Assistenten für neue eingehende Regel im Windows-Firewall-Snap-In verwendet. Weitere Informationen finden Sie unter Verwenden des Snap-Ins „Windows-Firewall mit erweiterter Sicherheit“ weiter unten in diesem Artikel. |
Verwenden der Windows-Authentifizierung mit vertrauenswürdigen Domänen | Firewalls müssen konfiguriert werden, um Authentifizierungsanforderungen zuzulassen. | Weitere Informationen finden Sie unter Konfigurieren einer Firewall für Active Directory-Domänen und Vertrauensstellungen. |
SQL Server und Windows-Clusterunterstützung | Für das Clustering werden zusätzliche Ports benötigt, die nicht im direkten Zusammenhang mit SQL Server stehen. | Weitere Informationen finden Sie unter Enable a network for cluster use. |
In der HTTP-Server-API (HTTP.SYS) reservierte URL-Namespaces | Wahrscheinlich TCP-Port 80, kann jedoch für andere Ports konfiguriert werden. Allgemeine Informationen finden Sie unter Konfigurieren von HTTP und HTTPS. | Spezifische Informationen für SQL Server zum Reservieren eines HTTP.SYS-Endpunkts mittels „HttpCfg.exe“ finden Sie unter Informationen zu URL-Reservierungen und -Registrierungen (Berichtsserver-Configuration Manager). |
Spezielle Überlegungen zu Port 135
Wenn Sie RPC mit TCP/IP oder mit UDP/IP als Transport verwenden, werden eingehende Ports den Systemdiensten nach Bedarf dynamisch zugewiesen. Es werden TCP/IP- und UDP/IP-Ports verwendet, die größer als Port 1024 sind. Die Ports werden als zufällige RPC-Ports bezeichnet. In solchen Fällen sind die RPC-Clients auf die Information der RPC-Endpunktzuordnung angewiesen, welche dynamischen Ports dem Server zugeordnet wurden. Für einige RPC-basierte Dienste können Sie einen bestimmten Port konfigurieren, statt RPC einen Port dynamisch zuweisen zu lassen. Außerdem können Sie den Bereich der Ports, die von RPC dynamisch zugewiesen werden, unabhängig vom Dienst verkleinern. Da Port 135 für zahlreiche Dienste verwendet wird, ist dieser häufig das Ziel von Angriffen böswilliger Benutzer. Wenn Sie Port 135 öffnen, erwägen Sie, den Gültigkeitsbereich der Firewallregel einzuschränken.
Weitere Informationen zu Port 135 finden Sie in den folgenden Ressourcen:
- Dienstübersicht und Netzwerkportanforderungen für Windows
- Remoteprozeduraufruf (RPC)
- Konfigurieren der dynamischen RPC-Portzuweisung für Firewall-Einsatz
Interaktion mit anderen Firewallregeln
Die Windows-Firewall verwendet Regeln und Regelgruppen, um ihre Konfiguration festzulegen. Jede Regel oder Regelgruppe ist mit einem bestimmten Programm oder Dienst verknüpft. Dieses Programm oder dieser Dienst kann diese Regel ohne Ihr Wissen ändern oder löschen. Beispielsweise sind die Regelgruppen WWW-Dienste (HTTP) und Sichere WWW-Dienste (HTTPS) mit IIS verknüpft. Die Aktivierung dieser Regeln öffnet die Ports 80 und 443, und die SQL Server -Funktionen, die auf den Ports 80 und 443 beruhen, werden ausgeführt, wenn diese Regeln aktiviert sind. Administratoren, die IIS konfigurieren, können diese Regeln jedoch ändern oder deaktivieren. Deshalb sollten Sie, wenn Sie Port 80 oder Port 443 für SQL Server verwenden, Ihre eigene Regel oder Regelgruppe erstellen, die Ihre bevorzugte Portkonfiguration unabhängig von den anderen IIS-Regeln beibehält.
Das MMC-Snap-In Windows-Firewall mit erweiterter Sicherheit erlaubt jeden Datenverkehr, der mit einer entsprechenden Zulassungsregel übereinstimmt. Wenn also zwei Regeln vorhanden sind, die beide für Port 80 gelten (mit unterschiedlichen Parametern), Datenverkehr, der mit einer der Regeln übereinstimmt, wird der zugelassen. Wenn eine Regel den Datenverkehr über Port 80 von einem lokalen Subnetz und eine Regel den Datenverkehr von einer beliebigen Adresse aus erlaubt, wird über Port 80 letztendlich der gesamte Datenverkehr unabhängig von der Quelle zugelassen. Um den Zugriff auf SQL Servereffektiv zu verwalten, sollten Administratoren alle auf dem Server aktivierten Firewallregeln in regelmäßigen Abständen überprüfen.
Übersicht über Firewallprofile
Mithilfe von Firewallprofilen identifizieren und merken sich die Betriebssysteme alle Netzwerke in Bezug auf die Konnektivität, Verbindungen und Kategorie.
In Windows-Firewall mit erweiterter Sicherheit gibt es drei Netzwerkstandorttypen:
Domäne: Windows kann den Zugriff auf den Domänencontroller für die Domäne des Netzwerks, mit dem der Computer verbunden ist, authentifizieren.
Öffentlich: Alle neu erkannten Netzwerke, außer Domänennetzwerke, werden zunächst als öffentlich kategorisiert. Netzwerke, die direkte Verbindungen zum Internet darstellen oder sich an öffentlichen Orten wie z. B. auf Flughäfen und in Cafés befinden, sollten auch öffentlich bleiben.
Privat: Ein Netzwerk, das von einem Benutzer oder einer Anwendung als privat gekennzeichnet wird. Es sollten nur vertrauenswürdige Netzwerke als private Netzwerke gekennzeichnet werden. Benutzer können Heim- oder kleine Firmennetzwerke als privat kennzeichnen.
Der Administrator kann für jeden Netzwerkstandorttyp ein Profil erstellen. Dabei kann jedes Profil unterschiedliche Firewallrichtlinien enthalten. Es wird immer nur ein Profil angewendet. Die Profilreihenfolge wird wie folgt angewendet:
Wenn alle Schnittstellen gegenüber dem Domänencontroller für die Domäne authentifiziert werden, deren Mitglied der Computer ist, wird das Domänenprofil angewendet.
Wenn alle Schnittstellen entweder gegenüber dem Domänencontroller authentifiziert oder mit Netzwerken, die als private Netzwerkstandorte klassifiziert sind, verbunden werden, wird das private Profil angewendet.
Andernfalls wird das öffentliche Profil angewendet.
Verwenden Sie das MMC-Snap-In „Windows-Firewall mit erweiterter Sicherheit“, um alle Firewallprofile anzuzeigen und zu konfigurieren. Mithilfe des Elements Windows-Firewall in der Systemsteuerung kann nur das aktuelle Profil konfiguriert werden.
Zusätzliche Firewalleinstellungen mithilfe des Eintrags „Windows-Firewall“ in der Systemsteuerung
Die hinzugefügte Firewall kann das Öffnen des Ports für eingehende Verbindungen von bestimmten Computern oder einem bestimmten lokalen Subnetz einschränken. Begrenzen Sie den Bereich der Portöffnung, damit Ihr Computer böswilligen Benutzern weniger ausgesetzt ist.
Mithilfe des Elements Windows-Firewall in der Systemsteuerung wird nur das aktuelle Firewallprofil konfiguriert.
So ändern Sie den Bereich einer Firewallausnahme mithilfe des Elements „Windows-Firewall“ in der Systemsteuerung
Wählen Sie unter dem Element Windows-Firewall in der Systemsteuerung auf der Registerkarte Ausnahmen ein Programm oder einen Port aus, und wählen Sie dann Eigenschaften oder Bearbeiten aus.
Wählen Sie im Dialogfeld Programm bearbeiten oder Port bearbeiten die Option Bereich ändern aus.
Wählen Sie eine der folgenden Optionen aus:
Alle Computer (einschließlich der im Internet): Diese Option wird nicht empfohlen. Durch diese Option wird jedem Computer, der mit Ihrem Computer Kontakt aufnehmen kann, ermöglicht, eine Verbindung mit einem bestimmten Programm oder Port herzustellen. Diese Einstellung kann notwendig sein, um die Anzeige von Informationen für anonyme Benutzer im Internet zuzulassen, erhöht aber die Gefahr, die von böswilligen Benutzern ausgeht. Das Aktivieren dieser Einstellung ermöglicht Netzwerkadressenübersetzung-Traversal (NAT), wie z. B. die Edgeausnahme-Option die Exposition erhöht.
Nur für eigenes Netzwerk (Subnetz): Diese Einstellung ist sicherer als die Einstellung Alle Computer. Nur Computer im lokalen Subnetz Ihres Netzwerks können eine Verbindung mit dem Programm oder Port herstellen.
Benutzerdefinierte Liste: Nur Computer, deren IP-Adressen aufgelistet sind, können eine Verbindung herstellen. Eine sichere Einstellung kann sicherer sein als die Einstellung Nur eigenes Netzwerk (Subnetz). Jedoch können Clientcomputer, die DHCP verwenden, gelegentlich ihre IP-Adresse ändern, infolgedessen keine Verbindung mehr hergestellt werden kann. Ein anderer Computer, den Sie nicht autorisieren wollten, könnte die aufgeführte IP-Adresse akzeptieren und eine Verbindung damit herstellen. Die benutzerdefinierte Liste eignet sich zum Auflisten anderer Server, die für die Verwendung einer festen IP-Adresse konfiguriert sind.
Eindringlinge können IP-Adressen spoofen. Restriktive Firewallregeln sind nur so stark wie Ihre Netzwerkinfrastruktur.
Verwenden des Snap-Ins „Windows-Firewall mit erweiterter Sicherheit“
Mithilfe des MMC-Snap-Ins „Windows-Firewall mit erweiterter Sicherheit“ können erweiterte Firewalleinstellungen konfiguriert werden. Das Snap-In enthält einen Regel-Assistenten und Einstellungen, die unter Windows-Firewall in der Systemsteuerung nicht verfügbar sind. Zu diesen Einstellungen zählen:
- Verschlüsselungseinstellungen
- Einschränkungen für Dienste
- Einschränken von Verbindungen für Computer nach Name
- Einschränken von Verbindungen für bestimmte Benutzer oder Profile
- Randüberquerung, die dem Datenverkehr die Umgehung von NAT-Routern (Network Address Translation) erlaubt
- Konfigurieren von ausgehenden Regeln
- Konfigurieren von Sicherheitsregeln
- Erfordern von IPsec für eingehende Verbindungen
Erstellen einer neuen Firewallregel mit dem Assistenten für neue Regeln
- Klicken Sie im Startmenü auf Ausführen, geben Sie
wf.msc
ein, und klicken Sie anschließend auf OK. - Klicken Sie im linken Bereich von Windows-Firewall mit erweiterter Sicherheit mit der rechten Maustaste auf Eingehende Regeln, und wählen Sie dann Neue Regel aus.
- Schließen Sie den Assistenten für neue eingehende Regel mit den gewünschten Einstellungen ab.
Hinzufügen einer Programmausnahme für die ausführbare SQL Server-Datei
Im Menü Start geben Sie
wf.msc
ein. Drücken Sie die EINGABETASTE, oder klicken Sie auf das Suchergebnis „wf.msc
“, um Windows Defender Firewall mit erweiterter Sicherheit zu öffnen.Wählen Sie im linken Bereich Eingehende Regeln aus.
Klicken Sie im rechten Bereich unter Aktionen auf Neue Regel... . Daraufhin wird der Assistent für neue eingehende Regel geöffnet.
Wählen Sie unter Regeltyp die Option Programm aus. Wählen Sie Weiter aus.
Wählen Sie unter Programm die Option Dieser Programmpfad aus. Klicken Sie auf Durchsuchen, um Ihre SQL Server-Instanz zu lokalisieren. Das Programm heißt
sqlservr.exe
. Es befindet sich normalerweise unterC:\Program Files\Microsoft SQL Server\MSSQL<VersionNumber>.<InstanceName>\MSSQL\Binn\sqlservr.exe
. Wählen Sie Weiter aus.Klicken Sie auf der Seite Aktion auf Verbindung zulassen. Wählen Sie Weiter aus.
Geben Sie auf der Seite Profil alle drei Profile an. Wählen Sie Weiter aus.
Geben Sie in Name einen Namen für die Regel ein. Wählen Sie Fertig stellen aus.
Weitere Informationen zu Endpunkten finden Sie in folgenden Artikeln:
Problembehandlung bei Firewalleinstellungen
Die folgenden Tools und Techniken können bei der Behandlung von Problemen mit der Firewall nützlich sein:
Der effektive Portstatus ist die Gesamtheit aller Regeln, die den Port betreffen. Beim Versuch, den Zugriff über einen Port zu blockieren, kann es hilfreich sein, alle Regeln zu überprüfen, die die Portnummer nennen. Überprüfen Sie die Regeln mithilfe des MMC-Snap-In „Windows-Firewall mit erweiterter Sicherheit“, und sortieren Sie die Regeln zum ein- und ausgehenden Datenverkehr nach Portnummer.
Überprüfen Sie die Ports, die auf dem Computer aktiv sind, auf dem SQL Server ausgeführt wird. Zudem muss überprüft werden, welche TCP/IP-Ports überwacht werden und welchen Status diese Ports aufweisen.
Mit dem PortQry-Hilfsprogramm kann der Status der TCP/IP-Ports als überwacht, nicht überwacht oder gefiltert gemeldet werden. (Das Hilfsprogramm erhält möglicherweise keine Antwort vom Port, wenn dieser den Status „Gefiltert“ aufweist.) Das Hilfsprogramm PortQry steht im Microsoft Download Center zum Download zur Verfügung.
Aufführen, auf welchen TCP/IP-Ports die Überwachung erfolgt
Wenn Sie überprüfen möchten, welche Ports überwacht werden, verwenden Sie das Befehlszeilen-Hilfsprogramm netstat, um die aktiven TCP-Verbindungen und IP-Statistiken anzuzeigen.
Öffnen Sie das Eingabeaufforderungsfenster.
Geben Sie an der Eingabeaufforderung
netstat -n -a
ein:Mit dem
-n
-Schalter wird netstat angewiesen, die Adressen und Portnummern der aktiven TCP-Verbindungen numerisch anzuzeigen. Mit dem-a
-Schalter wird netstat angewiesen, die vom Computer überwachten TCP- und UDP-Ports anzuzeigen.