Co je SSHFS
Existuje několik způsobů, jak sdílet adresář v síti. V podnikovém nastavení najdete Network Filesystem (NFS), Samba a různé distribuované souborové systémy. SSHFS se v podnicích tolik nepoužívá, ale i tak se může hodit. Výhodou je, že veškerý síťový provoz je ve výchozím nastavení šifrován, na rozdíl od NFS nebo Samby. A kromě instalace klientského programu SSHFS a vytvoření místního adresáře přípojných bodů nevyžaduje žádnou konfiguraci nad rámec toho, co jste již provedli.
Funkce SSHFS
- Založeno na FUSE (nejlepší framework souborového systému uživatelského prostoru pro linux)
- Multitreading:na server může být na cestě více než jeden požadavek
- Povolení velkého čtení (max. 64 kB)
- Ukládání obsahu adresáře do mezipaměti
Požadavek
Jak bylo uvedeno dříve, ke konfiguraci SSHFS nepotřebujete mnoho nastavení. Zde je seznam požadavků.
- 2 Centos nebo Ubuntu Server
- Autentizace klíče SSH na serverech
Krok 1:Zastavte IPTables a Selinux a aktualizujte datum a čas na serverech a ověřování SSH na serverech.
Chcete-li zastavit službu iptables a zakázat automatické spouštění při spouštění:
# service iptables stop # chkconfig iptables off
Chcete-li zakázat SELinux, nastavte parametr „SELINUX=disabled“ v /etc/sysconfig/selinux soubor.
# vi /etc/sysconfig/selinux ... SELINUX=disabled ###(Change enabled to disabled)
Vygenerujte klíče ssh a nakonfigurujte ssh bez hesla
Na serveru 1:
# ssh-keygen -t rsa (Enter 3 Times) # ssh-keygen -t dsa (Enter 3 Times) # cd /root/.ssh # cat id_rsa.pub >>authorized_keys # cat id_dsa.pub >>authorized_keys
Na serveru 2:
# ssh-keygen -t rsa (Enter 3 Times) # ssh-keygen -t dsa (Enter 3 Times) # cd /root/.ssh # cat id_rsa.pub >>authorized_keys # cat id_dsa.pub >>authorized_keys
Nyní otevřete soubor autorizovaných klíčů na obou serverech a vložte klíč serveru 1 do souboru autorizovaných klíčů serveru 2 a naopak.
Restartujte službu ntp
Restartujte službu ntp na obou serverech a restartujte servery.
# service ntpd restart # ntpdate pool.ntp.org # chkconfig ntpd on # init 6
Krok 2:Nainstalujte FUSE-SSHFS
Pro uživatele CentOS/RHEL je Fuse SSHFS k dispozici pod epel repository, takže se ujistěte, že jste epel repository nainstalovali do vašeho systému. Nyní jej nainstalujte provedením následujícího příkazu.
Na CentOS/RHEL:
# yum -y install epel-release # yum install -y fuse-sshfs
Na Ubuntu a Dabianu:
$ sudo apt-get update $ sudo apt-get install sshfs
Krok 3:Připojte vzdálený adresář
Umožňuje připojit adresář vzdáleného serveru pomocí sshfs, ujistěte se, že na vzdáleném systému běží ssh server se správnou ssh konektivitou z vašeho systému. Nejprve vytvořte přípojný bod:
# mkdir /mntssh
Připojíme vzdálený adresář. V tomto příkladu připojujeme adresář /home/remoteuser ze systému x.x.x.x (remote.example.com) do našeho místního systému.
# sshfs [email protected]:/home/remoteuser /mntssh
Ukázkový výstup:
The authenticity of host 'remote.example.com (x.x.x.x)' can't be established. RSA key fingerprint is 77:85:9e:ff:de:2a:ef:49:68:09:9b:dc:f0:f3:09:07. Are you sure you want to continue connecting (yes/no)? yes [email protected]'s password: yes
Krok 4:Ověřte připojení
Po připojení vzdáleného souborového systému na místní bod připojení jej ověřte spuštěním příkazu mount.
# mount /dev/mapper/vg_svr1-lv_root on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) /dev/sda1 on /boot type ext4 (rw) [email protected]:/home/remoteuser on /mntssh type fuse.sshfs (rw,nosuid,nodev)
Přejděte také do svého přípojného bodu, uvidíte tam soubory ze vzdáleného systému
# cd /mntssh # ls
Krok 5:Připojte adresář při spouštění systému
Pokud chcete připojit vzdálený souborový systém automaticky pokaždé, když se váš systém restartuje, přidejte následující záznam do souboru /etc/fstab. Ujistěte se, že máte mezi vzdáleným a lokálním systémem klíčové nastavení ssh.
# vi /etc/fstab [email protected]:/home/remoteuser /mntssh fuse.sshfs defaults 0 0
Krok 6:Odpojte adresář
Pokud je vaše práce u konce a přípojný bod již nepotřebujete, jednoduše jej odpojte pomocí následujícího příkazu.
# umount /mntssh