SSHFS | Download e installazione
download gratis
Licenza gratuito GNU GPL
Sistema Operativo Linux
Recensito da Luca Tringali

SSHFS

Un modulo FUSE che permette il montaggio di filesystem remoti, per avere i propri file sempre al seguito

Uno degli strumenti più utili su GNU/Linux è SSH, un terminale remoto che permette l’accesso al proprio computer da un qualsiasi altro PC. A volte, però, non si ha bisogno di un terminale: sarebbe sufficiente accedere ai file del computer. Capita di andare a casa di un amico per guardare assieme un film ma di aver dimenticato il notebook o di recarsi in ufficio ma di aver dimenticato di caricare su una pendrive un documento importante. La soluzione esiste, e si chiama SSHFS : un modulo di FUSE che permette il montaggio, come se fosse una qualsiasi periferica di memorizzazione, del filesystem di un sistema GNU/Linux su un altro sistema operativo (non necessariamente GNU/Linux) usando proprio SSH come collegamento tra i due computer. È, in un certo senso, un modo per avere sempre a portata di mano i propri file, come se si utilizzasse un servizio di cloud storage, ma molto più sicuro visto che il computer su cui sono memorizzati i file è quello personale e che la comunicazione è crittografata da SSH. Tra l’altro, per sicurezza, se si vuole permettere che il proprio computer sia accessibile da Internet e non solo dalla rete locale, sarebbe opportuno dotarlo anche di un programma del tipo Fail2Ban , che blocchi automaticamente gli accessi da parte di altri computer dopo un certo numero di errori nella scrittura della password. È importante per impedire attacchi di tipo brute force.

Per cominciare è necessario assicurarsi che sul proprio computer, o su quello che ospita i file cui si vuole accedere, deve essere installato il pacchetto openssh-server con il comando sudo apt-get install openssh-server . Questo computer avrà il filesystem remoto. Per conoscere il proprio indirizzo IP locale basta dare il comando ifconfig grep inet: .

Sul computer dal quale vogliamo accedere ai file (che può comunque essere lo stesso che ospita i file) deve essere installato il modulo sshfs di FUSE. Naturalmente anche FUSE deve essere installato, ma il semplice comando sudo apt-get install sshfs installa tutti i pacchetti necessari.
Sui sistemi di tipo Debian più moderni non è necessario, ma per i sistemi operativi un po’ più datati è necessario aggiungere tutti gli utenti che devono usare FUSE al gruppo fuse:

adduser nomeutente fuse

Il fylesystem remoto verrà montato con sshfs, ma questo significa che è necessario un punto di mount. Basta crearlo come una nuova cartella, per esempio con il comando:

sudo mkdir /mnt/temp
sudo chown nomeutente:nomeutente /mnt/temp

A questo punto si può facilmente montare il filesystem remoto con il comando

sshfs nomeutente@192.168.1.66:/ /mnt/temp

Dove il 192.168.1.66 rappresenta l’indirizzo IP del computer su cui è installato openssh-server. È necessario fornire la password per l’accesso al terminale del computer remoto con l’utente indicato.

Adesso è possibile aprire un qualsiasi file manager, per esempio Dolphin , e controllare il contenuto della cartella /mnt/temp per vedere tutti i file presenti sul filesystem remoto, accedendo con i privilegi dell’utente specificato. Si può quindi usare anche per accedere al proprio computer con privilegi di un altro utente: se per esempio il nostro utente si chiama luca ma abbiamo bisogno di accedere ad alcuni file nella home dell’utente gianni , possiamo ottenerli con il comando

sshfs gianni@localhost:/home/gianni /mnt/temp

Con Dolphin è persino possibile accedere al server senza nemmeno eseguire manualmente il montaggio, visto che basta inserire nella barra dell’indirizzo del file manager il seguente percorso:

sftp://nomeutente@192.168.1.66/

E lo stesso vale per quasi tutti i programmi di KDE, come Gwenview e Okular. Anche il player multimediale VLC è in grado di accedere direttamente a SSHFS usando il protocollo SFTP. Ad esempio, è un indirizzo che può essere aperto direttamente da VLC è:

sftp://nomeutente@192.168.1.66/media/Film/SuperQuark/Superquark1.mp4

Il meccanismo di SSHFS funziona anche sui dispositivi Android rootati, ovvero quelli in cui si dispone dei privilegi di root. Questo è molto comodo per accedere ai propri file anche quando si è fuori casa (naturalmente si deve usare l’indirizzo IP pubblico del proprio computer e si deve configurare il mapping delle porte sul proprio router). Usare SSHFS su Android richiede, oltre ai privilegi di root e un sistema operativo minimo Android 4, l’installazione dei binari di BusyBox . Basta scaricare l’apposita applicazione e poi premere il pulsante Install per avviare l’installazione intelligente.

È necessaria anche un’app in grado di eseguire il montaggio tramite SSHFS: non ne esistono molte e l’unica che al momento sembra funzionare correttamente si chiama SSHFSAndroid . L’app costa poco meno di 2 euro; in alternativa esiste EasySSHFS che però nei nostri test ha dimostrato poca affidabilità (tuttavia è possibile che i problemi verranno risolti nelle prossime versioni).

L’app scelta deve essere configurata, indicando l’indirizzo IP (o addirittura un eventuale nome di dominio, come quelli che si ottengono gratuitamente con il sito No-IP.com ). Si deve anche specificare il nome utente e la password, che deve essere molto sicura se si vuole evitare che qualche malintenzionato acceda da remoto al computer e faccia danni. Anche in questo caso si deve creare una cartella vuota da usare come punto di montaggio del filesystem remoto.

In modo identico al sistema desktop, anche su Android si può poi accedere al punto di montaggio con un semplice file manager (per esempio l’app FileManager ). È possibile scorrere tutti i file ed eseguire le normali operazioni, come copiatura e spostamento. Si tratta di un metodo molto comodo anche per avere una sorta di “cloud personale” cui accedere dallo smartphone o tablet e con il quale memorizzare enormi quantità di file che non potrebbero essere mantenuti sulle ridotte memorie dei dispositivi mobile.

Infine, sia da sistemi desktop che Android, i file possono persino essere aperti, anche se si tratta di filmati. Ciò significa che dallo smartphone è possibile guardare “in streaming” un video presente sul proprio PC, senza bisogno di scaricarlo. Naturalmente, per evitare rallentamenti, è importante che la velocità della rete cui è connesso il computer remoto (quello su cui è installato openssh-server) sia abbastanza alta in upload.