Cómo configurar Firewall de Windows para el acceso al motor de base de datos

Los sistemas de firewall ayudan a evitar el acceso no autorizado a los recursos de los equipos. Para obtener acceso a una instancia de SQL Server Database Engine (Motor de base de datos de SQL Server) a través de un firewall, debe configurar el firewall en el equipo en el que se ejecuta SQL Server para que permita el acceso.

Para obtener más información sobre la configuración predeterminada de Firewall de Windows y una descripción de los puertos TCP que afectan al motor de base de datos, Analysis Services, Reporting Services e Integration Services, vea Configurar Firewall de Windows para permitir el acceso a SQL Server y Conectarse a SQL Server a través de Internet. Existen varios sistemas de firewall. Para obtener información específica, vea la documentación del firewall.

Nota importanteImportante

El hecho de abrir puertos en el firewall puede dejar el servidor expuesto a ataques malintencionados. Asegúrese de que conoce los sistemas de firewall antes de abrir puertos. Para obtener más información, vea Consideraciones de seguridad para una instalación de SQL Server.

Los pasos principales para permitir el acceso son:

  1. Configure Database Engine (Motor de base de datos) para que use un puerto TCP/IP específico. La instancia predeterminada de Database Engine (Motor de base de datos) utiliza el puerto 1433, pero se puede cambiar. Las instancias de SQL Server Express y SQL Server Compact 3.5 SP1 y las instancias con nombre de Database Engine (Motor de base de datos) usan puertos dinámicos. Para configurar estas instancias de forma que usen un puerto específico, vea Cómo configurar un servidor para que escuche en un puerto TCP específico (Administrador de configuración de SQL Server).

  2. Configure el firewall para que permita el acceso a ese puerto a los usuarios o equipos autorizados.

[!NOTA]

El servicio Explorador de SQL Server permite a los usuarios conectarse a instancias de Database Engine (Motor de base de datos) que no están escuchando en el puerto 1433, sin conocer el número de puerto. Para usar el Explorador de SQL Server, debe abrir el puerto UDP 1434. Para promover el entorno más seguro, deje detenido el servicio Explorador de SQL Server y configure los clientes para que se conecten usando el número de puerto.

[!NOTA]

De forma predeterminada, el Service Pack 2 de Microsoft Windows XP habilita Firewall de Windows, que cierra el puerto 1433 para impedir que los equipos de Internet se conecten a una instancia predeterminada de SQL Server en su equipo. No es posible establecer conexiones a la instancia predeterminada mediante TCP/IP a menos que abra de nuevo el puerto 1433. Los siguientes procedimientos incluyen los pasos básicos para configurar el firewall de Windows XP. Para obtener más información, vea la documentación de Windows.

Como alternativa a la configuración de SQL Server para escuchar en un puerto fijo y abrir el puerto, puede poner el ejecutable de SQL Server (Sqlservr.exe) en la lista de excepciones a los programas bloqueados. Use este método cuando desee seguir utilizando puertos dinámicos. De este modo, sólo se puede tener acceso a una sola instancia de SQL Server.

En los procedimientos siguientes, se utiliza el elemento Firewall de Windows del Panel de control a la hora de configurar el firewall exclusivamente para el perfil de la ubicación de red actual. El Firewall de Windows también se puede configurar utilizando el complemento Microsoft Management Console (MMC) de Firewall de Windows con seguridad avanzada y la herramienta de línea de comandos netsh. Para obtener más información acerca de estas herramientas, vea Configurar Firewall de Windows para permitir el acceso a SQL Server.

Para abrir un puerto en el firewall de Windows para el acceso TCP

  1. En el Panel de control, abra Conexiones de red, haga clic con el botón secundario en la conexión activa y, a continuación, haga clic en Propiedades.

  2. Haga clic en la ficha Opciones avanzadas y, a continuación, haga clic en Configuración de Firewall de Windows.

  3. En el cuadro de diálogo Firewall de Windows, haga clic en la ficha Excepciones y, a continuación, haga clic en Agregar puerto.

  4. En el cuadro de diálogo Agregar un puerto, en el cuadro Nombre, escriba SQL Server<nombreDeInstancia>.

  5. En el cuadro Número de puerto, escriba el número de puerto de la instancia de Database Engine (Motor de base de datos), por ejemplo, 1433, para la instancia predeterminada.

  6. Compruebe que TCP esté seleccionado y haga clic en Aceptar.

  7. Para abrir el puerto y exponer el servicio SQL Server Browser, haga clic en Agregar puerto, escriba SQL Server Browser en el cuadro de texto Nombre, escriba 1434 en el cuadro de texto Número de puerto, seleccione UDP y, a continuación, haga clic en Aceptar.

    [!NOTA]

    Para permitir el acceso de canalizaciones con nombre a través del firewall, también debe habilitar Compartir impresoras y archivos en el firewall.

  8. Cierre los cuadros de diálogo Firewall de Windows y Propiedades.

[!NOTA]

Haga clic en Agregar programa en el cuadro de diálogo Firewall de Windows para ver opciones adicionales, como conceder acceso a programas específicos y restringir el acceso a ciertas direcciones IP o subredes de red. Para obtener más información, vea la documentación de Windows.

Para obtener acceso a un programa a través del Firewall de Windows

  1. En el cuadro de diálogo Firewall de Windows, haga clic en la ficha Excepciones y, a continuación, haga clic en Agregar programa.

  2. Haga clic en Examinar y busque la instancia de SQL Server a la que desee obtener acceso a través del firewall; a continuación, haga clic en Abrir. De forma predeterminada, SQL Server se encuentra en C:\Archivos de programa\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe.

  3. Haga clic dos veces en Aceptar para cerrar el programa Firewall de Windows.

Para obtener un breve tutorial acerca de cómo configurar un puerto estático, abrir el firewall y conectarse a Database Engine (Motor de base de datos) mediante SQL Server Management Studio, vea Tutorial: Introducción al motor de base de datos.