Cos'è sftp?

SFTP (SSH File Transfer Protocol)

SFTP, acronimo di SSH File Transfer Protocol (a volte chiamato Secure FTP), è un protocollo di rete utilizzato per il trasferimento sicuro di file su una connessione dati SSH (Secure Shell). A differenza di FTP, che non è criptato e quindi vulnerabile allo sniffing di password e dati, SFTP cripta sia i comandi che i dati trasferiti, offrendo un livello di sicurezza molto più elevato.

Caratteristiche principali:

  • Sicurezza: La criptazione SSH protegge i dati durante il transito, prevenendo intercettazioni e manomissioni.
  • Autenticazione: Utilizza l'autenticazione SSH, che include metodi come autenticazione basata su password e autenticazione a chiave pubblica, garantendo che solo gli utenti autorizzati possano accedere ai file.
  • Trasferimento affidabile: SFTP garantisce un trasferimento di file affidabile, verificando l'integrità dei dati.
  • Funzionalità complete: Oltre al trasferimento di file, SFTP supporta anche operazioni come la creazione di directory, la rinomina di file e la gestione dei permessi.

Come funziona:

SFTP opera su una connessione SSH esistente. Il client SFTP si connette al server SFTP (che di solito è parte del server SSH). Una volta stabilita la connessione SSH e l'autenticazione completata, il client SFTP può inviare comandi per trasferire file, creare directory, eliminare file, etc. Tutti i dati e i comandi sono criptati durante questo processo.

Vantaggi rispetto a FTP:

  • Sicurezza: La differenza più significativa è la sicurezza. FTP è intrinsecamente non sicuro, mentre SFTP offre una forte criptazione.
  • Firewall-friendly: SFTP utilizza una singola connessione (porta 22 di default per SSH), semplificando la configurazione del firewall rispetto a FTP, che utilizza connessioni multiple e complesse.

Client SFTP:

Esistono numerosi client SFTP disponibili per diversi sistemi operativi. Alcuni esempi popolari includono:

  • FileZilla
  • WinSCP (Windows)
  • Cyberduck (Windows, macOS)
  • Comandi a riga di comando (come sftp su Linux e macOS)

Utilizzo comune:

SFTP è ampiamente utilizzato per:

  • Trasferire file tra server web e computer locali.
  • Gestire file su server remoti.
  • Effettuare il backup di file in modo sicuro.
  • Trasferire dati sensibili in modo sicuro.

In sintesi, SFTP è una soluzione di trasferimento file sicura e affidabile, superiore a FTP in termini di sicurezza e funzionalità. La sua integrazione con SSH ne semplifica l'implementazione e l'utilizzo nella maggior parte degli ambienti di rete moderni.