Microsoft Windows XP Service Pack 2 (SP2) incluye Firewall de Windows. Firewall de Windows es una versión mejorada de Firewall de conexión a Internet (ICF). De forma predeterminada, Windows Firewall está habilitado en los equipos que ejecutan Windows XP Service Pack 2. Firewall de Windows se bloquea algunas conexiones de red usan TCP/IP, que utilice canalizaciones con nombre, o que utilice llamada a procedimiento remoto (RPC) multiprotocolo. Este bloqueo puede afectar a Microsoft Data Engine (MSDE), Microsoft SQL Server 2000 y Microsoft SQL Server 2005.
Si tiene una aplicación que requiere SQL Server o MSDE tener acceso a la red utilizando canalizaciones con nombre, TCP/IP, o mediante RPC, puede utilizar las secuencias de comandos que se proporcionan en la sección "Más información" para abrir los puertos necesarios mediante programación en lugar de utilizar Firewall de Windows.
En este artículo se incluyen dos secuencias de comandos. La primera secuencia de comandos configura mediante programación Windows Firewall para permitir que SQL Server para escuchar en la red en todos los protocolos. Firewall de Windows para permitir que SQL Server escucha en TCP/IP sólo configura mediante programación con la segunda secuencia de comandos.
Nota Recomendamos que abrir puertos en sólo una base según sea necesario.
Las secuencias de comandos que se tratan en este artículo se proporcionan (RPC) multiprotocolo a través de acceso de canalizaciones con nombre sólo. Si está ejecutando RPC a través de TCP, consulte el siguiente artículo de Knowledge Base para obtener información acerca del uso de TCP/IP:
841252
(http://support.microsoft.com/kb/841252/
)
Cómo habilitar manualmente TCP/IP en el Service Pack 2 de Windows XP para SQL Server 2000
Una secuencia que se puede utilizar para abrir todos los puertos
La secuencia de comandos que se describe mediante programación en esta sección configura Firewall de Windows para permitir que SQL Server escuchar en la red en todos los protocolos.
notas importantes acerca de esta secuencia de comandos - Sólo se debe ejecutar esta secuencia de comandos en equipos que ejecutan Windows XP Service Pack 2.
- Esta secuencia de comandos tiene opciones adicionales para habilitar canalizaciones y para habilitar (RPC) multiprotocolo.
- Esta secuencia de comandos permite (RPC) multiprotocolo sólo a través de nombre canalizaciones y sólo se abre el puerto 445.
- Esta secuencia de comandos no proporciona funcionalidad para especificar el ámbito.
Para crear la secuencia de comandos, siga estos pasos:
- Inicie el Bloc de notas.
- Copie y pegue el código siguiente en el Bloc de notas:
echo off
if "%1"=="-np" goto HandleNp
if "%1"=="-rpc" goto HandleRpc
if "%1"=="-tcp" goto HandleTcp
if "%1"=="-browser" goto HandleBrowser
rem Usage
:Usage
echo "Usage: setupSqlServerPortAll -[np | rpc | tcp | browser] -port [portnum] -[enable | disable]
echo "-np : Setup SQLServer to listen on Named Pipe connections for local subnet only"
echo "-rpc : Setup SQLServer to listen on RPC multiprotocol for local subnet only"
echo "-tcp : Setup SQLServer to listen on TCP connections for local subnet only"
echo " Must specify a port if -tcp option is chosen."
echo "-browser : Setup SQLServer to provide SSRP service to support named instances"
echo "-port : Applies only for tcp"
echo " One of the following options MUST be specified"
echo "-enable: Enables a port"
echo "-disable: Disables a port"
goto Exit
:HandleTcp
echo %2
if "%2"=="-port" goto cont
goto Usage
:cont
if "%3"=="" goto Usage
if "%4"=="-enable" goto EnableTcp
if "%4"=="-disable" goto DisableTcp
goto Usage
:EnableTcp
echo "Enabling SQLServer tcp access for port %3 local subnet only"
netsh firewall set portopening tcp %3 SQL%3 ENABLE subnet
goto Exit
:DisableTcp
echo Disabling SQLServer tcp access for port %3 local subnet only"
netsh firewall set portopening tcp %3 SQL%3 disable subnet
goto Exit
:HandleNp
if "%2"=="-enable" goto EnableNp
if "%2"=="-disable" goto DisableNp
goto Usage
:EnableNp
echo "Enabling SQLServer named pipe access for local subnet only"
netsh firewall set portopening tcp 445 SQLNP ENABLE subnet
goto Exit
:DisableNp
echo Disabling SQLServer named pipe access for local subnet only"
netsh firewall set portopening tcp 445 SQLNP DISABLE subnet
goto Exit
:HandleRpc
if "%2"=="-enable" goto EnableRpc
if "%2"=="-disable" goto DisableRpc
goto Usage
:EnableRpc
echo "Enabling SQLServer multiprotocol access for local subnet only"
netsh firewall set portopening tcp 445 SQLNP enable subnet
goto Exit
:DisableRpc
echo Disabling SQLServer multiprotocol access for local subnet only"
netsh firewall set portopening tcp 445 SQLNP disable subnet
goto Exit
:HandleBrowser
if "%2"=="-enable" goto EnableBrowser
if "%2"=="-disable" goto DisableBrowser
goto Usage
:EnableBrowser
echo "Enabling SQLServer SSRP service for local subnet only"
netsh firewall set portopening udp 1434 SQLBrowser enable subnet
goto Exit
:DisableBrowser
echo "Enabling SQLServer SSRP service for local subnet only"
netsh firewall set portopening udp 1434 SQLBrowser disable subnet
goto Exit
:Exit
endlocal
- Guarde el archivo como un archivo .txt y nombre del archivo ConfigSQLPorts.txt.
- Cambie el nombre del archivo ConfigSQLPorts.txt ConfigSQLPorts.bat.
Cuando se ejecuta la secuencia de comandos en el archivo ConfigSQLPorts.bat, debe utilizar el equipo que se guarda la secuencia de comandos. Para ejecutar la secuencia de comandos, siga estos pasos:
- Haga clic en Inicio , haga clic en Ejecutar , escriba cmd y, a continuación, haga clic en Aceptar .
- En la ventana de comandos, utilice el comando "cd" para cambiar las carpetas hasta que esté en la misma carpeta que se guarda el archivo ConfigSQLPorts.bat en. Por ejemplo, si se guarda el archivo ConfigSQLPorts.bat en C:\Myfiles, sería escriba myfiles CD en el símbolo del sistema y presione ENTRAR. Esto cambiará la carpeta de C:\Myfiles.
- Para ejecutar la secuencia de comandos ConfigSQLPorts.bat, escriba ConfigSQLPorts.bat en el símbolo del sistema y, a continuación, presione ENTRAR.
Una secuencia que se puede utilizar para abrir sólo los puertos TCP/IP
La secuencia de comandos que se describe en esta sección configura Windows Firewall para permitir que SQL Server para escuchar sólo en TCP/IP.
Para crear la secuencia de comandos, siga estos pasos:
- Inicie el Bloc de notas.
- Copie y pegue el código siguiente en el Bloc de notas:
echo off
setlocal
if "%1"=="-port" goto HandleTcp
rem Usage
:Usage
echo "Usage: setupSqlServerPort -port [portnum] -[enable | disable] [ALL | SUBNET]"
echo -port : Specifies the port to be enabled or disabled. Port is not optional.
echo -enable: Enables a port
echo -enable ALL: enables access for ALL
echo -enable SUBNET: enables access for SUBNET
echo -disable: Disables a port
echo one of -enable or -disable must be specified
echo the default scope is SUBNET only
goto Exit
:HandleTcp
if "%2"=="" goto Usage
if "%3"=="-enable" goto EnableTcp
if "%3"=="-disable" goto DisableTcp
goto Usage
:EnableTcp
set SCOPE="%4"
if "%4"=="ALL" echo "Enabling SQLServer tcp access for port %2 ALL access"
if "%4"=="SUBNET" echo "Enabling SQLServer tcp access for port %2 subnet only access"
if "%4"=="" set SCOPE="SUBNET"
netsh firewall set portopening tcp %2 SQL_PORT_%2 ENABLE %SCOPE%
goto Exit
:DisableTcp
echo Disabling SQLServer tcp access for port %2"
netsh firewall set portopening tcp %2 SQL_PORT_%2 disable
goto Exit
:Exit
endlocal
- Guarde el archivo como un archivo .txt y nombre del archivo SetupSqlServerPort.txt.
- Cambie el nombre del archivo SetupSqlServerPort.txt SetupSqlServerPort.bat.
Cuando se ejecuta la secuencia de comandos SetupSqlServerPort.bat, debe utilizar el equipo que se guarda la secuencia de comandos. Para ejecutar la secuencia de comandos, siga estos pasos:
- Haga clic en Inicio , haga clic en Ejecutar , escriba cmd y, a continuación, haga clic en Aceptar .
- En la ventana de comandos, utilice el comando "cd" para cambiar las carpetas hasta que esté en la misma carpeta que se guarda el archivo SetupSqlServerPort.bat en. Por ejemplo, si se guarda el archivo SetupSqlServerPort.bat en C:\Myfiles, sería escriba myfiles CD en el símbolo del sistema y presione ENTRAR. Esto cambiará la carpeta de C:\Myfiles.
- Para ejecutar la secuencia de comandos SetupSqlServerPort.bat, en el símbolo del sistema escriba setupSqlServerPort.bat y, a continuación, presione ENTRAR.
Para obtener información adicional acerca de cómo configurar SQL Server 2000 y Windows XP Service Pack 2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
841249
(http://support.microsoft.com/kb/841249/
)
Cómo configurar Windows XP Service Pack 2 (S) para su uso con SQL Server
Id. de artículo: 839980 - Última revisión: miércoles, 11 de enero de 2006 - Versión: 3.5
La información de este artículo se refiere a:
- Microsoft SQL Server 2000 Desktop Engine (Windows)
- Microsoft SQL Server 7.0 Standard Edition
- Microsoft SQL Server, Desktop Edition
- Microsoft Windows XP Embedded
- Microsoft SQL Server 2005 Standard Edition
- Microsoft SQL Server 2005 Developer Edition
- Microsoft SQL Server 2005 Enterprise Edition
- Microsoft SQL Server 2005 Express Edition
- Microsoft SQL Server 2005 Workgroup Edition
- Microsoft SQL Server 2000 Standard Edition
| kbmt kbfirewall kbinfo KB839980 KbMtes |
Traducción automáticaIMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés):
839980
(http://support.microsoft.com/kb/839980/en-us/
)