Può capitare di collegarsi spesso via ssh ad una macchina remota, per i più disparati motivi.
Nel caso si lavori sovente su di una macchina remota, mettiamo per modificare i files di un sito, non sarebbe comodissimo poter vedere le directories che ci interessano come fossero parte del nostro filesystem locale?
La cosa è fattibilissima.
Mi spiego con un esempio banale. Su di un cloud server Amazon Lightsails ho installato uno stack Bitnami WordPress.
Diciamo che mi interessa poter montare la cartella htdocs nel mio filesystem locale.
Ecco come fare:
Basta installare sshfs sulla propria macchina Linux.
Ad esempio in un sistema Debian e derivate userò:
sudo apt install sshfs
e poi si può montare la cartella htdocs dell’utente di esempio bitnami come fs locale in ~/sito.
Creo allora la cartella:
mkdir ~/sito
e poi digito:
sudo sshfs bitnami@ILMIOIP:/opt/bitnami/apps/wordpress/htdocs ~/sito -o IdentityFile=~/.ssh/LAMIACHIAVEPRIVATA.pem -o allow_other
Ovviamente in questo esempio presuppongo che l’utente si chiami bitnami e si dovrà sostituire ILMIOIP con l’ip della macchina remota e LAMIACHIAVEPRIVATA.pem con la chiave privata corrispondente.
Poi mi basterà andare in
cd ~/sito
per poter lavorare sul sito remoto nella massima comodità.
Per smontare la directory dal mio filesystem locale mi basterà il comando:
sudo fusermount -u ~/sito
Risolvere un problema di autenticazione
Gestendo più server, può capitare di avere molteplici identità e di incappare in fase di autenticazione nell’errore
Too many authentication failures for user
Quello che possiamo fare è far in modo che il sistema non cerchi di indentificare automaticamente l’utente, usando ssh in questo modo:
ssh -o IdentitiesOnly=yes NOMEUTENTE@IPSERVER