Externe folder via SSH File Sharing

Je wenst een folder op een andere Linux Server te bereiken, maar je gebruikt liever geen Samba. Dan kan je gebruik maken van SSHFS.

SSHFS staat voor SSH Filesystem. Het is een filesysteem client die lokaal een 'drive' kan mounten die verwijst naar een folder of bestanden op een externe server. Dit is op basis van het SSH File Transfer Protocol (SFTP). De huidige implementatie gebruikt FUSE, die een herschreven versie is van de vorige versie.

We kennen allemaal wel FileZilla, WinSCP en andere FTP-software die een verbinding maakt via SFTP. Op deze wijze maak je een verbinding tussen je lokale client en de externe 'FTP server'. Hier gaat het een stap verder, zodat je op een lokale drive kan gaan werken.
Het grote voordeel is dat het echt heel weining vergt qua installie, en dit vooral omdat SSH meestal wel al is opgezet (zowel de software als de te openen poort).

De eerste stap is dus een verbinding te maken via SSH naar de externe server (of map). Ik ga ervan uit dat je weet hoe je zo'n verbinding moet gaan opzetten met SSH-keys.
Toch nog even in het kort.

  • Je hebt een publieke en private sleutel.
  • De publieke sleutel voeg je toe op de externe server in het bestand autohorized_keys(2).
  • maak een test verbinding vanaf je bron naar de externe server.

Vervolgens installeer je de SSHFS client en mount je de externe folder

yum install sshfs
mkdir /mnt/nieuwefolder
sshfs -o IdentityFile=/home/gebruiker/.ssh/id_rsa remotegebruiker@remote.ip:/defolder/ /mnt/nieuwefolder

Kijk nu of je via ls /mnt/nieuwefolder de externe bestanden ziet.

Om dit permanent te maken op een CentOS 7

vi /etc/fstab
sshfs#remotegebruiker@remote.ip:/defolder/ /mnt/nieuwefolder fuse defaults,idmap=user,allow_other,reconnect,_netdev,users,IdentityFile=/home/gebruiker/.ssh/id_rsa 0 0

Terug naar overzicht nieuws