Jde o FUSE1) modul, který připojuje vzdálený adresář službou SSH, pomocí SFTP protokolu. Souborové operace jsou převáděny na SFTP příkazy spouštěné na serverové straně. Komunikace je pro aplikace na uživatelské straně transparentní - tj. připojený adresářový strom a jeho soubory je možno používat téměř shodně jako lokální soubory
fuse
sshfs
Zde je situace shodná se službou SSH, je možno postupovat podle stejného návodu.
Pro ověření serveru slouží DSA, RSA nebo ECDSA klíče. Ty jsou pro všechny servery v daném datacentru stejné.
Ostravské úložiště (du4):
ECDSA, SHA256 (du4) 9YvWE2h459dMcLWcLcD1DsrxTjqqMLD16eiSYXBVX9k ED25519, SHA256 (du4) L0AFWpSsuq+SFl2QBip4aFJEuG3JEnUxczomfEywYvc
Jihlavské úložiště (du5):
ECDSA, SHA256 (du5) YB7YnmuMktwsFxVe5qdzy2bLU9y+0yowEcpZp82P4nk
V případě, že libovolný klíč nesouhlasí, přerušte připojování na server a kontaktujte nás prosím na: support(zavináč)cesnet.cz
Zřídíme bod pro připojení - prázdný adresář (mountpoint):
$ mkdir /storage
A do něj připojíme vzdálený adresář z datového úložiště:
$ sshfs -o idmap=user username@server:/home/username/VO_storage-cache_tape/ /storage $ ls -l /storage total 12540 -rw-r--r-- 1 username users 10485760 Jun 22 14:16 MB10.dat -rw-r--r-- 1 username users 8388608 May 3 12:51 MB8.dat drwxr-xr-x 2 username users 10 Jun 13 15:34 backup $
Při prvním připojení bude vypsán otisk RSA klíče serveru a sshfs
se dotáže, zda má ve spojení pokračovat (při dalších spojeních je už klíč uložen a dotaz se neopakuje, otisk klíče je možné ověřit na stránce s klíči a fingerprinty)
Podle použitého druhu ověření uživatele, může příkaz sshfs
vyžadovat heslo k účtu datového úložiště nebo heslo k dešifrování SSH klíče (passphrase). Při použití systému Kerberos je potřeba před spuštěním sshfs
získat lístek (viz možnosti ověření uživatele).
fuse
pomocí příkazu:
gpasswd -a username fuse
sshfs#username@server:/home/username/VO_storage-cache_tape/ /storage fuse defaults,idmap=user 0 0
Nezapomeňte, že pro automatické připojování musíte použít SSH klíče, tzn. veřejný klíč musí být obsažen v souboru /home/username/.ssh/authorized_keys.
$ fusermount -u /storage $ ls -l /storage total 0 $
Často můžeme chtít, aby se vzdálené úložište připojilo automaticky, bez nutnosti zadávat příkaz tzn. transparentně. Pro tento účel můžeme využít nástroj AutoFS, který navíc provede reconnect v případě výpadku připojení.
autofs
Hlavní konfigurační souboru AutoFS je /etc/auto.master. Do něho umístíme řádku
/storage /etc/auto.sshfs uid=1000,gid=1000,--timeout=30,--ghost
Tím říkáme, že pokud někdo přistoupí do adresáře /storage, tak se má provést automatické připojení podle definice v souboru /etc/auto.sshfs. Timeout specifikuje, za jak dlouho při nečinnosti dojde k automatickému odpojení. UID a GID patří uživateli, který může používat FUSE.
Do souboru /etc/auto.sshfs umístíme následující.
server1 -fstype=fuse,rw,nodev,nonempty,noatime,allow_other,max_read=65536 :sshfs\#username@server\:
Kde server1 představuje podadresář adresáře /storage tzn. po připojení bude vzdálené úložiště namountováno do /storage/server1. Nezapomeňte změnit username a adresu serveru (username@server).
Tím máme AutoFS nakonfigurovaný pro práci s SSHFS.