ProFTPD

ProFTPD è un server FTP professionale e altamente configurabile. Permette il trasferimento di file tramite protocollo FTP/FTPS con supporto per utenti virtuali e controllo granulare degli accessi.

Cos'è ProFTPD

ProFTPD è un server FTP che:

  • Supporta FTP e FTPS (FTP over SSL/TLS)
  • Offre configurazione flessibile simile ad Apache
  • Supporta utenti virtuali senza account di sistema
  • Fornisce controllo granulare su permessi e accessi
  • Gestisce connessioni passive per firewall/NAT

Configurazione Base

Campo Descrizione
Enabled Attiva o disabilita ProFTPD
Version Versione di ProFTPD da utilizzare

Configurazione Accesso

Campo Descrizione
User Name Nome utente per l'accesso FTP
User Password Password per l'accesso FTP

Configurazione Rete

Campo Descrizione
Domain Dominio per il server FTP
Masquerade Address Indirizzo IP pubblico del server (per NAT)
Exposed Port Porta per connessioni (default: 21)
Passive Port Start Inizio range porte passive
Passive Port End Fine range porte passive

Connessioni Passive

Le connessioni passive sono necessarie quando il client è dietro firewall. ProFTPD usa un range di porte per queste connessioni:

  • Passive Port Start: Prima porta del range (es. 30000)
  • Passive Port End: Ultima porta del range (es. 30100)

Attenzione: Assicurati che queste porte siano aperte nel firewall del server.

Configurazione Docker

Campo Descrizione
CPU Cores Limit Limite CPU per il container
Memory Limit (MB) Limite memoria per il container in MB

File di Configurazione

File Descrizione
proftpd.conf Configurazione principale di ProFTPD
Dockerfile File Docker per la build dell'immagine

Porte

Porta Tipo Descrizione
21 Controllo Comandi FTP
30000-30100 Passive Trasferimento dati (configurabile)

Casi d'Uso

1. Upload Contenuti

Permette ai content creator di caricare file.

2. Backup Remoti

Riceve backup da sistemi esterni.

3. Integrazione Legacy

Connette sistemi che supportano solo FTP.

4. Distribuzione File

Permette il download di file a utenti esterni.

Best Practices

  1. Usa sempre modalità passiva per compatibilità
  2. Configura Masquerade Address con IP pubblico
  3. Limita il range porte passive e aprile nel firewall
  4. Abilita FTPS per trasferimenti sicuri
  5. Usa utenti virtuali invece di account di sistema
  6. Imposta DefaultRoot per limitare accesso
  7. Monitora i log per attività sospette

Prossimi Passi

  • MinIO - Object storage alternativo per file