web-dev-qa-db-fra.com

Se connecter à SQL Server sur Internet

Je souhaite me connecter à SQL Server via Internet:

  1. J'ai éteint le pare-feu
  2. J'ai activé le DMZ dans le routeur, l'adresse de l'hôte est 192.168.1.24 qui est l'IP LAN de SQL Server
  3. J'ouvre un port dans le routeur pour SQL Server et SQL Server Browser (1433 - 1434)
  4. J'ai vérifié le port ouvert via le site Web (canyouseeme), et le résultat est le succès pour 1433 et l'erreur pour 1434 (je ne connais pas la raison de l'erreur)
  5. J'ai fait la configuration nécessaire pour les protocoles TCP
  6. J'ai vérifié que le serveur est autorisé à se connecter à distance

Mais je n'ai pas réussi à me connecter au serveur via Internet.

Mon IP LAN est 192.168.1.24
L'instance est l'instance par défaut
Mon IP publique est 95.218.156.146 (par exemple)

Lorsque je tape (192.168.1.24) dans la zone de texte du nom du serveur, je réussis à me connecter au serveur, mais je ne parviens pas à me connecter lorsque je tape 195.218.156.146 ou 95.218.156.146, 1433

Remarque:

  1. Lorsque je mets l'IP publique dans le navigateur, la page du routeur apparaît (ce qui signifie que l'IP publique est correcte)
  2. Je n'ai pas trouvé de redirection de port dans mon routeur, mais j'ai configuré le DMZ et le mappage de port enter image description hereenter image description here
2
salbenny

La façon recommandée de le faire est de configurer un VPN entre les deux sites. Les étapes à suivre varient en fonction du pare-feu/routeur particulier utilisé. Si un VPN ne peut pas être utilisé, les informations suivantes sont fournies pour savoir comment configurer une connexion avec le mappage de port. Si le mappage de port est utilisé, il ne doit être utilisé qu'en conjonction avec des règles de pare-feu supplémentaires pour restreindre les adresses IP source pouvant être acheminées via le port mappé afin que chaque pirate sur terre n'ait pas accès à votre serveur SQL.

1. Configuration IP du serveur

Vérifiez la configuration IP de votre serveur Windows en exécutant IPCONFIG / ALL. Vos résultats peuvent contenir les deux adresses IP, mais au moins votre IP interne:
- 192.168.1.24
- 95.218.133.168

2. Vérifiez votre itinéraire

Démarrez un traceroute avec la commande suivante: TRACERT <external IP of server>. Vérifiez que vous recevez l'itinéraire vers votre serveur.

Faites la même chose depuis votre LAN et depuis INTERNET. Les résultats devraient ressembler à ceux-ci pour la vérification INTERNET:

 1    <1 ms    <1 ms    <1 ms  <IP of your router>
 2    <1 ms    <1 ms    <1 ms  <IP of your ISP>
 3    <1 ms    <1 ms    <1 ms  <Another IP connecting to your company>
 4     2 ms     1 ms     1 ms  outside.yourcompany.com [<public IP of your company>]
 5     3 ms     1 ms     1 ms  dmz.yourcompany.com [<IP of DMZ component>]
 6     3 ms     1 ms     1 ms  router.yourcompany.com [<IP of router>]
 7     3 ms     1 ms     1 ms  sqlserver.yourcompany.com [<IP of server>]

En fonction des paramètres de votre pare-feu, il se peut que vous ne dépassiez pas le pare-feu de votre entreprise, mais si tracert va dans la bonne direction, il "connaît" le chemin. Votre pare-feu ne dit à personne à quoi ressemble votre réseau et peut ne pas transmettre la demande de port à votre serveur SQL (voir Configuration du routeur plus tard)

3. Vérifiez votre configuration IP SQL Server

  1. Dans le Gestionnaire de configuration SQL Server, ouvrez la branche pour la configuration réseau SQL Server et sélectionnez votre instance. (Par exemple. Protocols for 'MSSQLSERVER')
  2. Faites un clic droit et ouvrez les propriétés. Vérifiez que vous ne disposez d'aucun paramètre pouvant empêcher une connexion. Fermez le paramètre lorsque vous avez terminé.
  3. Dans le volet droit des paramètres de protocole, vérifiez que le protocole TCP/IP est 'Enabled'.
  4. Maintenant, cliquez avec le bouton droit sur le paramètre TCP/IP et ouvrez les propriétés. Dans l'onglet Protocole ...
    a) Vérifiez à nouveau que Enabled est défini sur Yes.
    b) Vérifiez que le paramètre Listen All est défini sur Yes.
    c) L'écran devrait ressembler à ceci:
    Protocol Tab

  5. Passez à l'onglet Adresses IP et vérifiez pour chaque IPn que ...
    a) Actif est défini sur Yes
    b) Activé est défini sur Yes
    c) L'adresse IP est votre adresse IP externe (ou votre adresse interne si vous ne pouvez pas attribuer l'adresse externe à votre serveur SQL, car vous n'avez qu'une seule IP publique.)
    d) TCP Dynamic Ports est défini sur (Aucune valeur/vide)
    e) TCP est défini sur 1433
    f) L'écran devrait ressembler un peu à ceci, mais avec votre adresse IP: enter image description here

  6. Vérifiez ensuite les paramètres de la partie IPAll, en vérifiant que ...
    a) TCP Dynamic Ports est défini sur (Aucune valeur/vide)
    b) TCP Le port est défini sur (Aucune valeur/vide)
    c) L'écran devrait ressembler à ceci:
    IPAll Configuration

4. Vérifiez la configuration de votre routeur

Votre IP publique n'est pas celle du serveur, c'est celle du routeur. Si votre serveur est derrière le routeur, vous devez vous assurer que votre routeur transmet la demande à votre serveur SQL. Ce paramètre de configuration peut varier d'un routeur à l'autre. Voici quelques exemples de configuration de routeurs:
- redirection de port (Zyxel)
- Configuration du partage de port statique (Fritz AVM)
- Comment configurer la redirection de port sur mon routeur? (D-Link)

Avec les trucs et astuces fournis, vous devriez être en mesure de configurer votre serveur SQL pour accepter les connexions à partir d'Internet.

AVERTISSEMENT: Il n'est pas vraiment recommandé d'autoriser les connexions via Internet à une base de données de votre réseau local. Vous risquez d'être attaqué.

5
John aka hot2use