Androide

Cómo usar sshfs para montar directorios remotos sobre ssh

TRANSFERIR ARCHIVOS VIA SSH

TRANSFERIR ARCHIVOS VIA SSH

Tabla de contenido:

Anonim

SSHFS (SSH Filesystem) es un cliente de sistema de archivos basado en FUSE para montar directorios remotos a través de una conexión SSH. SSHFS está utilizando el protocolo SFTP, que es un subsistema de SSH y está habilitado de forma predeterminada en la mayoría de los servidores SSH.

En comparación con otros protocolos del sistema de archivos de red como NFS y Samba, la ventaja de SSHFS es que no requiere ninguna configuración adicional en el lado del servidor. Para usar SSHFS solo necesita acceso SSH al servidor remoto.

Como SSHFS usa SFTP, todos los datos transmitidos entre el servidor y el cliente deben cifrarse y descifrarse. Esto da como resultado un rendimiento ligeramente degradado en comparación con NFS y un mayor uso de CPU en el cliente y el servidor.

Este tutorial le mostrará cómo instalar el cliente SSHFS en Linux, macOS y Windows y cómo montar un directorio remoto.

Instalar SSHFS

Los paquetes SSHFS están disponibles para todos los principales sistemas operativos y la instalación es bastante sencilla.

Instalación de SSHFS en Ubuntu y Debian

SSHFS está disponible en los repositorios predeterminados de Ubuntu y Debian. Actualice el índice de paquetes e instale el cliente sshfs escribiendo:

sudo apt update sudo apt install sshfs

Instalación de SSHFS en CentOS

En CentOS y otros derivados de Red Hat, ejecute el siguiente comando para instalar sshfs:

sudo yum install sshfs

Instalación de SSHFS en macOS

Los usuarios de macOS pueden instalar el cliente SSHFS descargando los paquetes FUSE y SSHFS del sitio osxfuse o vía Homebrew:

brew cask install osxfuse brew install sshfs

Instalar SSHFS en Windows

Los usuarios de Windows necesitan instalar dos paquetes, WinFsp y SSHFS-Win.

  • WinFsp.SSHFS-Win.

Montaje del sistema de archivos remoto

Las siguientes instrucciones son aplicables para todas las distribuciones de Linux y macOS.

Para montar un directorio remoto, el usuario SSH necesita poder acceder a él. El comando de montaje SSHFS toma la siguiente forma:

sshfs host: mountpoint

El comando sshfs leerá el archivo de configuración SSH y usará la configuración por host. Si no se especifica el directorio remoto, se establece de manera predeterminada en el directorio de inicio del usuario remoto.

Por ejemplo, para montar el directorio de inicio de un usuario llamado "linuxize" en un host remoto con la dirección IP "192.168.121.121", primero cree un directorio que sirva como punto de montaje, puede ser cualquier ubicación que desee:

mkdir ~/linuxizeremote

Luego use el comando sshfs para montar el directorio remoto:

sshfs [email protected]:/home/linuxize /home/linuxize/linuxizeremote

Se le pedirá que ingrese la contraseña de usuario. Para evitar escribir la contraseña cada vez que monte el directorio remoto, genere claves SSH y configure el inicio de sesión SSH sin contraseña.

Ahora puede interactuar con los directorios y archivos ubicados en un servidor remoto de la misma manera que lo hace con los archivos locales. Por ejemplo, puede editar, eliminar, renombrar o crear nuevos archivos y directorios.

Si desea montar permanentemente el directorio remoto, debe editar el /etc/fstab la máquina local /etc/fstab agregar una nueva entrada de montaje. De esta manera, cuando el sistema se inicie, montará automáticamente el directorio remoto.

Para montar un directorio remoto sobre SSHFS desde /etc/fstab , use fuse.sshfs como el tipo de sistema de archivos.

/ etc / fstab

user@host:/remote/dir /local/mountpoint fuse.sshfs defaults 0 0

Al crear un montaje persistente, asegúrese de poder conectar el host remoto utilizando la autenticación basada en clave SSH.

Montaje del sistema de archivos remoto en Windows

Los usuarios de Windows pueden usar el Explorador de Windows para asignar una unidad de red al directorio remoto en el servidor SSH.

Abra el Explorador de Windows, haga clic derecho en "Esta PC" y seleccione "Asignar unidad de red". Elija una unidad para montar en y en el campo "Carpeta" ingrese el usuario remoto, el servidor y la ruta en el siguiente formato:

\\sshfs\user@host

Al momento de escribir este artículo, SSHFS-Win no admite la autenticación basada en claves, por lo que el servidor ssh remoto debe configurarse para aceptar la autenticación basada en contraseña.

Para obtener información más detallada, consulte el manual SSHFS-Win.

Desmontaje del sistema de archivos remoto

Para separar un sistema de archivos montado, use el umount o fusermount seguido del directorio donde se ha montado (punto de montaje):

fusermount -u /local/mountpoint

umount /local/mountpoint

Conclusión

En esta guía, ha aprendido cómo usar SSHFS para montar un directorio remoto sobre SSH. Esto puede ser útil cuando desea interactuar con los archivos remotos utilizando las aplicaciones de su máquina local.

Para obtener una lista completa de las opciones de sshfs, escriba man sshfs en su terminal.

También es posible que desee restringir el acceso de los usuarios a su directorio de inicio configurando un entorno SFTP Chroot Jail y cambiando el puerto SSH predeterminado para agregar una capa adicional de seguridad a su servidor.

terminal de montaje ssh sftp