SSHFS. Volúmenes remotos con comunicación segura

En Linux es común querer dejar disponible unidades de otros equipos remotos bien sea por netbios (windows) o también por ssh (linux cifrado). Cuando me aconsejaron remontar mis volúmenes remotos de esta manera debido a la ganancia de velocidad, me puse manos a la obra ya que suelo tener unos 8 volúmenes externos montados en local en mi ordenador de escritorio, por lo que las ventajas de velocidad a todas luces me iban a favorecer especialmente.

I. Preparación:

Instalación de paquetes necesarios, con apt-get en mi Debian.

nombredehostaluso:~& sudo apt-get install sshfs fuse

Tras esto me dispuse a resolver el tema de la petición de clave mediante ssh cuando se establece una comunicación entre 2 equipos, en este caso no me interesa esa «interactividad» porque yo lo que necesitaba era que la cosa de hiciera de manera automática.

Para resolver este tema lo hice de la siguiente manera, lo primero es generar una clave de intercambio que identifique a un equipo en la red cuando se intente acceder al mismo mediante SSH. Esto se realiza de la siguiente manera:

nombredehostaluso:~& ssh-keygen -t rsa

En este ejemplo hemos elegido el algoritmo de creación de cifra RSA. Este comando nos realiza una serie de preguntas a las que yo respondí en blanco para no mediar ninguna «frase de paso» entre la comunicación de los equipos, finalmente genera 2 archivos en nuestro directorio ~/.ssh/ que son «id_rsa» e «id_rsa.pub«, este último contiene la clave PÚBLICA que identificará a nuestro equipo en la red. Repetí el proceso en todos los equipos que intervenían en la operación «ssh sin clave».

Tras esto el tema fue trivial, sólo hay que crear dentro de ese mismo directorio un archivo llamado «authorized_keys» donde se debe agregar el contenido del archivo «id_rsa.pub» de los equipos remotos a los que nos queremos conectar, formándose así un anillo de confianza SSH entre todos los equipos entre los cuales la comunicación se hará sin pedir verificación, exactamente lo que necesitaba, sin intercambio de clave interactivo.

II. Configuración:

Tuve que comprobar que podía montar las unidades como root (administrador) desde la consola, comprobándolo mediante el comando siguiente:

nombredehostaluso:~# sshfs usuario@maquinaremota:/directorio/puntomontajeremoto puntomontajelocal

Funcionaba bien y sobre todo rápido. Pasé unos 600 Mb. en 1 minuto aprox. entre dos equipos próximos en una LAN de 10/100.

Para usarlo en modo usuario debí modificar los permisos del «fusermount» para que no me diera ningún problema.

nombredehostaluso:~& sudo chmod 4755 /usr/bin/fusermount

Procedí a hacer automática la carga de un módulo en el kernel llamado «fuse» que me permite coger un sistema de ficheros y montarlo en el espacio de usuario, agregué «fuse» al final del archivo en /etc/modules.

nombredehostaluso:~# echo «fuse» >> /etc/modules

Así procedí a realizar la inclusión del montaje del volumen, en mi caso unos cuantos, dentro del fstab para que la cosa fuera suave, automática y sin problemas. La línea primera quedó de esta manera:

sshfs#necrolitus@golum:/media/audio /mnt/remoto/audio fuse defaults,user 0 0

De esta manera ahora tengo mis unidades montadas mediante SSHFS de una manera transparente con una disponibilidad máxima y excelente velocidad de acceso.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *