SSHFS (SSH Filesystem) yra failų sistemos klientas, leidžiantis per įprastą SSH ryšį prijungti ir naudoti nuotoliniame serveryje ar kompiuteryje esančius katalogus bei failus.
Klientas su nuotoline failų sistema sąveikauja naudodamas SSH File Transfer Protocol (SFTP). Tai tinklo protokolas, skirtas failams pasiekti, perduoti ir tvarkyti per patikimą duomenų srautą. SFTP buvo sukurtas kaip Secure Shell (SSH) 2.0 protokolo plėtinys. Dabartinė SSHFS versija, naudojanti FUSE, yra ankstesnės versijos perrašyta realizacija.
FUSE (Filesystem in Userspace) yra sąsaja, leidžianti vartotojo erdvėje veikiančioms programoms pateikti failų sistemą Linux branduoliui. FUSE projektą sudaro du pagrindiniai komponentai: fuse branduolio modulis, prižiūrimas standartinėse Linux branduolio saugyklose, ir libfuse vartotojo erdvės biblioteka. libfuse suteikia standartinę sąsają ryšiui su FUSE branduolio moduliu.
FUSE failų sistema paprastai veikia kaip atskira programa, naudojanti libfuse biblioteką. libfuse suteikia funkcijas, skirtas failų sistemai prijungti ir atjungti, užklausoms iš branduolio gauti bei atsakymams siųsti.
Diegimas
SSHFS yra Linux skirta programinė įranga, kurią reikia įdiegti serveryje. Ubuntu ir Debian pagrindu veikiančiose sistemose ją galima įdiegti naudojant apt-get:
apt-get install sshfs
Prijungimas
Pirmiausia sukurkite lokalų katalogą, prie kurio bus prijungta nuotolinio serverio failų sistema:
mkdir /mnt/name_of_directory
Dabar nuotolinę failų sistemą galite prijungti naudodami sshfs:
sshfs root@ip_of_server:/ /mnt/name_of_directory
Dabar su nuotoliniame serveryje esančiais failais galite dirbti taip, tarsi jie būtų saugomi lokaliai prijungtame įrenginyje. Pavyzdžiui, jei lokaliame kompiuteryje pereisite į /mnt/name_of_directory katalogą ir jame sukursite failą, jis taip pat atsiras nuotoliniame serveryje. Taip pat galite kopijuoti failus į /mnt/name_of_directory katalogą – jie automatiškai bus perduoti į nuotolinį serverį.
Norėdami peržiūrėti visas prijungtas failų sistemas, naudokite šią komandą:
df -hT
Pastaba: tokiu būdu failų sistema prijungiama tik laikinai. Perkrovus VPS, ją reikės prijungti iš naujo atliekant tuos pačius veiksmus.
Atjungimas
Kai prijungtos failų sistemos nebereikia, ją galite atjungti šia komanda:
umount /mnt/name_of_directory
Nuolatinis prijungimas
SSHFS taip pat leidžia nustatyti nuolatinį nuotolinės failų sistemos prijungimą. Tokiu atveju failų sistema gali būti automatiškai prijungiama iš naujo po lokalaus kompiuterio ar serverio perkrovimo.
Norėdami nustatyti nuolatinį prijungimą, lokaliame kompiuteryje turite redaguoti /etc/fstab failą, kad failų sistema būtų automatiškai prijungiama paleidžiant sistemą.
Pirmiausia atidarykite /etc/fstab failą teksto redaktoriumi:
nano /etc/fstab
Pastaba: jei nano nėra įdiegtas jūsų serveryje, galite jį įdiegti šia komanda:
apt-get install nano
Pereikite į failo apačią ir pridėkite šią eilutę:
sshfs#root@ip_of_server:/ /mnt/name_of_directory
Išsaugokite /etc/fstab pakeitimus ir, jei reikia, perkraukite sistemą.
Pastaba: nuolatinis VPS failų sistemos prijungimas lokaliame kompiuteryje gali kelti saugumo riziką. Jei lokalus kompiuteris būtų pažeistas, užpuolikas galėtų gauti tiesioginę prieigą prie serverio.
Todėl production serveriuose nuolatinio SSHFS prijungimo naudoti nerekomenduojama.

