En esta entrada os voy a explicar como configurar nuestra instancia de SQL Server para que permita conexiones remotas.
En primer lugar accederemos al servidor donde se encuentra instalada nuestra instancia de SQL Server y nos dirigiremos a la consola de SQL Server Configuration Manager.
A continuación realizaremos doble clic sobre TCP/IP.
En la pestaña Protocolo comprobaremos que tanto la opción Escuchar todo como Habilitado se encuentren en Sí.
En la pestaña Direcciones IP activaremos aquellas conexiones por las que queremos permitir conexiones remotas y definiremos el puerto por el que realizaremos la conexión, por defecto el 1433.
Aceptamos y nos saldrá un mensaje informativo indicandonos que los cambios no se aplicarán hasta que no reiniciemos el servicio de SQL.
Para reiniciar el servicio de SQL, dentro de la consola de SQL Server Configuration Manager, nos iremos a Servicios de SQL Server y sobre el servicio pulsaremos con el botón derecho sobre Reiniciar.
Con esto ya nuestro SQL Server permitirá conexiones remotas por el puerto que hayamos definido pero antes de poder realizar nuestra primera conexión remota tendremos que abrir el puerto que hemos elegido en el Firewall que tengamos implementado en nuestro servidor.
Voy a explicaros como se haría en el Firewall incoporado en Windows Server. En el caso de tener otra aplicación de Firewall debereis realizar los pasos que sean necesarios, en función de la solución que utiliceis, para abrir el puerto.
Nos iremos a la consola de Windows Defender Firewall con seguridad avanzada y pulsaremos sobre Nueva regla.
En el asistente que nos aparecerá selecionaremos Puerto y pulsaremos en Siguiente.
Seleccionamores el protocolo TCP y pondremos el puerto que hayamos elegido en la configuración anterior, en nuestro ejemplo sería el puerto 1433. Pulsamos en Siguiente para continuar.
Seleccionamos Permitir la conexión y pulsamos en Siguiente.
Seleccionaremos las zonas donde se aplicará nuestra regla. Pulsamos en Siguiente.
Por último pondremos un nombre a nuestra regla y pulsaremos sobre Finalizar para crearla.
Y listo ya podremos acceder de forma remota a nuestro SQL Server.
Espero os haya servido de utilidad.
Me dedico a la Administración de Sistemas y he creado este blog para compartir mis conocimientos con toda la comunidad y así aportar mi granito de arena y ayudar a todo el que lo necesite.
Muchas gracias por compartir tus conocimientos, ayuda mucho.
He instalado sql server 2019 en ubuntu, y todo corre bien , pero quiero permitir conexiones remotas, (habilitar canalizaciones y TCP/IP), y no encuentro la forma de hacerlo.
Gracias.
Hola Francisco,
En la mayoría de ocasiones el problema suele residir en que el puerto 1433/tcp no se encuentra habilitado en el Firewall y por tanto no permite conexiones externas.
Para permitir conexiones por el puerto 1433 prueba lo siguiente:
sudo ufw enable
sudo ufw allow proto tcp from any to any port 1433
sudo ufw reload
Espero solucione tu problema.
Saludos.
Una duda con estos pasos igual me podre conectar afuera de la red. Lan o habria otros pasos extras??
Hola Johans,
Tendrías que redirigir las peticiones a nivel de electrónica de red hacia tu servidor.
Saludos.
Hola Sergio, pero en ese caso de conexión por fuera de la red, en la pestaña de Direcciones IP que dirección IP hay que habilitar para conexiones desde fuera de la red?? Y para conectar un cliente que esté fuera de la red, hay que poner la IP Externa de la red (ya tengo redirigido el puerto) o se puede poner un DDNS? Si se puede hacer esto último, hay que añadir/cambiar alguna canalización de nombre o que configuraciones serían necesarios para habilitarlo? Muchas gracias.
Hola Daniel,
A nivel de configuración de SQL no tienes que cambiar nada, sólo tendrías que configurar tu electrónica de red y mediante un nateo dirigir la petición externa a tu SQL.
De todas formas no te recomiendo permitir la conexión directa a un SQL mediante una IP pública ya que es bastante inseguro. Si necesitas hacer la conexión desde el exterior te recomiendo montar y utilizar una VPN.
Saludos.
Es fácil de hacer (NAT en el router hacia la IP local del servidor y el puerto 1433). Pero, por favor, No expongas SQL fuera de la red. Es como abrir de par en par las puertas a los hackers. Lo mismo te digo para MySQL, PostGRE o cualquier otro motor de redes.
Para trabajr con tus bases de datos desde fuera de la red local opta por una de estas soliciones:
– configura o contrata una VPN para trabajar en tured
– Usa, en lugar de SQL server alojado en un servidor tuyo, azure. para conectarte a azure tan solo tienes que usar la url que te sirvan una vez configurado y puedes usar todas las herramientas como management studio u otras de tu preferencia.