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.
El servicio FTP para IIS es un componente clave de la Plataforma web de Windows. Proporciona una solución sólida y segura para FTP en un entorno de Windows. Los administradores del entorno de hospedaje compartido pueden usar FTP para IIS para permitir que sus clientes carguen y sincronicen su contenido. En el artículo Novedades de Microsoft y FTP se presentan las nuevas características de FTP. Estos son los aspectos destacados:
Integración con IIS:
- Nuevo almacén de configuración basado en el formato *.config basado en XML de .NET
- Nueva herramienta de administración
Seguridad y soporte técnico para nuevos estándares de Internet:
- FTP a través de SSL
- Cuentas que no son de Windows para la autenticación
- UTF8 e IPv6
Mejoras de hospedaje compartido:
- Hospedar FTP y contenido web desde el mismo sitio agregando un enlace FTP a un sitio web existente
- Compatibilidad con el nombre de host virtual, lo que permite hospedar varios sitios FTP en la misma dirección IP
- Aislamiento mejorado del usuario, a través de directorios virtuales por usuario
Características mejoradas de registro y compatibilidad:
- El registro FTP mejorado incluye todo el tráfico relacionado con FTP, el seguimiento único de las sesiones FTP, los subestados de FTP y los campos de detalles adicionales en los registros de FTP
- Respuestas de error detalladas al iniciar sesión localmente en un servidor FTP
- Información detallada al usar el seguimiento de eventos para Windows (ETW), que proporciona información adicional para solucionar problemas
En el vídeo siguiente se proporciona información general y demostraciones de varias de las características de FTP 7.0.
Implementación de FTP
FTP es uno de los servidores front-end de la configuración de hospedaje compartido.
En esta imagen se destacan varias características importantes de la implementación de FTP en el entorno de hospedaje compartido:
- El servicio FTP puede compartir el mismo equipo que se usa para la administración remota (administración web - WMSVC) y los servicios de MS Deploy.
- El equipo FTP forma parte de la configuración compartida que usan los servidores de granja de servidores web, lo que significa que los componentes instalados en este equipo también deben estar en los servidores de granja de servidores web. Sin embargo, dado que la granja de servidores web no se usará para procesar solicitudes FTP, se pueden detener los servicios FTP, Administración web (WMSVC) y MS Deploy.
- El equipo FTP no está pensado para hospedar aplicaciones web.
- El enrutador de firewall accesible desde Internet realiza el enrutamiento de puertos del tráfico FTP al servidor FTP.
Configuración de la implementación
El servidor FTP para IIS tiene varias características que lo hacen ideal para escenarios de hospedaje compartido. Las instrucciones siguientes aprovechan la nueva característica de aislamiento de usuario FTP. Esta característica permite:
- Los administradores limitan el acceso de usuario solo al directorio físico o virtual definido para el usuario. Esto implica implementar un único sitio FTP qie contendrá un directorio físico o virtual específico para cada nombre de usuario.
- Los administradores pueden habilitar SSL y usar un único certificado para todas las conexiones cuando los usuarios lo requieran explícitamente.
- Los usuarios pueden ver el sitio FTP como si fueran solo suyos. Cuando inicien sesión en el servidor FTP, estarán restringidos a su directorio específico y no podrán navegar por el árbol de directorios.
Pasos
Seleccione el equipo FTP e instale el nuevo FTP para el servicio IIS. Siga las instrucciones que se encuentran en Instalación y solución de problemas de FTP.
Cree una carpeta raíz que se usará para el sitio FTP, por ejemplo:
%*SystemDrive*%\inetpub\ftproot
.Opcionalmente, si hay requisitos de alta disponibilidad y/o equilibrio de carga de FTP, Microsoft proporciona soluciones como Equilibrio de carga de red o clústeres de conmutación por error, es posible que round robin de DNS sea suficiente.
Cree un sitio que permita conexiones SSL y autenticación básica. Siga los pasos descritos en la sección Crear sitio habilitado para SSL.
Habilite la característica Aislamiento de usuario. Siga los pasos descritos en la sección Configurar aislamiento de usuario para todos los directorios.
Configure las opciones de firewall FTP como se describe en la sección correspondiente a continuación.
Detención del Servicio de activación de procesos de Windows (WAS):
- En el símbolo del sistema, escriba services.msc. Se mostrará la consola de servicios.
- Haga doble clic en Servicio de activación de procesos de Windows.
- En el cuadro de diálogo Propiedades del servicio de activación de procesos de Windows, asegúrese de que el tipo de inicio de este servicio esté establecido como Deshabilitado. Haga clic en Detener y, a continuación, haga clic en Aceptar.
- En el símbolo del sistema, escriba services.msc. Se mostrará la consola de servicios.
Creación de un sitio habilitado para SSL
En esta sección, creará un sitio FTP que se puede abrir mediante cualquiera de sus cuentas de usuario.
Vaya al Administrador de IIS. 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 de texto Nombre del sitio FTP y, a continuación, vaya a la carpeta raíz que creó para el sitio FTP (ejemplo:
%*SystemDrive*%\inetpub\ftproot
).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 el cuadro de texto Dirección IP o acepte la selección predeterminada de "Todo sin asignar". En este ejemplo se usa la dirección IP de bucle invertido local "127.0.0.1".
- Escriba el puerto TCP/IP del sitio FTP en el cuadro de texto Puerto. En este ejemplo se usa el puerto predeterminado de "21".
- Asegúrese de que el cuadro de texto Host virtual esté en blanco. No use un nombre de host.
- Asegúrese de que la lista desplegable Certificados esté establecida en el certificado adecuado que quiera usar. En este ejemplo se usa un certificado autofirmado denominado "Mi certificado FTP". Para obtener instrucciones, consulte Creación de un certificado SSL autofirmado.
- Asegúrese de que esté seleccionada la opción Permitir SSL.
- 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 "Todos los usuarios" en la lista desplegable Permitir el acceso a.
- Seleccione Lectura y Escritura para la opción Permisos.
Cuando haya completado estos elementos, haga clic en Finalizar.
Resumen
Ahora ha creado un nuevo sitio FTP basado en SSL mediante el nuevo servicio FTP. Revise los elementos que completó en este procedimiento:
- Ha creado un nuevo sitio FTP denominado "Mi nuevo sitio FTP" que coloca la raíz de contenido del sitio en
%*SystemDrive*%\inetpub\ftproot
. - El sitio FTP se enlaza a la dirección IP del equipo en el puerto 21.
- Ha elegido permitir Capa de sockets seguros (SSL) para el sitio FTP y ha seleccionado el certificado.
- Ha habilitado la autenticación básica y ha creado una regla de autorización para todas las cuentas de usuario con acceso de lectura y escritura.
Para editar directamente los archivos de configuración XML, consulte Adición de la publicación FTP basada en SSL editando los archivos de configuración de IIS.
Configurar el aislamiento de usuario para todos los directorios
Al aislar a los usuarios de todos los directorios, todas las sesiones de usuario FTP quedan restringidas al directorio físico o virtual que tiene el mismo nombre de la cuenta de usuario FTP. Además, se omitirán todos los directorios virtuales globales creados. En este paso configurará el aislamiento de usuario para todos los directorios.
- Cree una carpeta en
%*SystemDrive*%\inetpub\ftproot\LocalUser\
. Esta carpeta contendrá todos los directorios de cuentas de usuario locales. Puede crear esta carpeta en el servidor de recursos compartidos de archivos (NAS). Al aprovisionar cuentas de usuario, también debe asignar acceso de lectura y escritura a las carpetas de contenido de los usuarios. - En el Administrador de IIS, haga clic en el nodo del sitio FTP que acaba de crear. Se mostrarán los iconos de todas las características de FTP.
- Haga doble clic en el icono Aislamiento de usuario FTP para abrir la característica de aislamiento de usuario FTP.
- Cuando se muestre la página de características Aislamiento de usuario FTP, seleccione Directorio de nombres de usuario (deshabilitar directorios virtuales globales)y, a continuación, haga clic en Aplicar en el panel Acciones.
Resumen
Revisión de los elementos que completó en este procedimiento: configuró el aislamiento de usuario FTP mediante la opción Directorio de nombres de usuario (deshabilitar directorios virtuales globales). Al usar este modo de aislamiento de usuario, todas las sesiones de usuario FTP están restringidas al directorio virtual o físico con el mismo nombre de la cuenta de usuario FTP y se omitirán todos los directorios virtuales globales creados.
Para crear directorios principales para cada usuario, primero debe crear un directorio virtual o físico en la carpeta raíz del servidor FTP con el nombre dominio o LocalUser para las cuentas de usuario locales. A continuación, debe crear un directorio físico o virtual para cada cuenta de usuario que acceda al sitio FTP. En la tabla siguiente se muestra la sintaxis del directorio principal para los proveedores de autenticación que se envían con el servicio FTP:
Tipo de cuenta de usuario | Sintaxis de Directorio principal físico |
---|---|
Usuarios anónimos | %FtpRoot%\LocalUser\Public |
Cuentas de usuario locales de Windows (requiere autenticación básica) | %FtpRoot%\LocalUser\%UserName% |
Cuentas de dominio de Windows (requiere autenticación básica) | %FtpRoot%\%UserDomain%\%UserName% |
Cuentas de usuario de autenticación personalizadas del Administrador de IIS o ASP.NET | %FtpRoot%\LocalUser\%UserName% |
Nota:
En la tabla anterior, %FtpRoot% es el directorio raíz del sitio FTP; por ejemplo, C:\Inetpub\Ftproot
.
Se omiten los directorios virtuales globales; los usuarios de FTP no pueden acceder a los directorios virtuales configurados en el nivel raíz del sitio FTP. Todos los directorios virtuales deben definirse explícitamente en la ruta de acceso del directorio principal virtual o físico de un usuario.
Configurar el firewall de FTP
Configurar el intervalo de puertos pasivos para el servicio FTP
En esta sección, configurará el intervalo de puertos de nivel de servidor para las conexiones pasivas al servicio FTP. Siga estos pasos:
Vaya al Administrador de IIS. En el panel Conexiones, haga clic en el nodo de nivel de servidor en el árbol.
Haga doble clic en el icono Compatibilidad con el firewall de FTP en la lista de características.
Especifique un intervalo de valores para el Intervalo de puerto del canal de datos.
Una vez que haya escrito el intervalo de puertos para el servicio FTP, haga clic en Aplicar en el panel Acciones para guardar los valores de configuración.
Nota:
El intervalo válido para los puertos es 1025-65535. (Los puertos 1-1024 están reservados para su uso por parte de los servicios del sistema).
Puede especificar un intervalo de puertos especial de "0-0" para que el servidor FTP use el intervalo dinámico de puertos TCP/IP de Windows.
Para obtener más información, consulte los siguientes artículos de Microsoft Knowledge Base:
- 174904: Información sobre las asignaciones de puertos TCP/IP (
https://support.microsoft.com/kb/174904/ "Information about TCP/IP port assignments"
) - 929851: El intervalo predeterminado de puertos dinámicos para TCP/IP ha cambiado en Windows Vista y en Windows Server 2008
- 174904: Información sobre las asignaciones de puertos TCP/IP (
Este intervalo de puertos tendrá que agregarse a la configuración permitida para el servidor de firewall.
Escriba la dirección IPv4 de la dirección externa del servidor de firewall para la configuración Dirección IP externa del firewall.
Una vez que haya escrito la dirección IPv4 externa para el servidor de firewall, haga clic en Aplicar en el panel Acciones para guardar las opciones de configuración.
Resumen
Revise los elementos que completó en este procedimiento:
- Ha configurado el intervalo de puertos pasivo para el servicio FTP.
- Ha configurado la dirección IPv4 externa para un sitio FTP específico.
Para obtener información sobre cómo configurar el Firewall de Windows Server 2008, consulte (Opcional) Paso 3: "Configurar la configuración del Firewall de Windows. Consulte también Más información sobre cómo trabajar con firewalls.
Ejemplos de nombres de servidor FTP
FTP es un servicio que se suele incluir cuando los hosts aprovisionan cuentas para sus clientes. Las instrucciones proporcionadas anteriormente habilitarán el FTP para el servicio IIS para los clientes, pero el nombre del servidor FTP, si se basa simplemente en el nombre de la compañía de hospedaje, puede tener un aspecto similar al siguiente:
ftp.hostingcompany.com Dicho nombre puede ser lo suficientemente claro para todos los usuarios; cuando los clientes lo usen para conectarse a su directorio FTP, se colocarán en su directorio y podrán ver solo sus carpetas. Pero es posible que el nombre del servidor FTP no sea tan atractivo para los clientes como un nombre de servidor FTP basado en su dominio reservado, como:
- ftp.customerdomain.com
- customerdomain.com
Si los clientes asocian el nombre de servidor FTP a su nombre de dominio reservado, la experiencia del servicio FTP será más personalizada y atractiva. Funcionalmente, es el mismo que el del ejemplo anterior, pero esta opción simplifica la nomenclatura de dominio para el cliente. Para configurar un nombre de servidor FTP personalizado para cada cliente, deberá crear registros DNS adecuados para el dominio del cliente. Esto requerirá pasos de aprovisionamiento adicionales. Si proporciona un nombre de servidor FTP personalizado para cada cliente, también puede proporcionar un nombre de servidor alternativo para evitar la interrupción del servicio FTP cuando se actualizan los nombres de dominio. Un ejemplo de un nombre alternativo para proporcionar junto con el nombre personalizado podría ser similar a:ftp.username.hostingcompany.com En tal caso, los clientes recibirían dos nombres de servidor y podrían conectarse al mismo directorio mediante cualquiera de los dos nombres; por ejemplo:
- ftp.customerdomain.com (o customerdomain.com)
- ftp.username.hostingcompany.com
Conexión desde Visual Web Developer
Este artículo se ha centrado hasta ahora en cómo implementar FTP en un entorno de hospedaje compartido. En esta sección se describe cómo los clientes pueden aprovechar Visual Web Developer 2008 (VWD) para publicar sus aplicaciones web mediante el servicio FTP proporcionado por el host. En el ejemplo siguiente se supone que:
- La empresa de hospedaje ha aprovisionado una cuenta a un usuario denominado "ftpuser1".
- La empresa de hospedaje ha creado la carpeta virtual correspondiente "ftproot\LocalUser*ftpuser1*".
Para publicar contenido de la aplicación web con VWD, ftpuser1 realiza los pasos siguientes:
Ftpuser1 abre el sitio web denominado "WebSite1" en Visual Web Developer 2008 (VWD).
Ftpuser1 selecciona Copiar sitio web en el menú Sitio web.
Ftpuser1 hace clic en Conectar.
Ftpuser1 escribe los valores siguientes:
- Nombre del servidor FTP proporcionado por la empresa de hospedaje. En el ejemplo siguiente, la dirección IP de bucle invertido es 127.0.0.1.
- Puerto En el ejemplo siguiente, el valor predeterminado es el puerto 21.
- Opción Modo pasivo.
- Opción de autenticación básica. Ftpuser1 anula la selección del inicio de sesión anónimo.
- Nombre de usuario: ftpuser1.
- Password.
Ftpuser1 hace clic en Abrir.
La carpeta Ftpuser1 aparece en el panel Sitio web remoto. En el ejemplo siguiente, el panel está vacío porque ftpuser1 está publicando el sitio web por primera vez.
Ftpuser1 publica todos los elementos de contenido en el panel Sitio web de origen seleccionando todos los archivos y carpetas y, a continuación, haciendo clic en Sincronizar:
- Ftpuser1 hace clic en el panel izquierdo.
- Ftpuser1 presiona Ctrl+Apara seleccionar todos los archivos.
- Ftpuser1 hace clic en Sincronizar (ubicado entre los dos paneles, tercer botón desde arriba).
Los archivos y carpetas se cargan en el servidor FTP y se almacenan en el directorio virtual del usuario: ftpuser1. (El usuario no conocerá el contenido de otros usuarios en el mismo servidor debido a la restricción de aislamiento de usuario).
Conclusión
En esta guía se proporciona la información necesaria para instalar y configurar un FTP para el servicio IIS en un entorno de hospedaje compartido. También muestra cómo los clientes pueden aprovechar Visual Web Developer para publicar su contenido en su directorio de sitio FTP.