Configuración de SQL Server para escuchar en un puerto TCP específico
Se aplica a: SQL Server
En este artículo se describe cómo configurar una instancia de Motor de base de datos de SQL Server para escuchar en un puerto fijo específico mediante el Administrador de configuración de SQL Server. Si está habilitada, la instancia predeterminada de Motor de base de datos de SQL Server escucha en el puerto TCP 1433. Las instancias con nombre de Motor de base de datos y SQL Server Compact están configuradas para puertos dinámicos. Esto significa que seleccionan un puerto disponible cuando se inicia el servicio SQL Server . Cuando se conecte a una instancia con nombre a través de un firewall, configure el Motor de base de datos para que escuche en un puerto específico, de modo que el puerto adecuado pueda abrirse en dicho firewall.
Nota:
Dado que el puerto 1433 es el estándar conocido de SQL Server, en algunas organizaciones se indica que conviene cambiar el número de puerto de SQL Server para mejorar la seguridad. Esto puede resultar útil en algunos entornos. A pesar de esto, las arquitecturas de TCP/IP permiten que un examinador de puertos consulte cuáles son los puertos abiertos, de modo que cambiar el número de puerto no se considera una medida de seguridad eficaz.
Para obtener más información sobre la configuración predeterminada del firewall de Windows y una descripción de los puertos TCP que afectan al Motor de base de datos, a Analysis Services, a Reporting Services y a Integration Services, consulta Configurar Firewall de Windows para permitir el acceso a SQL Server.
Sugerencia
Al seleccionar un número de puerto, consulte https://www.iana.org/assignments/port-numbers para obtener una lista de los números de puerto asignados a determinadas aplicaciones. Seleccione un número de puerto sin asignar. Para obtener más información, vea El rango de puertos dinámicos predeterminado para TCP/IP ha cambiado desde Windows Vista y Windows Server 2008.
Comentarios
El Motor de base de datos empieza a escuchar en un puerto nuevo cuando se reinicia. Sin embargo, el servicio SQL Server Browser supervisa el Registro e informa del nuevo número de puerto en cuanto cambia la configuración, incluso aunque el Motor de base de datos no lo use. Reinicie el Motor de base de datos para asegurar la coherencia y evitar errores de conexión.
Uso del Administrador de configuración de SQL Server
Asignación de un número de puerto TCP/IP al Motor de base de datos de SQL Server
En el panel de la consola del Administrador de configuración de SQL Server, expanda Configuración de red de SQL Server, seleccione Protocolos de <nombre de instancia> y, después, en el panel derecho, haga doble clic en TCP/IP.
Nota:
Si tiene problemas para abrir el Administrador de configuración de SQL Server, consulte Administrador de configuración de SQL Server.
En el cuadro de diálogo Propiedades de TCP/IP , en la pestaña Direcciones IP , aparecen varias direcciones IP con el formato IP1, IP2, hasta IPAll. Una de estas entradas se utiliza para la dirección IP del adaptador de bucle invertido,
127.0.0.1
. Aparecen direcciones IP adicionales para cada dirección IP del equipo. (Puede que vea ambas direcciones, la de IP versión 4 y la de IP versión 6). Haga clic con el botón derecho en cada dirección y luego seleccione Propiedades para identificar la dirección IP que quiera configurar.Si el cuadro de diálogo Puertos dinámicos TCP contiene
0
, que indica que el Motor de base de datos escucha en los puertos dinámicos, elimine el0
.En el cuadro de Propiedades de IP n, en el cuadro Puerto TCP, escriba el número de puerto en el que desea que escuche esta dirección IP y, a continuación, seleccione Aceptar. Para especificar varios puertos, sepárelos con una coma. Seleccione Aceptar.
Si la opción Escuchar todo de la pestaña Protocolo está establecida en Sí, solo se usarán los valores de Puerto TCP y Puerto dinámico TCP de la sección IPAll y se ignorarán las secciones individuales IP n en su totalidad. Si la opción Escuchar todo está establecida en No, se ignorarán los ajustes de Puerto TCP y Puerto dinámico TCP de la sección IPAll y se usarán los valores de Puerto TCP, Puerto dinámico TCP y Habilitado de las secciones individuales IP n en su lugar.
Cada sección IP n tiene un ajuste Habilitado con un valor predeterminado de "No", lo que hace que SQL Server ignore esta dirección IP, incluso si tiene definido un puerto.
En el panel de la consola, haga clic en Servicios de SQL Server.
En el panel de detalles, haga clic con el botón derecho en SQL Server (<nombre de instancia>) y luego seleccione Reiniciar para detener y reiniciar SQL Server.
Conectar
Después de configurar SQL Server para que escuche en un puerto específico, dispone de tres métodos para conectarse a un puerto específico con una aplicación cliente:
- Ejecute el servicio Explorador de SQL Server en el servidor para conectarse a la instancia del Motor de base de datos por nombre.
- Cree un alias en el cliente; para ello, especifique el número de puerto.
- Programar el cliente para conectarse mediante una cadena de conexión personalizada.