Vorgehensweise: Konfigurieren eines mehrfach vernetzten Computers für SQL Server-Zugriff

In einem Szenario, in dem ein Server eine Verbindung zu mindestens zwei Netzwerken oder Netzwerksubnetzen bereitstellen muss, wird normalerweise ein mehrfach vernetzter Computer verwendet. Häufig befindet sich dieser Computer in einem Umkreisnetzwerk (auch als DMZ, Demilitarized Zone oder überwachtes Subnetz bezeichnet). In diesem Thema wird beschrieben, wie SQL Server und Windows-Firewall mit erweiterter Sicherheit konfiguriert werden, um Netzwerkverbindungen zu einer Instanz von SQL Server in einer mehrfach vernetzten Umgebung bereitzustellen.

HinweisHinweis

Ein mehrfach vernetzter Computer verfügt über mehrere Netzwerkkarten oder wurde so konfiguriert, dass mehrere IP-Adressen für eine einzelne Netzwerkkarte verwendet werden können. Ein zweifach vernetzter Computer verfügt über zwei Netzwerkkarten oder wurde so konfiguriert, dass zwei IP-Adressen für eine einzelne Netzwerkkarte verwendet werden können.

Bevor Sie mit diesem Thema fortfahren, sollten Sie mit den Informationen im Thema Konfigurieren der Windows-Firewall für den SQL Server-Zugriff vertraut sein. Dieses Thema enthält grundlegende Informationen dazu, wie SQL Server-Komponenten mit der Firewall zusammenarbeiten.

Annahmen für dieses Beispiel:

  • SQL Server wird auf einem Computer ausgeführt, auf dem Windows Server 2008 oder das Betriebssystem Windows Vista ausgeführt wird. Wenn Sie Windows Server 2003 oder Windows XP verwenden, lesen Sie weiter unten in diesem Thema den Abschnitt Wenn Sie Windows Server 2003, Windows XP oder eine frühere Version ausführen, sollten Sie Folgendes berücksichtigen.

  • Der Computer verfügt über zwei installierte Netzwerkkarten. Eine oder mehrere Netzwerkkarten können drahtlos sein. Sie können simulieren, dass Sie über zwei Netzwerkkarten verfügen, indem Sie die IP-Adresse für die erste und die IP-Loopbackadresse (127.0.0.1) für die zweite Netzwerkkarte verwenden.

  • Der Einfachheit halber werden in diesem Beispiel IPv4-Adressen verwendet. Die gleichen Prozeduren können jedoch auch mit IPv6-Adressen ausgeführt werden.

    HinweisHinweis

    Bei einer IPv4-Adresse handelt es sich um eine Reihe von vierstelligen Zahlen, die als Oktett bezeichnetet wird. Jede Zahl ist kleiner als 255 und wird durch Punkte getrennt, z. B. 127.0.0.1. Eine IPv6-Adresse ist eine Reihe von acht Hexadezimalzahlen, die durch Doppelpunkte getrennt werden, z. B. fe80:4898:23:3:49a6:f5c1:2452:b994.

  • Die Firewall kann entweder den Zugriff über einen bestimmten Port (wie z. B. Port 1433) oder auf das Programm SQL Server Database Engine (Datenbankmodul) (sqlservr.exe) zulassen. Beide Methoden sind gleichwertig. Da ein Server in einem Umkreisnetzwerk anfälliger für Angriffe ist als ein Server in einem Intranet, wird für dieses Thema angenommen, dass Sie den Zugriff genauer steuern und die Ports, die Sie öffnen, einzeln auswählen möchten. Es wird daher vorausgesetzt, dass Sie SQL Server konfigurieren, um einen festen Port zu überwachen. Weitere Informationen zu den Ports, die SQL Server verwendet, finden Sie unter Konfigurieren der Windows-Firewall für den SQL Server-Zugriff.

  • In diesem Beispiel wird der Zugriff auf Database Engine (Datenbankmodul) unter Verwendung von TCP-Port 1433 konfiguriert. Die anderen Ports, die unterschiedliche SQL Server-Komponenten sind, können mithilfe der gleichen allgemeinen Schritte konfiguriert werden.

