
Gestire file tra un computer locale e un server remoto richiede spesso strumenti differenti a seconda del protocollo utilizzato. OpenSCP prova a riunire queste esigenze all’interno di una singola applicazione desktop multipiattaforma, sviluppata in C++20 e Qt 6 e progettata attorno a un’interfaccia a doppio pannello.
Il progetto adotta un’impostazione molto vicina ai tradizionali file manager in stile Commander. Da una parte troviamo il filesystem locale, dall’altra la destinazione remota, con la possibilità di navigare tra directory, copiare file e gestire trasferimenti direttamente dalla stessa finestra.
OpenSCP supporta SFTP e SCP attraverso libssh2, mentre FTP, FTPS e WebDAV possono essere disponibili attraverso libcurl, in base al pacchetto con cui viene distribuita l’applicazione. Questa distinzione è importante perché la disponibilità dei protocolli può variare tra le diverse build.
L’obiettivo del progetto non è quindi soltanto fornire un’interfaccia grafica per il trasferimento dei file, ma creare uno strumento utilizzabile anche per attività più strutturate, come la gestione di numerosi trasferimenti, la sincronizzazione unidirezionale e il collegamento a infrastrutture remote.
Doppio pannello, trasferimenti avanzati e gestione delle connessioni
L’interfaccia rappresenta uno degli elementi centrali di OpenSCP. Ogni pannello mostra il percorso corrente attraverso un normale campo dedicato alla navigazione. Le directory superiori possono essere aperte direttamente dal percorso, mentre un’apposita finestra permette di inserire manualmente una destinazione.
Sono inoltre disponibili cronologia, preferiti, ricerca e trascinamento dei file tramite drag-and-drop. Le scorciatoie da tastiera consentono di velocizzare le operazioni più frequenti, rendendo l’applicazione adatta anche a chi preferisce lavorare principalmente attraverso la tastiera.
Particolarmente interessante è il sistema dedicato alla gestione dei trasferimenti. OpenSCP dispone infatti di una coda persistente nella quale possono essere organizzate più operazioni contemporaneamente. I trasferimenti possono essere eseguiti attraverso worker paralleli e l’utente può mettere in pausa, riprendere o ritentare le operazioni.
Il software supporta inoltre politiche per la gestione dei conflitti tra file, limiti alla larghezza di banda e file temporanei .part pensati per consentire la ripresa dei trasferimenti interrotti. Questo approccio può risultare utile soprattutto quando si devono spostare file di grandi dimensioni o quando la connessione verso il server remoto non è particolarmente stabile.

Un altro componente interessante è la sincronizzazione unidirezionale. Prima di procedere è possibile visualizzare un’anteprima delle modifiche e applicare filtri, con la possibilità di utilizzare anche controlli tramite checksum.
Sul fronte della sicurezza, OpenSCP permette di scegliere differenti modalità per la verifica delle chiavi host SSH, comprese modalità strict e accept-new, oltre alla possibilità di disabilitare esplicitamente il controllo. Il programma supporta inoltre SOCKS5, HTTP CONNECT e, dove previsto dal protocollo, i collegamenti attraverso SSH jump host.
OpenSCP punta a riunire più protocolli in una sola applicazione
La gestione delle connessioni remote rappresenta un altro elemento importante del progetto. I siti possono essere salvati per evitare di dover configurare nuovamente ogni collegamento. Le credenziali possono essere integrate con i sistemi di gestione delle chiavi disponibili sulle piattaforme supportate, utilizzando Keychain su macOS e Secret Service/libsecret su Linux.
La presenza di più protocolli permette di utilizzare OpenSCP in scenari differenti. SFTP e SCP sono particolarmente interessanti per l’amministrazione di server Linux, mentre FTP e FTPS possono risultare utili durante la gestione di infrastrutture che utilizzano ancora questi protocolli. WebDAV amplia ulteriormente le possibilità di collegamento con servizi compatibili.
Il progetto è sviluppato utilizzando C++20 e Qt 6, una combinazione che consente di realizzare un’applicazione desktop nativa disponibile su più piattaforme. L’interfaccia è attualmente localizzata in inglese, spagnolo, portoghese, francese e tedesco, mentre la documentazione del progetto comprende anche indicazioni dedicate alla compilazione, al packaging, all’architettura interna e alla compatibilità tra piattaforme e protocolli.
Tra le caratteristiche più interessanti per chi utilizza OpenSCP in ambito tecnico c’è proprio l’attenzione alla prevedibilità delle operazioni. L’applicazione cerca di mantenere separati il sistema locale e quello remoto, offrendo strumenti espliciti per la navigazione, il trasferimento e la sincronizzazione.
Per un amministratore di sistema o per un utente Linux che lavora frequentemente con server remoti, questa impostazione può rappresentare un’alternativa grafica ai tradizionali strumenti da terminale, senza rinunciare a funzionalità avanzate come code persistenti, trasferimenti riprendibili, gestione delle chiavi SSH e connessioni attraverso proxy o jump host.
OpenSCP si propone così come uno strumento versatile per chi cerca un singolo client desktop capace di gestire differenti modalità di trasferimento e, allo stesso tempo, mantenere un’interfaccia semplice basata sul classico modello a due pannelli.
OpenSCP viene rilasciato per Linux nella versione AppImage e Flatpak, abbiamo testato il software su Ubuntu 26.04 LTS.