¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Conexión ssh
ssh o Secure Shell, es un protocolo de administración remota que permite controlar sistemas remotos de manera encriptada.
OpenSSH divide la responsabilidad en dos programas uno cliente y otro servidor. Para conectarte a los servidores de IATE bastará con el programa cliente.
Conexión al cluster
Para poder acceder a los equipos de computo debe contar con un cliente ssh. Casi la totalidad de las distribuciones LINUX ya lo tienen preinstalado. Si éste es su caso pude ejecutar el siguiente comando desde una terminal:
ssh $USUARIO@<nombre del servidor>
En caso que quisiera iniciar lo conexión desde una maquina WINDOWS recomendamos el programa MoabXterm
La variable $USUARIO ha sido comunicada en el mail de confirmación de creación de la cuenta y será su nombre de usuario.
Para conectarse al clúster no es necesario especificar una password pues la llave SSH pública que nos proporcionó en el formulario de alta ha sido copiada en el directorio “home” de $USUARIO.
Llave pública/privada
Principios básicos para tener en cuenta:
- No debe comunicar el contenido de la private key,
- en caso de reinstalación del sistema operativo recordarse de hacer una copia de su carpeta .ssh, donde se almacenan sus llaves y configraciones,
- en caso de pérdida de la private key (por ejemplo luego de la reinstalación del sistema) comunicar a los administradores la nueva public key,
- la seguridad de su informacion y de los recursos que utiliza depende del uso responsable de los mecanismos de autentificación. En caso de hurto o robo de la private key (o de la computadora en la cual se encuentra almacenada) comunicar por mail soporte@iate.conicet.unc.edu.ar
Crear Llaves SSH
Como creo un nuevo par de llaves SSH en Linux?
Puede generar un nuevo par de llaves SSH desde el terminal de un sistema GNU/Linux ejecutando el siguiente comando:
$ ssh-keygen $ cat .ssh/id_rsa.pub
Comunicar la public key a los administradores.
Como creo un nuevo par de llaves SSH en Windows?
Para usuarios de Windows se recomienda seguir el siguiente pocedimiento utilizando MoabXterm
Que significa exactamente comunicar la public key a los administradores?
Las llaves generadas por el comando ssh-keygen se almacenan por defecto en el directorio $HOME/.ssh/ de la maquina desde la que nos queremos conectar. Los ficheros id_rsa e id_rsa.pub contienen respectivamente las llaves privada y pública. Para poder garantizar el acceso al cluster los administradores necesitan el contenido del fichero id_rsa.pub. El mismo se puede obtener gracias al comando cat:
$ cat $HOME/.ssh/id_rsa.pub
O bien puede enviar directamente el fichero id_rsa.pub como adjunto por mail.
Es posible acceder al cluster desde otras terminales diferentes a la que usé para crear la clave pública ssh?
Si, es posible.
Un forma sencilla es copiar los archivos de llaves a la nueva computadora ó bien generar un par de llaves nuevas en cada computadora para luego comunicar cada llave publica a los administradores de manera que se puedan agregar a su usuario en los equipos de computo.
No logro conectarme al cluster con la llave SSH
¿que puedo hacer antes de contactar el soporte?
1. Asegúrese que los permisos del fichero que contiene la llave privada son correctos ejecutando el siguiente comando:
$ chmod 600 $HOME/.ssh/id_rsa
2. Asegúrese que los permisos de la carpeta que contiene la llave privada son correctos ejecutando el siguiente comando:
$ chmod 700 $HOME/.ssh
3. Intente conectarse al cluster forzando el uso de la llave privada:
$ ssh -i $HOME/.ssh/id_rsa $USUARIO@<nombre del servidor>
4. Si aun así no funciona, contacte a soporte describiendo el problema y adjuntando la salida de:
$ ssh -vvv $USUARIO@<nombre del servidor>
Gestión de datos a distancia
Es posible montar localmente el directorio /home/$USUARIO del cluster y de este modo realizar todas las operaciones sobre los archivos (copiar, renombrar, editar, etc.) con las herramientas de preferencia instaladas en su PC de trabajo. El método funcionará únicamente si las llaves SSH están correctamente configuradas y tiene instalado sshfs en su sistema.
Montaje del directorio con sshfs:
En primer lugar se debe crear en el sistema cliente un repertorio que utilizaremos a continuación como punto de montaje local:
$mkdir $USUARIO/datos_nombre
Luego se realiza el montaje reemplazando la variable $USUARIO por el nombre de usuario asignado en el cluster:
$ sshfs $USUARIO@<nombre del servidor>:/home/$USUARIO/carpeta de salida /home/$USUARIO/datos_nombre
para desmontar la unidad:
$ sudo umount /home/$USUARIO/ <font inherit/inherit;;#16a085;;inherit>datos_nombre</font>