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.

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 Datenbank-Engine, Analysis Services, Reporting Services und Integration Services auswirken, 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 in Windows Vista und Windows Server 2008 geändert.

Warnung

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

  1. 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.

  2. Im Dialogfeld TCP/IP-Eigenschaften auf der Registerkarte IP-Adressen werden mehrere IP-Adressen im Format IP1, IP2und bis zu IPAllangezeigt. Eine dieser Angaben 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.

  3. Wenn im Dialogfeld Dynamische TCP-Ports durch den Wert 0angezeigt wird, dass Datenbank-Engine dynamische Ports überwacht, löschen Sie die Null.

    Screenshot der TCP-Ports.

  4. Geben Sie im Dialogfeld IPnEigenschaften im Feld TCP-Port die Portnummer ein, an der diese IP-Adresse lauschen soll, und wählen Sie dann OK aus. Sie können mehrere Ports angegeben, indem Sie sie durch ein Komma trennen. Klicken Sie auf OK.

    Hinweis

    Wenn die Einstellung Alle überwachen auf der Registerkarte Protokoll auf „Ja“ festgelegt ist, werden nur die Werte TCP Port (TCP-Port) und TCP Dynamic Port (Dynamischer TCP-Port) unter IPAll verwendet, und individuelle IPn-Abschnitte werden ignoriert. Wenn die Einstellung Alle überwachen auf „Nein“ festgelegt ist, werden die WerteTCP 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 IPn-Abschnitte verwendet.

    Jeder IPn-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.

  5. Wählen Sie im Konsolenbereich SQL Server-Dienste aus.

  6. 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 von 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.

Siehe auch