In diesem Beispiel werden die folgenden allgemeinen Schritte beschrieben:

  • Bestimmen der IP-Adressen des Computers.

  • Konfigurieren von SQL Server, sodass ein bestimmter TCP-Port überwacht wird.

  • Konfigurieren der Windows-Firewall mit erweiterter Sicherheit.

Optionale Vorgänge

Wenn Sie die verfügbaren IP-Adressen Ihres Computers bereits kennen und diese von SQL Server verwendet werden, können Sie diese Vorgänge überspringen.

So bestimmen Sie die verfügbaren IP-Adressen des Computers

  1. Klicken Sie auf dem Computer, auf dem SQL Server installiert ist, auf Start und dann auf Ausführen, geben Sie cmd ein, und klicken Sie anschließend auf OK.

  2. Geben Sie im Eingabeaufforderungsfenster ipconfig ein, und drücken Sie anschließend die EINGABETASTE, um die auf diesem Computer verfügbaren IP-Adressen aufzulisten.

    HinweisHinweis

    Der Befehl ipconfig listet manchmal eine große Anzahl an möglichen Verbindungen auf, einschließlich Verbindungen, die getrennt wurden. Der Befehl ipconfig kann sowohl IPv4- als auch IPv6-Adressen auflisten.

  3. Notieren Sie die IPv4- und IPv6-Adressen, die verwendet werden. Die anderen Informationen in der Liste, wie z. B. temporäre Adressen, Subnetzmasken und Standardgateways sind wichtig zum Konfigurieren eines TCP/IP-Netzwerks. Diese Informationen werden in diesem Beispiel jedoch nicht verwendet.

So bestimmen Sie die IP-Adressen und die Ports, die von SQL Server verwendet werden

  1. Klicken Sie auf Start, zeigen Sie auf Alle Programme, zeigen Sie auf Microsoft SQL Server 2008, zeigen Sie dann auf Konfigurationstools, und klicken Sie anschließend auf SQL Server-Konfigurations-Manager.

  2. Erweitern Sie im Konsolenbereich von SQL Server-Konfigurations-Manager die SQL Server-Netzwerkkonfiguration und die Protokolle für <Instanzname>. Doppelklicken Sie anschließend auf TCP/IP.

  3. Im Dialogfeld TCP/IP-Eigenschaften auf der Registerkarte IP-Adressen erscheinen mehrere IP-Adressen im Format IP1, IP2 und bis zu IPAll. Eine dieser Angaben ist die IP-Adresse des Loopbackadapters (127.0.0.1). Für alle IP-Adressen, die auf dem Computer konfiguriert wurden, werden zusätzliche IP-Adressen angezeigt.

  4. Wenn das Dialogfeld Dynamische TCP-Ports für eine IP-Adresse eine 0 enthält, weist dies darauf hin, dass von Database Engine (Datenbankmodul) dynamische Ports überwacht werden. In diesem Beispiel werden feste Ports anstatt dynamischer Ports, die sich bei einem Neustart ändern können, verwendet. Löschen Sie daher die 0, wenn das Dialogfeld Dynamische TCP-Ports eine 0 enthält.

  5. Notieren Sie den TCP-Port, der für jede IP-Adresse aufgelistet ist, die Sie konfigurieren möchten. Für dieses Beispiel wird angenommen, dass beide IP-Adressen den Standardport 1433 überwachen.

  6. Wenn Sie möchten, dass von SQL Server einige der verfügbaren Ports nicht verwendet werden, ändern Sie auf der Registerkarte Protokoll den Wert Alle überwachen auf Nein, und ändern Sie auf der Registerkarte IP-Adressen für die IP-Adressen, die Sie nicht verwenden möchten, den Wert Aktiv auf Nein.

