Ssh e autenticazione tramite chiavi: differenze tra le versioni
Vai alla navigazione
Vai alla ricerca
Riga 1: | Riga 1: | ||
=Introduzione= | |||
Spesso pu� essere necessario lavorare direttamente su un filesystem remoto (si pensi, ad esempio, alla webroot di un sito, alla home del proprio portatile, ...). | |||
sshfs permette di superare questo problema in un modo semplice e pulito: montando una directory tramite il protocollo ssh. | |||
=Installazione= | |||
Il pacchetto sshfs gi presente in Debian, quindi l'installazione si riduce ad un semplice | |||
<pre> | <pre> | ||
# apt-get install sshfs | |||
</pre> | </pre> | ||
Per quanto riguarda il kernel, normalmente � presente il modulo ''fuse''. Se non � presente � necessaria la ricompilazione del kernel. | |||
Il modulo da attivare si trova in: ''File systems ---> Filesystem in Userspace support'' | |||
Se | |||
=Configurazione= | |||
==Creazione del punto di mount== | |||
Prima di tutto necessario creare un [[mountpoint | punto di montaggio]] in cui montare la risorsa di rete (ovviamente ognuno liberissimo di utilizzare la directory che vuole): | |||
<pre> | <pre> | ||
# mkdir /mnt/sshdir | |||
</pre> | </pre> | ||
� necessario, inoltre, impostare l'utente che utilizzer� questa directory come ''[[owner]]'': | |||
<pre> | <pre> | ||
# | # chown username /mnt/sshdir | ||
</pre> | </pre> | ||
==Permessi utenti== | |||
� possibile permettere l'utilizzo di sshfs anche agli utenti normali, seguendo i seguenti passaggi: | |||
<pre> | <pre> | ||
# | # chgrp fuse /usr/bin/fusermount | ||
# adduser nomeutente fuse | |||
</pre> | </pre> | ||
in questo modo permettiamo l'utilizzo del comando ''fusermount'' agli utenti appartenenti al gruppo ''fuse'', e aggiungiamo l'utente che utilizzer sshfs al gruppo fuse. | |||
Per rendere effettiva l'aggiunta al gruppo � necessario effettuare un logout-login. | |||
Per | |||
=Utilizzo e Test= | |||
L'utilizzo semplice: | |||
<pre> | <pre> | ||
# sshfs user@host:/dir/to/mount /mnt/sshdir | |||
</pre> | </pre> | ||
dove | |||
; user : l'utente della macchine remota (se omesso verr utilizzato l'username dell'utente che lancia il comando (root, in questo caso) | |||
; host : l'indirizzo ip o l'url a cui la macchina remota risponde | |||
; /dir/to/mount : il percorso assoluto della directory da montare... ( possibile anche utilizzare un percordo relativo a partire dalla directory home dell'utente: ''./path/to/dir'') | |||
; /mnt/sshdir : rappresenta il punto di mount | |||
per controllare la riuscita del comando, si pu� analizzare l'output del comando <pre> | |||
$ mount | |||
<pre> | |||
</pre> | </pre> | ||
=Faq ed Errori Frequenti= | |||
==failed to open /dev/fuse: No such file or directory== | |||
L'errore � dovuto alla mancanza del modulo del kernel relativo a ''fusefs''. � necessario compilarlo come modulo o staticamente (nei kernel pacchettizzati Debian � presente, ed � caricabile con un <pre> | |||
# modprobe fuse | |||
=== | |||
<pre> | |||
</pre> | </pre> | ||
==mountpoint is not empty== | |||
Se si cerca di montare una risorsa in un [[mountpoint]] contenente gi� dei file, pu� apparire il seguente errore: | |||
<pre>fusermount: mountpoint is not empty | |||
fusermount: if you are sure this is safe, use the 'nonempty' mount option</pre> | |||
Le soluzioni sono: | |||
* usare un mountpoint libero (consigliata) | |||
* appendere, dopo il comando ''sshfs'' l'opzione ''-o nonempty'' |