Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Por Robert McMurray
Compatibilidad
Versión | Notas |
---|---|
IIS 7.5 | El servicio FTP 7.5 se distribuye como una característica de IIS 7.5 en Windows 7 y Windows Server 2008 R2. |
IIS 7.0 | Los servicios FTP 7.0 y FTP 7.5 se enviaron fuera de banda para IIS 7.0, lo que requería descargar e instalar el servicio desde la siguiente dirección URL: https://www.iis.net/download/FTP. |
Introducción
Microsoft ha creado un nuevo servicio FTP que se ha reescrito completamente para Windows Server® 2008. Este servicio FTP actualizado incorpora muchas características nuevas que permiten a los autores web publicar contenido mejor que antes, y ofrece a los administradores web más opciones de seguridad e implementación.
Una de las características es FTP a través de capa de sockets seguros (SSL), que permite cifrar las sesiones entre un cliente FTP y un servidor. En este documento se explica la configuración de un sitio FTP y la configuración de ese sitio para usar SSL con la nueva interfaz de usuario de FTP, que permite editar directamente los archivos de configuración de IIS 7.0. Contiene:
- Requisitos previos
- OPCIONAL: Creación de un certificado SSL autofirmado
- Creación de un sitio FTP habilitado para SSL mediante el Administrador de IIS 7.0
- Cómo agregar una publicación FTP basada en SSL editando los archivos de configuración de IIS 7.0
Nota:
Este tutorial contiene una serie de pasos en los que se inicia sesión en el sitio FTP mediante la cuenta de administrador local. Estos pasos solo deben seguirse en el propio servidor usando la dirección de bucle invertido o a través de SSL desde un servidor remoto. Si prefiere usar una cuenta de usuario independiente en lugar de la cuenta de administrador, debe crear las carpetas adecuadas y establecer los permisos correctos para esa cuenta de usuario cuando sea necesario.
Requisitos previos
Los siguientes elementos deben instalarse para completar los procedimientos de este artículo:
IIS 7.0 debe estar instalado en Windows Server 2008 y también se debe instalar Internet Information Services Manager.
Nuevo servicio FTP. Puede descargar e instalar el servicio FTP desde el sitio web https://www.iis.net/ mediante uno de los vínculos siguientes:
- FTP 7.5 para IIS 7.0 (x64)
- FTP 7.5 para IIS 7.0 (x86)
Deberá crear una carpeta raíz para la publicación de FTP:
Cree una carpeta en
%SystemDrive%\inetpub\ftproot
.Establezca los permisos para permitir el acceso para el grupo de administradores:
- Abra un símbolo del sistema.
- Escribe el siguiente comando:
ICACLS "%SystemDrive%\inetpub\ftproot" /Grant administrators:F /T
- Cierre el símbolo del sistema.
Nota:
La configuración que se muestra en este tutorial especifica %SystemDrive%\inetpub\ftproot
como la ruta de acceso al sitio FTP. No es necesario usar esta ruta de acceso. Sin embargo, si cambia la ubicación del sitio, deberá cambiar las rutas de acceso relacionadas con el sitio que se usan en este tutorial.
OPCIONAL: Creación de un certificado SSL autofirmado
En esta tarea opcional creará un certificado SSL autofirmado que usará para probar el sitio FTP.
Nota:
Si va a configurar un sitio FTP para la actividad basada en Internet, obtendrá un certificado SSL de una de las muchas entidades de certificación, como VeriSign, Thawte, DigiCert, etc. Para obtener más información, consulte Entidades de certificación.
- Abra el Administrador de Internet Information Services (IIS 7.0).
- Haga clic en el equipo en el nodo superior del árbol Conexiones y, a continuación, haga doble clic en la característica Certificados de servidor.
- Haga clic en Crear certificado autofirmado en el panel Acciones.
- Escriba "Mi certificado FTP" como nombre del nuevo certificado y, a continuación, haga clic en Aceptar.
Creación de un sitio FTP habilitado para SSL mediante el Administrador de IIS 7.0
Paso 1: Usar el Asistente para sitios FTP para crear un sitio FTP basado en SSL
En este primer paso, creará un sitio FTP que solo se puede abrir mediante la cuenta de administrador.
Vaya al Administrador de IIS 7.0. En el panel Conexiones, haga clic en el nodo Sitios del árbol.
Haga clic con el botón derecho en el nodo Sitios del árbol y haga clic en Agregar sitio FTP o en Agregar sitio FTP en el panel Acciones.
Cuando aparezca el asistente para agregar un sitio FTP:
Escriba "Mi nuevo sitio FTP" en el cuadro Nombre del sitio FTP y vaya a la carpeta
%SystemDrive%\inetpub\ftproot
que creó en la sección Requisitos previos.Nota:
Si decide escribir la ruta de acceso a la carpeta de contenido, puede usar variables de entorno en las rutas de acceso.
Haga clic en Next.
En la página siguiente del asistente:
Elija una dirección IP para el sitio FTP en la lista desplegable Dirección IP o acepte la selección predeterminada de "Todo sin asignar". Dado que usará la cuenta de administrador más adelante en este tutorial, asegúrese de restringir el acceso al servidor y escriba la dirección IP de bucle invertido local del equipo escribiendo "127.0.0.1" en el cuadro Dirección IP.
Normalmente, escribiría el puerto TCP/IP para el sitio FTP en el cuadro Puerto. Para este tutorial, acepte el puerto predeterminado de 21.
Para este tutorial, no se usa un nombre de host, por lo que debe asegurarse de que el cuadro Host virtual esté en blanco.
Asegúrese de que la lista desplegable Certificados esté establecida en el certificado SSL. Por ejemplo, si ha seguido el paso opcional para crear un certificado autofirmado, el cuadro desplegable debe indicar "Mi certificado FTP".
Asegúrese de que la opción Permitir SSL esté seleccionada.
Haga clic en Next.
En la página siguiente del asistente:
Seleccione Básico para la configuración Autenticación.
Para la configuración Autorización:
- Elija "Usuarios especificados" en la lista desplegable Permitir el acceso a.
- Escriba "administrador" para el nombre de usuario.
- Seleccione Lectura y Escritura para la opción Permisos.
Cuando haya completado estos elementos, haga clic en Finalizar.
Resumen
Ha creado correctamente un nuevo sitio FTP basado en SSL mediante el nuevo servicio FTP.
Para resumir los elementos que completó en este paso:
- Ha creado un nuevo sitio FTP denominado "Mi nuevo sitio FTP", con la raíz de contenido del sitio en
%SystemDrive%\inetpub\ftproot
. - Debe enlazar el sitio FTP a la dirección de bucle invertido local del equipo en el puerto 21.
- Ha elegido requerir capa de sockets seguros (SSL) para el sitio FTP y seleccionar el certificado SSL.
- Ha habilitado la autenticación básica y ha creado una regla de autorización para la cuenta de administrador local para el acceso de lectura y escritura.
Paso 2: Configuración adicional de SSL de FTP
La directiva SSL para FTP se puede personalizar por sitio. Se pueden especificar diferentes configuraciones para el control y los canales de datos. En este paso, configurará opciones SSL adicionales para el sitio FTP que garantizan que todas las credenciales de usuario estén cifradas, aunque el resto de la actividad FTP no lo esté.
Vaya al Administrador de IIS 7.0. Haga clic en el nodo del sitio FTP que creó en el paso 1. Se muestran los iconos de todas las características de FTP.
Para configurar las opciones SSL, haga doble clic en el icono Configuración de SSL de FTP para abrir la página de características de configuración de SSL.
Cuando se muestre la página Configuración de SSL de FTP, seleccione la opción Personalizado y, a continuación, haga clic en el botón Avanzado.
Cuando se muestre el cuadro de diálogo Directiva SSL avanzada:
Seleccione la opción Requerir solo para las credenciales del canal de control.
Nota:
Esta configuración requiere que todos los nombres de usuario y contraseñas se cifren a través de SSL, pero el cliente puede elegir si desea cifrar las demás actividades del canal de control.
Seleccione la opción Permitir para el canal de datos.
Nota:
Esta configuración permite al cliente elegir si se va a cifrar cualquier actividad del canal de datos.
Cuando haya completado estos elementos, haga clic en Aceptar.
En la página Configuración de SSL de FTP, haga clic en Aplicar en el panel Acciones para guardar la configuración de SSL.
Resumen
Para resumir los elementos que completó en este paso:
- Ha configurado la directiva SSL del canal de control para requerir que todas las credenciales de usuario estén cifradas y que los clientes FTP puedan determinar si se deben cifrar las demás actividades del canal de control.
- Configuró la directiva SSL del canal de datos para permitir que los clientes FTP determinen si se va a cifrar cualquier actividad del canal de datos.
Iniciar sesión en el sitio FTP
En el paso 1, ha creado un sitio FTP al que puede acceder la cuenta de administrador. En el paso 2, ha configurado la directiva SSL del canal de control para exigir que todas las credenciales de usuario se cifren al tiempo que permite a los clientes FTP elegir si se cifran o no los demás canales de control y la actividad del canal de datos.
Al iniciar sesión en el servidor FTP mediante un cliente FTP compatible con SSL, el servidor FTP admite las siguientes opciones de seguridad explícitas:
- TLS-C/TLS: use TLS para la conexión con RFC2228 valores predeterminados. Esto significa que no hay ninguna protección implícita de la conexión de datos.
- TLS-P/SSL: use TLS para la conexión. Esto significa que la conexión de datos está protegida implícitamente.
Esta configuración se puede configurar al especificar las opciones de conexión SSL en la mayoría de los clientes FTP de terceros.
Cómo agregar una publicación FTP basada en SSL editando los archivos de configuración de IIS 7.0
También puede agregar la publicación FTP basada en SSL a un sitio web existente editando los archivos de configuración de IIS 7.0.
Nota:
La edición del archivo applicationHost.config requiere permisos administrativos completos. Use uno de estos dos métodos:
- Inicie sesión en el equipo con la cuenta de "administrador" local.
Or
- Si ha iniciado sesión con una cuenta con permisos administrativos que no es la cuenta de "administrador" local, abra el Bloc de notas con la opción "Ejecutar como administrador".
Nota:
Se requiere uno de los pasos anteriores porque el componente de seguridad Control de cuentas de usuario (UAC) de los sistemas operativos Windows Vista y Windows Server 2008 impide el acceso al archivo applicationHost.config. Para más información sobre UAC, consulte Control de cuentas de usuario.
Los pasos siguientes le guían por toda la configuración necesaria para agregar la publicación de FTP para el sitio web predeterminado.
Paso 1: Recuperar el hash del certificado SSL:
- En la característica Certificados de servidor, haga doble clic en el certificado SSL. Por ejemplo, si siguiera el paso opcional para crear un certificado autofirmado, haría doble clic en el certificado denominado "Mi certificado FTP".
- Haga clic en la pestaña Detalles .
- Desplácese por los campos hasta que encuentre el valor Huella digital.
- Resalte el valor Huella digital; los datos se muestran como:
"57 68 6F 61 20 44 75 64 65 2C 20 49 49 53 20 52 6F 63 6B 73" - Copie los datos hexadecimales del cuadro de texto y péguelos en el Portapapeles. A continuación, abra el Bloc de notas de Windows y pegue los datos en un documento en blanco.
Nota:
Usará esta información más adelante.
Paso 2: Agregar FTP al sitio web predeterminado
Usando un editor de texto como el Bloc de notas de Windows, abra su archivo applicationHost.config, que se encuentra en su carpeta
%SystemRoot%\System32\inetsrv\config
de manera predeterminada.Busque la sección del sitio web predeterminado. Debería ser similar al ejemplo siguiente:
<site name="Default Web Site" id="1"> <application path="/"> <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" /> </application> <bindings> <binding protocol="http" bindingInformation="*:80:" /> </bindings> </site>
Cree un nuevo elemento de enlace en la colección bindings. Establezca el valor del atributo protocol en el nuevo elemento de enlace para que contenga "ftp" y cambie el valor port del atributo bindingInformation para que contenga "21". La configuración del sitio web predeterminado debería parecerse ahora al ejemplo siguiente:
<site name="Default Web Site" id="1"> <application path="/"> <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" /> </application> <bindings> <binding protocol="http" bindingInformation="*:80:" /> <binding protocol="ftp" bindingInformation="*:21:" /> </bindings> </site>
Agregue una sección <ftpServer> debajo de la etiqueta <bindings> de cierre que contendrá la autenticación y la configuración de SSL.
Nota:
Los valores de autenticación de los sitios FTP se configuran en el nivel de sitio, a diferencia de la autenticación de los sitios web, que se pueden configurar por dirección URL.
<ftpServer> <security> <authentication> <anonymousAuthentication enabled="false" userName="IUSR" /> <basicAuthentication enabled="true" /> </authentication> <ssl serverCertHash="" controlChannelPolicy="SslRequire" dataChannelPolicy="SslRequire" /> </security> </ftpServer>
Copie y pegue los datos de la huella digital del certificado SSL en el atributo serverCertHash del elemento SSL. Quite todos los espacios de los datos de la huella digital.
Nota:
Si no convierte los datos hexadecimales en mayúsculas, no se mostrará más adelante en el Administrador de IIS.
La configuración del sitio web predeterminado debe contener ahora algo parecido al ejemplo siguiente:
<site name="Default Web Site" id="1"> <application path="/"> <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" /> </application> <bindings> <binding protocol="http" bindingInformation="*:80:" /> <binding protocol="ftp" bindingInformation="*:21:" /> </bindings> <ftpServer> <security> <authentication> <anonymousAuthentication enabled="false" /> <basicAuthentication enabled="true" /> </authentication> </security> <ssl serverCertHash="57686F6120447564652C2049495320526F636B73" controlChannelPolicy="SslRequire" dataChannelPolicy="SslRequire" /> </ftpServer> </site>
Desplácese hasta la parte inferior del archivo applicationHost.config y agregue la sección location para el sitio web predeterminado que contendrá la configuración de autorización.
Nota:
Como se muestra en este ejemplo, la configuración de autorización de los sitios FTP se configura por dirección URL.
<location path="Default Web Site"> <system.ftpServer> <security> <authorization> <add accessType="Allow" users="administrator" permissions="Read, Write" /> </authorization> </security> </system.ftpServer> </location>
Guarde el archivo applicationHost.config.
Ahora debería poder iniciar sesión en el sitio web predeterminado mediante un cliente FTP basado en SSL.
Resumen
En esta tarea agregó la publicación FTP basada en SSL al sitio web predeterminado editando los archivos de configuración de IIS 7.0. Para resumir los elementos que completó en esta tarea:
- Ha agregado un enlace FTP al sitio web predeterminado.
- Habilitó la autenticación básica de FTP y deshabilitó la autenticación anónima FTP para el sitio web predeterminado.
- Configuró el sitio para requerir SSL para toda la actividad del canal de control y del canal de datos.
- Configuró la cuenta de administrador para permisos de lectura y escritura para el sitio web predeterminado.