Windows-Firewall mit erweiterter Sicherheit konfigurieren

Nachdem Sie nun die vom Computer verwendeten IP-Adressen und die von SQL Server verwendeten Ports kennen, können Sie Firewallregeln erstellen und diese Regeln anschließend für bestimmte IP-Adressen konfigurieren.

So erstellen Sie eine Firewallregel

  1. Melden Sie sich als Administrator auf dem Computer an, auf dem SQL Server installiert ist.

  2. Klicken Sie auf Start und dann auf Ausführen, geben Sie wf.msc ein, und klicken Sie auf OK.

  3. Klicken Sie im Dialogfeld Benutzerkontensteuerung auf Weiter, um unter Verwendung der Administratoranmeldeinformationen das Snap-In der Windows-Firewall mit erweiterter Sicherheit zu öffnen.

  4. Bestätigen Sie auf der Seite Übersicht, dass die Windows-Firewall aktiv ist.

  5. Klicken Sie im linken Bereich auf Eingehende Regeln.

  6. Klicken Sie mit der rechten Maustaste auf Eingehende Regeln, und klicken Sie anschließend auf Neue Regel, um den Assistenten für neue eingehende Regel zu öffnen.

  7. Sie können eine Regel für das Programm SQL Server erstellen. Da in diesem Beispiel jedoch ein fester Port verwendet wird, wählen Sie Port aus, und klicken Sie anschließend auf Weiter.

  8. Wählen Sie auf der Seite Protokolle und Ports die Option TCP aus.

  9. Wählen Sie Angegebene lokale Ports aus. Geben Sie die durch Kommas getrennten Portnummern ein, und klicken Sie anschließend auf Weiter. In diesem Beispiel konfigurieren Sie den Standardport, geben Sie daher 1433 ein.

  10. Überprüfen Sie die Optionen auf der Seite Aktion. In diesem Beispiel verwenden Sie nicht die Firewall, um sichere Verbindungen zu gewährleisten. Klicken Sie daher auf Verbindung zulassen und anschließend auf Weiter.

    HinweisHinweis

    Möglicherweise sind für die Umgebung sichere Verbindungen erforderlich. Wenn Sie eine der Optionen der sicheren Verbindungen auswählen, müssen Sie möglicherweise ein Zertifikat und die Option Verschlüsselung erzwingen konfigurieren. Weitere Informationen zu sicheren Verbindungen finden Sie unter Verschlüsseln von Verbindungen zu SQL Server und Vorgehensweise: Aktivieren von verschlüsselten Verbindungen zum Datenbankmodul (SQL Server-Konfigurations-Manager)..

  11. Wählen Sie auf der Seite Profil mindestens ein Profil für die Regel aus. Wenn Sie mit Firewallprofilen nicht vertraut sind, klicken Sie im Firewallprogramm auf den Link Weitere Informationen zu Profilen.

    • Wenn der Computer ein Server und nur dann verfügbar ist, wenn er mit einer Domäne verbunden ist, wählen Sie Domäne aus, und klicken Sie anschließend auf Weiter.

    • Wenn es sich bei dem Computer um ein mobiles Gerät (z. B. um einen Laptop) handelt, verwendet er wahrscheinlich mehrere Profile, um eine Verbindung mit unterschiedlichen Netzwerken herzustellen. Bei einem mobilen Computer können Sie unterschiedliche Zugriffsmöglichkeiten für verschiedene Profile konfigurieren. Zum Beispiel können Sie einen Zugriff gewähren, wenn der Computer das Domänenprofil verwendet, und verweigern, wenn er das öffentliche Profil verwendet.

  12. Tragen Sie auf der Seite Name einen Namen und eine Beschreibung für die Regel ein, und klicken Sie dann auf Fertig stellen.

  13. Wiederholen Sie diese Prozedur, um für jede IP-Adresse, die SQL Server verwendet, eine weitere Regel zu erstellen.

