,

Instalación de servicios de transferencia de ficheros (FTP)

·

Qué es FTP y cómo funciona (puertos, control/datos)

FTP es un protocolo cliente-servidor para transferir archivos en redes TCP/IP. La sesión usa dos canales: uno de control (comandos/respuestas) que normalmente va por 21/TCP, y otro de datos para la transferencia de ficheros. Históricamente, el canal de datos en modo activo sale del 20/TCP del servidor hacia un puerto efímero del cliente. El diseño original no cifra nada: ni credenciales ni datos; por eso hoy es habitual recurrir a FTPS o SFTP para añadir cifrado.

Ideas clave

  • Dos canales: control (21/TCP) + datos.
  • FTP clásico viaja en texto plano; FTPS/SFTP añaden cifrado.

Modo activo vs pasivo: cuál elegir y cómo configurarlo

  • Activo: el cliente abre el control al 21/TCP y, cuando hay que transferir, el servidor inicia la conexión de datos desde 20/TCP hacia un puerto efímero del cliente. Suele chocar con firewalls del lado cliente.
  • Pasivo (recomendado hoy): el cliente inicia ambas conexiones. El servidor “presta” un puerto alto (mayor a 1023) para datos y el cliente conecta hacia él. Funciona mejor tras NAT/firewalls, pero exige abrir un rango de puertos pasivos en el servidor.

Checklist pasivo seguro

  • Define un rango corto de puertos pasivos en el servidor y ábrelo en el firewall.
  • Si publicas en Internet, asegúrate de conocer la IP externa del servidor/NAT.

Tipos de acceso: anónimo vs usuarios con cuenta

  • Anónimo: login “anonymous”; normalmente solo lectura en carpetas públicas. En IIS, el acceso anónimo usa la cuenta IUSR y necesita permisos NTFS de lectura sobre la carpeta publicada.
  • Autenticado: usa cuentas de Windows (locales o de dominio). Recomendado para entornos privados: controlas qué puede hacer cada usuario.

Nota útil: si varios usuarios comparten servidor, activa el aislamiento de usuarios para que cada uno aterrice en su carpeta y no vea la de otros.

Instalar IIS/FTP en Windows 10/11 y Windows Server

  • Windows 10/11: Panel de control → Activar o desactivar característicasInternet Information ServicesServidor FTP (+ consola de administración). Alternativamente, Configuración → Características opcionales → “Servidor FTP”.
  • Windows Server: Administrador del servidor → Agregar roles → Servidor Web (IIS)Servidor FTP. Incluye las herramientas de administración para configurar.

Tras instalar el rol, aún no existe ningún sitio FTP: hay que crearlo en IIS.

Crear y configurar tu primer sitio FTP (binding, SSL, auth)

  1. IIS ManagerSitiosAgregar sitio FTP…. Elige nombre y la carpeta raíz (por ejemplo, C:\FTP\Datos o C:\inetpub\ftproot).
  2. Enlace (binding): IP (o “Todas”), puerto 21, host opcional. Decide SSL/TLS: para pruebas, Permitir SSL; en producción, Requerir SSL con un certificado válido (FTPS).
  3. Autenticación: desactiva Anónima si quieres acceso solo con cuentas; activa Básica. Autorización: “Usuarios especificados” o “Todos los usuarios (autenticados)” con Lectura y/o Escritura según necesites.

FTPS en IIS requiere instalar un certificado y habilitar SSL (permitir o requerir). Los clientes usarán AUTH TLS (FTP explícito) o ftps://.

Usuarios, permisos NTFS y aislamiento: seguridad por mínimo privilegio

Crea cuentas locales dedicadas (p. ej., ftpusuario1) o un grupo (ftpusers). Otorga solo los permisos NTFS necesarios sobre la carpeta raíz y ajusta las reglas de autorización del sitio FTP en IIS en consecuencia (lectura/escritura). Si habilitas anónimo, recuerda la cuenta IUSR con lectura. Considera aislamiento de usuarios si cada persona debe ver solo su espacio.

