¿Qué es SSHFS?
Hay varias formas de compartir un directorio a través de una red. En la configuración empresarial, encontrará Network Filesystem (NFS), Samba y varios sistemas de archivos distribuidos. SSHFS no se usa tanto en las empresas, pero aún puede ser útil. La belleza de esto es que todo su tráfico de red está encriptado de forma predeterminada, a diferencia de NFS o Samba. Y, además de instalar el programa de cliente SSHFS y crear un directorio de punto de montaje local, no requiere ninguna configuración más allá de lo que ya ha hecho.
Características de SSHFS
- Basado en FUSE (Mejor marco de sistema de archivos de espacio de usuario para Linux)
- Multiproceso:más de una solicitud puede estar en camino al servidor
- Permitir lecturas grandes (máximo 64k)
- Almacenamiento en caché del contenido del directorio
Requisito
Como se indicó anteriormente, no necesita mucha configuración para configurar SSHFS. Aquí está la lista de requisitos.
- 2 servidores Centos o Ubuntu
- Autenticación de clave SSH en los servidores
Paso 1:detenga IPTables y Selinux, y actualice la fecha y hora en los servidores y la autenticación SSH en los servidores.
Para detener el servicio de iptables y deshabilitar el inicio automático en el arranque:
# service iptables stop # chkconfig iptables off
Para deshabilitar SELinux, configure el parámetro "SELINUX=disabled" en /etc/sysconfig/selinux archivo.
# vi /etc/sysconfig/selinux ... SELINUX=disabled ###(Change enabled to disabled)
Generar las claves ssh y configurar ssh sin contraseña
En el servidor 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
En el servidor 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
Ahora abra el archivo de claves_autorizadas en ambos servidores y pegue la clave del servidor 1 en el archivo de claves_autorizadas del servidor 2 y viceversa.
Reiniciar el servicio ntp
Reinicie el servicio ntp en ambos servidores y reinicie los servidores.
# service ntpd restart # ntpdate pool.ntp.org # chkconfig ntpd on # init 6
Paso 2:Instale FUSE-SSHFS
Para los usuarios de CentOS/RHEL, Fuse SSHFS está disponible en el repositorio epel, así que asegúrese de haber instalado el repositorio epel en su sistema. Ahora ejecuta el siguiente comando para instalarlo.
En CentOS/RHEL:
# yum -y install epel-release # yum install -y fuse-sshfs
En Ubuntu y Dabian:
$ sudo apt-get update $ sudo apt-get install sshfs
Paso 3:montar el directorio remoto
Montemos el directorio del servidor remoto usando sshfs, asegúrese de que el sistema remoto tenga un servidor ssh en ejecución con la conectividad ssh adecuada desde su sistema. Primero crea un punto de montaje:
# mkdir /mntssh
Montemos el directorio remoto. Para este ejemplo, estamos montando el directorio /home/remoteuser del sistema x.x.x.x (remote.example.com) a nuestro sistema local.
# sshfs [email protected]:/home/remoteuser /mntssh
Salida de muestra:
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
Paso 4:Verificar el montaje
Después de montar el sistema de archivos remoto en el punto de montaje local, verifíquelo ejecutando el comando de montaje.
# 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)
También navegue a su punto de montaje, verá archivos allí desde el sistema remoto
# cd /mntssh # ls
Paso 5:Monte el directorio en el arranque del sistema
Si desea montar el sistema de archivos remoto automáticamente cada vez que se reinicia el sistema, agregue la siguiente entrada al archivo /etc/fstab. Asegúrese de tener una configuración ssh basada en clave entre el sistema remoto y el local.
# vi /etc/fstab [email protected]:/home/remoteuser /mntssh fuse.sshfs defaults 0 0
Paso 6:Desmontar directorio
Si su trabajo ha terminado y ya no necesita el punto de montaje, simplemente desmóntelo usando el siguiente comando.
# umount /mntssh