Nachdem Sie eine oder mehrere Regeln erstellt haben, führen Sie die folgenden Schritte aus, um jede IP-Adresse auf dem Computer zu konfigurieren und eine Regel zu verwenden.

So konfigurieren Sie die Firewallregel für eine bestimmte IP-Adresse

  1. Klicken Sie mit der rechten Maustaste auf der Seite Eingehende Regeln unter Windows-Firewall mit erweiterter Sicherheit auf die Regel, die Sie gerade erstellt haben, und klicken Sie anschließend auf Eigenschaften.

  2. Wählen Sie im Dialogfeld Regeleigenschaften die Registerkarte Bereich aus.

  3. Wählen Sie im Bereich Lokale IP-Adresse die Option Diese IP-Adressen aus, und klicken Sie dann auf Hinzufügen.

  4. Wählen Sie im Dialogfeld IP-Adresse die Option Diese IP-Adresse oder Subnetz aus, und geben Sie anschließend eine der IP-Adressen ein, die Sie konfigurieren möchten.

  5. Klicken Sie auf OK.

  6. Wählen Sie im Bereich Remote-IP-Adresse die Option Diese IP-Adressen aus, und klicken Sie anschließend auf Hinzufügen.

  7. Verwenden Sie das Dialogfeld IP-Adresse, um die Konnektivität für die ausgewählte IP-Adresse des Computers zu konfigurieren. Sie können Verbindungen zu angegebenen IP-Adressen, Bereichen von IP-Adressen, ganzen Subnetzen oder bestimmten Computern aktivieren. Um diese Option ordnungsgemäß zu konfigurieren, müssen Sie sich mit dem Netzwerk gut auskennen. Informationen über das Netzwerk erhalten Sie vom Netzwerkadministrator.

  8. Um das Dialogfeld IP-Adresse zu schließen, klicken Sie auf OK, und klicken Sie anschließend auf OK, um das Dialogfeld Regeleigenschaften zu schließen.

  9. Um die anderen IP-Adressen auf einem mehrfach vernetzten Computer zu konfigurieren, wiederholen Sie diesen Vorgang mit einer anderen IP-Adresse und einer anderen Regel.

Wenn Sie Windows Server 2003 oder Windows XP verwenden, sollten Sie Folgendes berücksichtigen:

Ein mehrfach vernetzter Computer, auf dem das Betriebssystem Windows Server 2003 oder Windows XP ausgeführt wird, kann ähnlich konfiguriert werden wie unter Windows Server 2003 und Windows Vista. Da Windows-Firewall mit erweiterter Sicherheit jedoch nicht verfügbar ist, müssen Sie für jede IP-Adresse unterschiedliche Ports verwenden. Führen Sie die folgenden allgemeinen Schritte aus.

So konfigurieren Sie Firewallregeln für ausgewählte IP-Adressen unter Windows Server 2003 oder Windows XP

  1. Konfigurieren Sie Database Engine (Datenbankmodul) so, dass mehrere TDS-Endpunkte überwacht werden. Weitere Informationen finden Sie unter Vorgehensweise: Konfigurieren des Datenbankmoduls zum Überwachen mehrerer TCP-Ports.

  2. Verwenden Sie den SQL Server-Konfigurations-Manager, um das Überwachen aller IP-Adressen zu deaktivieren, indem Sie die OptionAlle überwachen auf Nein festlegen.

  3. Konfigurieren Sie SQL Server so, dass für jede einzelne IP-Adresse ein unterschiedlicher TCP-Port überwacht wird, und starten Sie SQL Server anschließend neu.

  4. Verwenden Sie das Programm Windows-Firewall, um eine Firewallregel für jeden einzelnen Port zu erstellen, und verwenden Sie die Bereichseinstellungen, um jeden Port auf die Verbindungen zu den gewünschten IP-Adressen, IP-Adressbereichen, ganzen Subnetzen oder bestimmten aufgeführten Computern zu begrenzen.