Herramientas de usuario

Herramientas del sitio


wiki:conexion

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
Ambos lados, revisión siguiente
wiki:conexion [2021/12/14 18:51]
landrada creado
wiki:conexion [2021/12/27 20:24] (actual)
cvillalon
Línea 1: Línea 1:
-====== Conexión ======+====== Conexión ssh ====== 
 + 
 +ssh o **S**ecure **Sh**ell, 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 ===== ===== Conexión al cluster =====
 +
 ---- ----
-Para poder acceder al cluster 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@mendieta.ccad.unc.edu.ar+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: 
 +<code> 
 +ssh $USUARIO@<nombre del servidor>
  
-o bien+</code>
  
-  ssh $USUARIO@eulogia.ccad.unc.edu.ar+En caso que quisiera iniciar lo conexión desde una maquina WINDOWS recomendamos el programa [[:wiki:mobaxterm|MobaXterm]]
  
-En caso que quisiera iniciar lo conexión desde una maquina WINDOWS recomendamos el programa [[https://mobaxterm.mobatek.net/download.html| 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 cluster no es necesario especificar una password pues la llave //SSH pública// que nos proporcionó en el formulario de alta ha sido ingresada para su $USUARIO. 
 +===== Llave pública/privada =====
  
-La variable $USUARIO ha sido comunicada en el mail de confirmación de creación de la cuenta y será su nombre de usuario dentro de los clusters. 
- 
-Para conectarse a la cabecera del cluster no es necesario especificar una password pues la llave SSH pública 
-enviada en la solicitud ha sido copiada en el directorio "home" de $USUARIO. 
- 
-===== Mecanismo de llave pública/privada ===== 
 ---- ----
-Haciendo una analogía con el mundo real, podríamos paragonar el mecanismo de conexión al cluster mediante llaves SSH con la puerta de nuestra casa. 
-Este mecanismo se compone de un par de archivos llamados //public key// y //private key//. El archivo público (//public key//) representa la cerradura de la puerta mientras que el archivo privado (//private key//) es la llave que abre dicha cerradura. Así como es posible poner la misma cerradura a muchas puertas y usar la misma llave para entrar a todas copiando la //public key// en varios servidores, es también factible poner varias cerraduras en la misma puerta y abrir la misma con diferentes llaves copiando varias //public keys// en el mismo servidor. 
  
 Principios básicos para tener en cuenta: Principios básicos para tener en cuenta:
-  * la //private key// debe permanecer siempre bajo custodia de la misma manera que custodiamos la llave de nuestra casa, 
-  * en NINGUN CASO se debe comunicar el contenido de la //private key//, 
-  * en caso de reinstalación del sistema operativo recordarse de hacer una copia de la //private key//, 
-  * en caso de pérdida de la //private key// (por ejemplo luego de la reinstalación del sistema) comunicar a los administradores del cluster la nueva //public key//, 
-  * un cluster es un sistema de recursos computacionales compartidos, la seguridad del mismo depende en gran medida 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 intempestivamente el episodio al mail soporte at ccad dot unc dot ar. 
  
-==== Preguntas frecuentes ====+  * No debe comunicar el contenido de la //private key//. 
 +  * En caso de reinstalación del sistema operativo recordar hacer una copia de su carpeta .ssh, donde se almacenan sus llaves y configuraciones. 
 +  * 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 información 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 |soporte@iate.conicet.unc.edu.ar ]] 
 + 
 +===== Crear Llaves SSH ===== 
 ---- ----
-**Como creo un nuevo par de llaves SSH en Linux?**+ 
 +==== ¿Cómo 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: Puede generar un nuevo par de llaves SSH desde el terminal de un sistema GNU/Linux ejecutando el siguiente comando:
-  ssh-keygen+<code>
  
-**Como creo un nuevo par de llaves SSH en Windows?**+$ ssh-keygen 
 +$ cat .ssh/id_rsa.pub
  
-Para usuarios de Windows se recomienda seguir el siguiente pocedimiento:+</code>
  
