Avvicinandosi al mondo dei server e dei protocolli utilizzati per lo scambio di file avremo sicuramente sentito parlare di FTP, SFTP e FTPS. Il protocollo di trasferimento file (FTP) non prevede nessun sistema di cifratura per i file che viaggiano sulla rete (sia interna che su Internet).
Per aumentare la sicurezza nello scambio di file furono introdotti SFTP e FTPS, due protocolli che hanno uno scopo in comune (garantire accesso sicuro e comunicazioni cifrate) ma con tecnologie profondamente diverse. Scopriamole insieme in questa guida, dove illustreremo anche come implementarle in Windows quando creiamo il nostro server FTP.
SFTP e FTPS: le differenze
FTPS
FTPS è il protocollo FTP a cui viene aggiunta la cifratura SSL o TLS (più recente). Il funzionamento del protocollo è del tutto identico a FTP: il protocollo utilizza due canali (uno per i comandi e l’altro per il trasferimento dei file), ma invece di viaggiare in rete in chiaro tutti i dati vengono cifrati in partenza e decifrati in uscita da un client compatibile FTPS. Le porte restano le stesse (21 per il canale comandi e range di porte random per il canale trasferimento in modalità passiva), ma la comunicazione è più sicura visto che i dati viaggiano cifrati.
Sono possibili due implementazioni di FTPS: con crittografia implicita o esplicita. Oltre le questioni crittografiche relative all’uno o l’altro, basta sapere che l’implicita utilizza una diversa porta (la 990 di default) ed utilizza crittografia più obsoleta (resa ancora disponibile per compatibilità con i server più vecchi), mentre la crittografia esplicita utilizza le stesse porte dell’FTP semplice (21 e porte random per l’accesso passivo) e utilizza la crittografia più avanzata (TLS 1.2 per esempio). Nel dubbio meglio scegliere sempre la FTPS con crittografia esplicita per i nostri nuovi server.
SFTP
FTPS è relativamente “giovane”, quindi in passato era nata la necessità di rendere più sicuro lo scambio di file in rete nell’attesa di ottenere una cifratura integrata nel protocollo FTP. Così è nato SFTP, ma ha poco o nulla da spartire con FTP classico, forse solo la parte finale del nome!
SFTP indica il trasferimento di file sicuro tramite Secure Shell (o SSH), da qui il nome SSH File Transfer Protocol (SFTP). I due dispositivi (server e client) comunicano tramite un unico canale, quello di SSH, in cui vengono inviati i comandi di gestione dei file remoti e dove avviene il trasferimento dei file. L’unica porta necessaria per SFTP è di default la 22, la stessa di SSH.
SFTP implementa a livello di crittografia le stesse specifiche supportate da SSH, anche TLS 1.2.
Differenze e similitudini
Dopo aver letto la presentazione dei due protocolli diventano chiare le differenze e le similitudini tra SFTP e FTPS.
- Entrambi offrono una connessione cifrata, ma sono diversi
- SFTP sfrutta il canale di SSH per far viaggiare comandi e dati
- FTPS cifra i dati su FTP
- SFTP utilizza una sola porta, di default la 22
- FTPS può utilizzare due porte, la 21 per i comandi e un’altra random
- A livello di cifratura e di sicurezza sono simili (usano TLS 1.2)
Implementare FTPS in Windows
Per attivare il layer di cifratura su FTP basta un server che supporti la cifratura SSL/TLS. FileZilla Server offre nelle opzioni il menu FTP over TLS in cui attivare FTPS e la cifratura esplicita.
Implementare SFTP in Windows
Per implementare SFTP bisogna installare SSH su Windows. Il miglior modo per gestire efficacemente un server SSH su Windows è utilizzare Bitvise SSH Server, gratuito per uso personale. Questo software integra SSH e ci offre un certificato più che valido per le nostre connessioni SSH.
DOWNLOAD | Bitvise SSH Server