Patrón recomendado

  • Raíz C:\FTP\Datos (solo lectura global).
  • Subcarpeta upload con escritura para usuarios/grupos concretos.
  • Evita Control total salvo administración.

Pruebas y diagnóstico: ftp.exe, Explorador y clientes GUI

Desde el servidor

  • CLI: ftp 127.0.0.1 → login → dir, get archivo, put archivo. Verifica banner, login y transferencias.
  • Explorador: ftp://localhost/ o ftp://usuario:contraseña@localhost/. En red, ftp://IP-del-servidor/. Para subir con comodidad, añade la ubicación de red.
  • GUI: FileZilla/WinSCP → IP, 21, modo pasivo recomendado → prueba subida/descarga.

Si falla

  • Revisa Firewall de Windows (regla del servidor FTP/puerto 21).
  • Para Internet, configura NAT/port-forwarding (21 y rango pasivo).

Cuotas, límites y logs: control de uso y auditoría

  • Permisos finos: combina NTFS (acceso real al disco) + reglas FTP (lo que el servicio permite).
  • Cuotas: NTFS por usuario o FSRM para políticas avanzadas por carpeta.
  • Límites: conexiones simultáneas, timeouts, e incluso ancho de banda en algunos servidores.
  • Logs: IIS registra conexiones y transferencias en C:\inetpub\logs\LogFiles\. Úsalos para detectar errores/abusos.

ASCII vs Binario: evitar corrupciones de archivo

  • ASCII: solo para texto; convierte finales de línea entre sistemas. Úsalo mal en binarios y corromperás el archivo.
  • Binario: byte a byte para todo lo no textual (PDF, imágenes, ZIP, DOCX…). Es la opción segura por defecto; muchos clientes ya la aplican o tienen “auto”.

FTPS (implícito/explícito) y SFTP: asegurar tus transferencias

  • FTPS implícito: escucha por convención en 990/TCP; siempre cifrado. Está en desuso, pero aún soportado.
  • FTPS explícito (FTPES): el cliente negocia AUTH TLS sobre 21/TCP. Recomendado si necesitas compatibilidad FTP con cifrado. En IIS, instala certificado y requiere SSL si tu política lo demanda.
  • SFTP: no es FTP; va sobre SSH (22/TCP), una sola conexión, buen paso por firewalls. En Windows se puede habilitar OpenSSH Server o usar software de terceros.

Conclusión

Con IIS en Windows puedes desplegar un servidor FTP en minutos y dejarlo listo para producción si combinas: modo pasivo bien acotado, cuentas/NTFS por mínimo privilegio, FTPS o SFTP según el caso, y logs/cuotas para control. Con los checks de prueba (CLI, Explorador, GUI) tendrás trazabilidad y diagnósticos rápidos.

FAQs

¿Qué puertos usa FTP?
21/TCP para control y, en activo, 20/TCP para datos; en pasivo, un puerto alto que define el servidor.

¿Activo o pasivo?
Pasivo suele funcionar mejor tras NAT/firewalls; define un rango corto y ábrelo en el firewall del servidor.

¿Cómo pruebo rápido?
ftp 127.0.0.1, dir, get, put; o ftp://localhost/ en Explorador; o FileZilla con modo pasivo.

¿FTPS o SFTP?
FTPS añade TLS a FTP (implícito 990, explícito AUTH TLS en 21). SFTP es SSH (22), una sola conexión. Elige según tu ecosistema.

julian lopez jimenez

Hola, encantado de conocerte.

Regístrate para recibir las últimas entradas, cada domingo.

¡No hago spam!

Recibe nuevas entradas cada semana

Una seleccion de articulos, recursos y novedades sobre informatica, FP y tecnologia aplicada.

julian lopez jimenez

Hola, encantado de conocerte.

Regístrate para recibir las últimas entradas, cada domingo.

¡No hago spam!

Tambien te puede interesar