-1. Descargar Mobaxterm desde la pagina [[http://mobaxterm.mobatek.net/download-home-edition.html | de descarga]] eligiendo la versión portable.+Comunicar la //public key// a los administradores.
  
-2. Descomprimir el archivo zip, (si piensa conectarse al cluster desde distintas computadoras descomprima en un USB)+==== ¿Cómo creo un nuevo par de llaves SSH en Windows? ====
  
-3. Ejecutar el programa Mobaxterm+Para usuarios de Windows se recomienda seguir el siguiente procedimiento utilizando [[:wiki:mobaxterm|MobaXterm]]
  
-4. Dentro de la terminal que ofrece el programa lanzar los siguientes comandos: +**¿Qué significa exactamente comunicar la //public key// a los administradores?**
-+
-  ssh-keygen +
-  cat .ssh/id_rsa.pub+
  
-5Comunicar la //public key// los administradores.+Las llaves generadas por el comando //ssh-keygen// se almacenan por defecto en el directorio $HOME/.ssh/ de la máquina con la cual se desea 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: 
 +<code>
  
-**Que significa exactamente comunicar la //public key// a los administradores?**+$ cat $HOME/.ssh/id_rsa.pub
  
-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. +</code>
-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.
  
-O bien puede enviar directamente el fichero $HOME/.ssh/id_rsa.pub como pieza adjunta por mail.+**¿Es posible acceder al cluster desde otras terminales diferentes a la que usé para crear la clave pública ssh?**
  
-**Es posible acceder al cluster desde otras terminales diferentes a la que usé para crear la clave pública ssh?**+Sí, es posible.
  
-Si, es posible. Para ello existen dos maneras de hacerlo:+Una forma sencilla es copiar los archivos de llaves a la nueva computadora o bien generar un par de llaves nuevas en cada computadora para luego comunicar cada llave pública a los administradores de manera que se puedan agregar a su usuario en los equipos de cómputo.
  
-1. Copiar la llave privada en todas las terminales, es decir transferir el fichero $HOME/.ssh/id_rsa original a la nueva computadora: +====   ====
-  scp $HOME/.ssh/id_rsa usuario@mi.otra.computadora:~/.ssh +
-2. Generar un par de llaves en cada computadora y copiar la llave pública en el cluster. Para ello se debe ejecutar el comando ssh-keygen en la computadora nueva, visualizar el contenido de la llave pública, conectarse al cluster a partir de la terminal que se usa habitualmente y copiar el contenido de la llave pública apenas generada en el fichero $HOME/.ssh/authorized_keys que se encuentra en el cluster. Si por alguna razón no puede conectarse al cluster, puede comunicar la la //public key// a los administradores.+
  
-===No logro conectarme al cluster con la llave SSH=== + 
-**¿que puedo hacer antes de contactar el soporte?**+==== No logro conectarme al cluster con la llave SSH ===
 + 
 +**¿Qué puedo hacer antes de contactar soporte?**
  
 1. Asegúrese que los permisos del fichero que contiene la llave privada son correctos ejecutando el siguiente comando: 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: +<code> 
-  chmod 700 $HOME/.ssh+chmod 600 $HOME/.ssh/id_rsa
  
-3. Intente conectarse al cluster forzando el uso de la llave privada: +</code>
-  ssh -i  $HOME/.ssh/id_rsa $USUARIO@mendieta.ccad.unc.edu.ar+
  
-4Si aun así no funciona, pruebe nuevamente con el siguiente comando: +2Asegúrese que los permisos de la carpeta que contiene la llave privada son correctos ejecutando el siguiente comando:
-  SSH_AUTH_SOCK=0 ssh -i  $HOME/.ssh/id_rsa $USUARIO@mendieta.ccad.unc.edu.ar+
  
-Si con este comando la conexión funciona, debe simplemente agregar la llave privada al repositorio del agente de autenticación:+<code> 
 +$ chmod 700 $HOME/.ssh
  
-  ssh-add+</code>
  
-**La conexión al cluster funciona forzando el uso de la llave SSH con ssh -i, que puedo hacer antes de contactar el soporte?**+3. Intente conectarse al cluster forzando el uso de la llave privada:
  
-Si la conexión funciona forzando la utilización de la llave SSH, significa que el problema no se encuentra en el cluster sino en el cliente. +<code> 
-En la mayoría de los casos este problema se soluciona modificando el fichero ///etc/ssh/sshd_config// presente en el sistema de su PC. +$ ssh -i  $HOME/.ssh/id_rsa $USUARIO@<nombre del servidor>
-Debe buscar en el mismo la directiva IdentityFile y modificarla de la siguiente manera:+
  
-  IdentityFile ~/.ssh/id_rsa+</code>
  
-**Intenté todo pero sigue fallando**+4. Si aún así no funciona, contacte a soporte describiendo el problema y adjuntando la salida de:
  
-Es momento de contactar a al soporte, al hacerlo por favor adjunte la salida del comando+<code> 
 +$ ssh -vvv $USUARIO@<nombre del servidor>
  
-  ssh -vvv $USUARIO@mendieta.ccad.unc.edu.ar+</code> 
 + 
 +===== Gestión de datos a distancia =====
  
-==== 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. 
-Para ello existen diferentes métodos. A continuación presentamos los 3 más utilizados. **Todos estos métodos funcionaran únicamente si las llaves SSH están correctamente configuradas.** 
  
-1. Montaje del directorio con sshfs:+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.**
  
-En primer lugar se debe crear en el sistema cliente un repertorio que utilizaremos a continuación como punto de montaje local:+==== Montaje del directorio con sshfs====
  
-  mkdir $HOME/datos_mendieta+En primer lugar se debe crear en el sistema cliente un repertorio que utilizaremos a continuación como punto de montaje local:
  
-Luego se realiza el montaje reemplazando la variable $USER por el nombre de usuario asignado en el cluster:+<code> 
 +$mkdir $USUARIO/datos_nombre
  
-  sshfs $USER@mendieta.ccad.unc.edu.ar:/home/$USER $HOME/datos_mendieta+</code>
  
-Comprobar que el repertorio se ha montado correctamente y que se poseen los permisos para operar en el sistema remoto:+Luego se realiza el montaje reemplazando la variable $USUARIO por el nombre de usuario asignado en el cluster:
  
-  ls $HOME/datos_mendieta +<code> 
-  touch $HOME/datos_mendieta/puedoescribir +sshfs $USUARIO@<nombre del servidor>:directorio_de_salida  $HOME/datos_nombre
-  rm $HOME/datos_mendieta/puedoescribir+
  
-Para desmontar el repertorio se utiliza el siguiente comando:+</code>
  
-  fusermount -u $HOME/datos_mendieta+para desmontar la unidad:
  
-2. Montaje del directorio al arranque:+<code> 
 +$ sudo umount /home/$USUARIO/datos_nombre
  
-Es posible configurar el sistema cliente para que monte automáticamente el repertorio home del cluster al arranque. Para ello debemos seguir algunos pasos muy sencillos. +</code>
-En primer lugar asegurarse que el usuario pertenece al grupo //fuse// o bien que puede acceder en lectura al fichero ///etc/fuse.conf//. El fichero ///etc/fuse.conf// debe contener la siguiente instrucción: +
-  user_allow_other+
  
-Si no es el caso, editar el fichero con el superusuario root.+===== El archivo Config =====
  
-Una vez hecho esto, agregar la siguiente linea al fichero ///etc/fstab// :+Ssh admite muchos parámetros para su configuración y podemos tener dentro de la carpeta **.ssh** un archivo de configuración que agrupe lo que necesitamos, por defecto este archivo se llama **config** aunque podemos tener varios e invocarlos mediante ssh -F /path/to/configfile \\ para que todo funcione correctamente tanto las carpetas y los archivos dentro de ella deben tener los permisos válidos, los que suelen cambiar al trasladarlos de un equipo a otro, tener cuidado con la copia.
  
-  $USER@mendieta.ccad.unc.edu.ar:/home/$USER  $MOUNTPOINT fuse.sshfs auto,_netdev,user,idmap=user,transform_symlinks,identityfile=$HOME/.ssh/id_rsa,allow_other,default_permissions, 0 0+==== Contenido del archivo config ====
  
-El reemplazo de las variables se hará de esta manera:+Lo mejor es ver un ejemplo de su estructura, es bastante simple y nos ayuda a tener de manera ordenada las diferentes configuraciones
  
-$USER es el nombre de usuario en el cluster mendieta+cat .ssh/config
  
-$MOUNTPOINT es el nombre del repertorio local donde se quieren montar los datos remotos. Debe contener el path absoluto, por ejemplo ///home/maradona/datos_mendieta//+<code> 
 +host * 
 +user jusuario
  
-$HOME es el repertorio home del usuario local donde se encuentra la llave SSH privada.+host perrine 
 +hostname iate.oac.uncor.edu
  
-3Montaje del directorio desde la interfaz gráfica:+host clemente 
 +hostname clemente 
 +forwardagent yes 
 +proxyjump jusuario@iate.oac.uncor.edu
  
-Los usuarios de GNOME o KDE pueden si así lo desean montar el repertorio home del cluster directamente a partir de la interfaz gráfica. +host sersic 
-Los pasos a seguir son realmente sencillos, a saber:+hostname sersic 
 +forwardagent yes 
 +proxyjump jusuario@iate.oac.uncor.edu
  
-**GNOME (Nautilus)**+</code>
  
-1. Abrir un gestor de archivos+Podemos detallar tantas conexiones a diferentes equipos como sea necesario y explorar más opciones de configuracion para aplicar. Este ejemplo aplica para las conexiones desde el exterior y para su uso sólo basta con ingresar:
  
-2. Hacer click en Archivo-> 3. En el cuadro de dialogo colocar los siguientes parámetros:+$ ssh clemente
  
-  servidor: mendieta.ccad.unc.edu.ar +{{  :wiki:clemente.png?nolink&653x426  }} \\ Ya no necesitamos recordar todos esos datos de conexión y podremos acceder al servidor de una manera mucho más ágil.
-  tipossh +
-  carpeta/home/$USUARIO   (reemplace por el correspondiente) +
-  usuario: $USUARIO +
-  contraseña: si desea crear un atajo para que quede configurada la conexion tildar //añadir marcador//+
  
  
wiki/conexion.1639507868.txt.gz · Última modificación: 2021/12/14 18:51 por landrada