Konfigurieren von SQL Server, damit an einem bestimmten TCP-Port gelauscht wird
Gilt für: SQL Server
In diesem Artikel wird beschrieben, wie eine Instanz der SQL Server-Datenbank-Engine konfiguriert wird, um mit dem SQL Server-Konfigurations-Manager an einem bestimmten festen Port zu lauschen. Falls aktiviert, überwacht die Standardinstanz von SQL Server-Datenbank-Engine TCP-Port 1433. Benannte Instanzen von Datenbank-Engine und SQL Server Compact sind für dynamische Portskonfiguriert. Dies bedeutet, dass sie einen verfügbaren Port auswählen, wenn der SQL Server -Dienst gestartet wird. Wenn Sie eine Verbindung mit einer benannten Instanz über eine Firewall herstellen, konfigurieren Sie die Datenbank-Engine so, dass an einem bestimmten Port gelauscht wird, damit der entsprechende Port in der Firewall geöffnet werden kann.
Hinweis
Da Port 1433 der bekannte Standard für SQL Server ist, legen einige Organisationen fest, dass die SQL Server-Portnummer geändert werden soll, um die Sicherheit zu verbessern. Dies kann in einigen Umgebungen hilfreich sein. Allerdings ermöglicht die TCP/IP-Architektur, dass ein Portscanner eine Abfrage nach geöffneten Ports ausführt. Deshalb stellt das Ändern der Portnummer keine robuste Sicherheitsmaßnahme dar.
Weitere Informationen zu den Standardeinstellungen der Windows-Firewall und eine Beschreibung der TCP-Ports, die sich auf das Datenbank-Engine, die Analysis Services, die Reporting Servicesund die Integration Servicesauswirken, finden Sie unter Konfigurieren der Windows-Firewall für den SQL Server-Zugriff.
Tipp
Beachten Sie bei der Auswahl von Portnummern die Liste registrierter Ports, die bestimmten Anwendungen fest zugeordnet sind. Diese Liste finden Sie auf der Website https://www.iana.org/assignments/port-numbers. Wählen Sie eine nicht zugewiesene Portnummer aus. Weitere Informationen finden Sie unter Der dynamische Standardportbereich für TCP/IP hat sich seit Windows Vista und Windows Server 2008 geändert.
Hinweise
Nach einem Neustart lauscht die Datenbank-Engine an einem neuen Port. Der SQL Server-Browserdienst überwacht jedoch die Registrierung und meldet die neue Portnummer, sobald die Konfiguration geändert wird, obwohl die Portnummer von der Datenbank-Engine u. U. gar nicht verwendet wird. Starten Sie die Datenbank-Engine erneut, um Konsistenz zu gewährleisten und Verbindungsfehler zu vermeiden.
Verwenden des SQL Server-Konfigurations-Managers
So weisen Sie der SQL Server-Datenbank-Engine einen TCP/IP-Port zu
Erweitern Sie im Konsolenbereich des SQL Server-Konfigurations-Managers den Bereich SQL Server-Netzwerkkonfiguration, und wählen Sie Protokolle für <Instanzname> aus. Doppelklicken Sie dann im Bereich rechts auf TCP/IP.
Hinweis
Wenn Sie Probleme beim Öffnen des SQL Server-Konfigurations-Managers haben, lesen Sie die Informationen unter SQL Server-Konfigurations-Manager.
Im Dialogfeld TCP/IP-Eigenschaften auf der Registerkarte IP-Adressen werden mehrere IP-Adressen im Format IP1, IP2und bis zu IPAllangezeigt. Einer dieser Einträge ist die IP-Adresse des Loopbackadapters (
127.0.0.1
). Bei den anderen IP-Adressen handelt es sich um die einzelnen IP-Adressen auf dem Computer. (Möglicherweise werden sowohl IPv4- als auch IPv6-Adressen angezeigt.) Klicken Sie mit der rechten Maustaste auf die einzelnen Adressen, und wählen Sie dann Eigenschaften aus, um die IP-Adresse zu identifizieren, die Sie konfigurieren möchten.Wenn im Dialogfeld Dynamische TCP-Ports durch den Wert
0
angezeigt wird, dass die Datenbank-Engine dynamische Ports überwacht, löschen Sie die0
.Geben Sie im Dialogfeld IP n Eigenschaften im Feld TCP-Port die Portnummer ein, die diese IP-Adresse überwachen soll, und wählen Sie dann OK aus. Sie können mehrere Ports angegeben, indem Sie sie durch ein Komma trennen. Wählen Sie OK aus.
Wenn die Einstellung Alle überwachen auf der Registerkarte Protokoll auf Ja festgelegt ist, werden nur die Werte TCP Port und TCP Dynamic Port (Dynamischer TCP-Port) unter IPAll verwendet, und individuelle IP n-Abschnitte werden ignoriert. Wenn die Einstellung Alle überwachen auf Nein festgelegt ist, werden die Werte TCP Port und TCP Dynamic Port unter IPAll ignoriert, und die Einstellungen TCP Port, TCP Dynamic Port und Enabled (Aktiviert) werden stattdessen für die jeweiligen IP n-Abschnitte verwendet.
Jeder IP n-Abschnitt verfügt über die Einstellung Aktiviert mit dem Standardwert „Nein“, wodurch SQL Server diese IP-Adresse ignoriert, auch wenn dafür ein Port definiert ist.
Wählen Sie im Konsolenbereich SQL Server-Dienste aus.
Klicken Sie im Detailbereich mit der rechten Maustaste auf SQL Server (<Instanzname>), und wählen Sie dann Neu starten aus, um SQL Server zu beenden und neu zu starten.
Verbinden
Nachdem Sie SQL Server so konfiguriert haben, dass an einem bestimmten Port gelauscht wird, gibt es drei Möglichkeiten, um über die Clientanwendung eine Verbindung mit einem bestimmten Port herzustellen:
- Führen Sie auf dem Server den SQL Server-Browser-Dienst aus, um die Verbindung zur Instanz der Datenbank-Engine nach dem Namen herzustellen.
- Erstellen Sie einen Alias auf dem Client, und geben Sie die Portnummer an.
- Programmieren Sie den Client so, dass die Verbindung mithilfe einer benutzerdefinierten Verbindungszeichenfolge hergestellt wird.