Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

sftp-traefik-letsencrypt-docker-compose

SFTP con Traefik y Let's Encrypt en Docker Compose

Ficha actualizada 23 sept 2026, 12:36 · upstream 23 sept 2026, 12:10 · release v1.4.3

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es sftp-traefik-letsencrypt-docker-compose

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Este repositorio despliega un servidor SFTP (atmoz/sftp) detrás del router TCP de Traefik, con el dashboard de Traefik alojado mediante HTTPS a través de Let's Encrypt. Se provisionan dos cuentas chrooted desde .env; sus datos se almacenan en el host bajo /srv/sftpusers/<user>.

El proyecto combina tres componentes: un servidor SFTP ligero (atmoz/sftp), un router inverso basado en TCP (Traefik) y un sistema de autenticación SSL/TLS (Let's Encrypt). La arquitectura permite que los usuarios accedan a archivos compartidos mediante SSH sin necesidad de configurar servicios de almacenamiento tradicionales, todo ello desde una configuración Docker Compose simple.

La solución se destaca por su simplicidad operativa: el despliegue se realiza con un solo comando docker compose up -d. Además, la integración con Let's Encrypt permite obtener certificados SSL/TLS gratuitos para el acceso al SFTP, facilitando la autenticación segura sin necesidad de claves manuales o certificados gestionados manualmente.

El proyecto también incluye mecanismos de seguridad avanzada: cada usuario opera en un chroot separado, lo que previene que una fuga de permisos entre usuarios comprometa los datos de otros. Además, se implementan límites de recursos (CPU y memoria) por servicio, así como contenedores de infraestructura con capacidades restringidas para evitar privilegios innecesarios.

Finalmente, el repositorio cuenta con un pipeline CI/CD que verifica la frescura de las imágenes, ejecuta pruebas de despliegue y validación manual mediante SFTP. Esto garantiza que cada actualización mantenga la integridad del sistema y que los usuarios puedan verificar que su acceso está funcionando correctamente.

CASOS DE USO
  • Acceso remoto a archivos compartidos con autenticación segura
  • Servidor de archivos para equipos distribuidos sin necesidad de servidores dedicados
  • Gestión de permisos y accesos controlados mediante chroot por usuario
  • Autenticación segura mediante certificados SSL/TLS gratuitos (Let's Encrypt)
  • Despliegue simplificado con Docker Compose, ideal para entornos pequeños o medianos
PUNTOS DESTACADOS
  • Integración nativa entre Traefik y SFTP sin necesidad de configuraciones manuales adicionales
  • Autenticación segura mediante certificados SSL/TLS gratuitos gestionados por Let's Encrypt
  • Arquitectura chrooted que previene fugas de permisos entre usuarios
  • Pipeline CI/CD con verificación de frescura de imágenes y pruebas de despliegue
  • Soporte para múltiples niveles de actualización (versión, imagen completa o ambas)
PRECAUCIONES
  • No incluye un sistema de almacenamiento persistente propio; los datos residen en el host
  • Depende de la disponibilidad del servicio SFTP upstream (atmoz/sftp)
  • El chroot por usuario no permite acceso entre usuarios sin permisos adicionales
  • La autenticación con contraseña es la más básica disponible
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU1 vCPUrecomendación inicial
MEMORIA1 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Para desplegar, ejecuta docker compose -f sftp-traefik-letsencrypt-docker-compose.yml -p sftp up -d. Asegúrate de crear las redes Docker necesarias (traefik-network y sftp-network) y los directorios de datos en /srv/sftpusers/. Configura la variable TRAEFIK_PORT para el puerto del router TCP. Para actualizaciones, usa ./update.sh --dry-run primero. Verifica que el firewall permita el puerto SFTP (2222 por defecto). Guarda las contraseñas en .env y considera generar nuevas claves de acceso tras cada actualización.

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
No detectados
SERVICIOS
S3/MinIO
BASES DE DATOS
No detectadas
PUERTOS
No detectados
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.