viernes, 17 de diciembre de 2010

instalar sshfs en linux rama debian(ubuntu) y redhat(centos)

Caso: Instalar sshfs para compartir archivos entre un servidor y "n" maquinas cuya transferencia sera encriptada.
  • Instalar sshfs: En el servidor:
En Debian:
# apt-get install ssh
En Centos:
# yum install ssh
configuración del ssh
servidor: 192.168.1.10
puerto_ssh: 22
ojo: lo demás valores pueden estar por defecto

  • Instalar sshfs: En el cliente:
Para la familia de Debian 5.0+, Ubuntu 10.04+ y centos 5.0+ no hay necesidad de instalar el paquete fuse:
En Debian:
# apt-get install sshfs
En Centos:
# yum install sshfs
Ahora se puede utilizar el montaje clásico ingresando la ruta manualmente, contraseña, ip_servidor,etc; para eso utilice el comando sshfs de la siguiente manera:
$sshfs usuario@192.168.1.10:/home/usuario /data -p 22 -o nonempty
donde:
usuario: login del servidor
/home/usuario: directorio a montar
/data: carpeta local donde se montara la unidad anterior
-p : puerto, donde el puerto es 22
-o : opciones extras
nonempty: permitir que se monte sobre un archivo

Nota: mediante linea de comandos lo que te solicitara es que ingreses el password del usuario, el cual debe exisitir en el host 192.168.1.10, tendrás que ingresarlo manualmente.

Si deseas habilitar dicho procedimiento de manera automática en el fstab; deberás crear llaves para que el cliente se conecte de manera automática mediante ssh.
como root:
#ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
60:48:67:55:cc:b5:6f:f0:a0:5e:20:86:01:1c:ed:88 root@UCH
The key's randomart image is:
+--[ RSA 2048]----+
|   .+++..+...    |
|   ..+.o  o  .   |
|   ..o+ o . +    |
|  E ...o . o =   |
|        S . . +  |
|         . . .   |
|          .      |
|                 |
|                 |
+-----------------+
# cd .ssh/ 
# ls 
-rw------- 1 root root 1675 feb 16 11:00 id_rsa
-rw-r--r-- 1 root root  390 feb 16 11:00 id_rsa.pub
-rw-r--r-- 1 root root 4862 feb 14 07:28 known_hosts
copias la llave publica:id_rsa.pub al servidor 192.168.1.10
#ssh-copy-id 'usuario@192.168.1.10 -P22'
#vim /etc/fstab/ 
agregar al archivo
sshfs#usuario@192.168.1.10:/home/data /data fuse defaults,nonempty,port=22,uid=miusuario,gid=miusuario,users,user,noauto 0 0 

Donde: miusuario es el usuario de mi maquina cliente donde quiero establecer la conexión; en el caso de ubuntu cuando se crea un usuario automáticamente se genera un grupo con el mismo nombre por eso mi grupo también se llama miusuario.

Ahora puedes montar desde tu cliente de manera automatica mediante una conexión ssh una carpeta en tu servidor y todos los datos seran encriptados, tener en cuenta que si estas usando otro usuario para la conexión, todo esto en el fstab, por ejemplo data, tambien debe ser creado en tu sistema cliente, para lo cual en dicha ubicación /home/data/.ssh/id_rsa sera copiada la llave.

No hay comentarios:

 
;