User Tools

Site Tools


wiki:tuneles

Conectarse a los servidores del iate desde fuera del instituto



Desde fuera de la red interna que proporciona el iate, el único servidor accesible directamente es perrine. Con el comando ssh podemos acceder a perrine:

  • [ Usuario@local ~]$  ssh  usuario@iate.oac.uncor.edu

Donde:
            
  • usuario: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.


Conexión a los servidores internos


Si se necesita conectarse a la PC de la oficina o a otros servidores del iate (clemente, mirta2, mirta3, toritos,etc.) se puede utilizar perrine como servidor intermedio. Una vez conectado a perrine se conecta al equipo deseado.


  • [ Usuario@local ~]$  ssh  usuario@iate.oac.uncor.edu

  • [ Usuario@perrine ~]$  ssh  usuario@nombreServidor

Donde:
            
  • usuario: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.
  • nombreServidor: debe ser reemplazado por la PC o el servidor del iate (clemente, mirta2, mirta3, sersic, etc.) donde desea conectarse.

Nota: el servidor que se desea conectar debe tener instalado el servicio ssh server, en el caso de las PC de oficina.


Podríamos efectuar los dos pasos del anterior ejemplo en uno solo paso:

  • [ usuario@local ~]$  ssh  -A  -t  Usuario@iate.oac.uncor.edu  -A  usuario@nombreServidor

Donde:
            
  • usuario: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.
  • nombreServidor: debe ser reemplazado por la PC o el servidor del iate (clemente, mirta2, mirta3, sersic, etc.) donde desea conectarse.
  • -A: opción de ssh que habilita el reenvío de la conexión del agente de autenticación. Sirve para la autentificación.
  • -t: opción de ssh que abre un pseudo-tty con la sesión actual. Sirve para la correcta configuración de las terminales.


Conexiones que persisten a las sesiones

Existen varias formas de hacer conexiones entre servidores usando openssh. Algunas de ellas necesitan tener instalada versiones de ssh a partir de la que se agregan las nuevas características.

La forma para determinar la versión instalada de ssh es usando el comando:

  • [ Usuario@local ~]$  ssh -V


A continuación se explicarán las dos formas más utilizadas proxyjump y ssh -W:


proxyjump

El comando proxyjum es la forma mas sencilla de realizar conexiones, esta disponible en openssh a partir de la versión 7.3. En la máquina que inicia la conexión se debe editar el archivo $HOME/.ssh/config

Añadimos al final del archivo la siguiente configuración.

  • host nombreServidor

  • user usuario1

  • forwardagent yes

  • proxyjump usuario@iate.oac.uncor.edu


Donde:
            
  • nombreServidor: debe ser reemplazado por la PC o el servidor del iate (clemente, mirta2, mirta3, sersic, etc.) donde desea conectarse.
  • usuario1: debe ser reemplazado por el usuario de su cuenta en el servidor o PC.
  • usuario2: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.
  • forwardagent yes: nos permite usar la claves de la máquina local en una conexión entre servidores sin guardarlas en la memoria no volátil de un servidor.
  • proxyjump: es el comando usado para conectar a el servidor.

Una vez guardada la configuración, podemos conectarnos usando el comando:

  • [ Usuario@local ~]$  ssh  nombreServidor

También existe la forma persistente, pero en una sola linea:

  • [ Usuario@local ~]$ ssh -J usuario1@iate.oac.uncor.edu:port1 usuario2@nombreServidor:port2


Donde:
            
  • usuario1: debe ser reemplazado por el usuario de su cuenta en el servidor o PC.
  • usuario2: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.
  • nombreServidor: debe ser reemplazado por la PC o el servidor del iate (clemente, mirta2, mirta3, sersic, etc.) donde desea conectarse.
  • J= parámetro que identifica el comando proxyjump
  • port1: número de puerto utilizado del servidor iate, se puede omitir.
  • port2: número de puerto utilizado del servidor o PC, se puede omitir.



ssh -W (netcat mode)

El parámetro -W en openssh permite realizar conexiones, esta disponible en openssh a partir de la versión 5.4. En la máquina que inicia la conexión se debe editar el archivo $HOME/.ssh/config


Añadimos al final del archivo la siguiente configuración.

  • host nombreServidor

  • user usuario1

  • forwardagent yes

  • proxycommand ssh  usuario2@iate.oac.uncor.edu -W %h:%p


Donde:
            
  • nombreServidor: debe ser reemplazado por la PC o el servidor del iate (clemente, mirta2, mirta3, sersic, etc.) donde desea conectarse.
  • usuario1: debe ser reemplazado por el usuario de su cuenta en el servidor o PC.
  • usuario2: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.
  • forwardagent yes: nos permite usar la claves de la máquina local en una conexión entre servidores sin guardarlas en la memoria no volátil de un servidor.
  • ProxyCommand: especifica el comando usado para conectar el servidor.
  • -W: parámetro para especificar que se realiza una conexión.
  • %h: usado para especificar el host.
  • %p: usado para especificar el puerto.

Una vez guardada la configuración, podemos conectarnos usando el comando:

  • [ Usuario@local ~]$  ssh  nombreServidor

También existe la forma no persistente, pero en una sola linea:

  • [ Usuario@local ~]$ ssh usuario2@nombreServidor -o 'ProxyCommand ssh usuario1@iate.oac.uncor.edu -W %h:%p'


Donde:
            
  • nombreServidor: debe ser reemplazado por la PC o el servidor del iate (clemente, mirta2, mirta3, sersic, etc.) donde desea conectarse.
  • usuario1: debe ser reemplazado por el usuario de su cuenta en el servidor o PC.
  • usuario2: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.
  • ProxyCommand: especifica el comando usado para conectar el servidor.
  • -W: parámetro para especificar que se realiza una conexión.
  • %h: usado para especificar el host.
  • %p: usado para especificar el puerto.

Estas configuraciones puede combinarse con otras herramientas, por ejemplo con sshfs podemos traer carpetas y archivos de un servidor interno en el iate para ser usados de una PC fuera del instituto

  • [ Usuario@local ~]$  sshfs  usuario@nombreServidor:/carpetaRemota/ /carpetaLocal/



Montar un sistema de ficheros remoto

Montar un sistema de archivos remotos se puede resumir como integrar el sistema de archivos de un servidor externo a nuestro propio sistema de archivo. En Linux no existe el concepto de unidades, todos los dispositivos, carpetas o archivos están en un único directorio. De esta manera se puede interactuar con los archivos que se tiene almacenados en servidores remotos (ej. clemente, mirta2, etc.) como si fueran una subcarpeta del directorio raiz. Para montar un sistema de archivos se necesita tener instalado el módulo FUSE y el programa SSHFS.


SSHFS

Secure SHell FileSystem (SSHFS) es un sistema de archivos para GNU/Linux, BDS y otros SO tipos UNIX que permite montar un directorio remoto en el espacio de usuario haciendo uso de FUSE y ssh. SSHFS se conecta utilizando el protocolo SFTP (SSH File Transfer Protocol) para acceder, transferir y modificar los archivos remotos de forma segura, porque el protocolo SFTP usa SSH para la autentificación y transmisión de datos entre el equipo local y el equipo remoto.



Instalación en Debian, Ubuntu o Linux Mint

  • sudo apt-get update

  • sudo apt-get install sshfs fuse


Instalación en CentOS/RHEL 7

  • yum install fuse-sshfs





FUSE

FUSE es un módulo del kernel que permite montar distintos sistemas de ficheros con un usuario normal sin privilegios.

Montar una carpeta remota a una carpeta local

  • [ Usuario@local ~]$  sshfs  usuario@nombreServidor:/carpetaRemota  /carpetaLocal

Donde:
            
  • sshfs: comando para montar el sistema de archivos.
  • usuario: debe ser reemplazado por el usuario de su cuenta en los servidores del iate.
  • nombreServidor: debe ser reemplazado por la PC o el servidor del iate (clemente, mirta2, mirta3, sersic, etc.) donde desea conectarse.
  • carpetaRemota: nombre de la carpeta en el servidor desde la cual se quiere obtener recursos.
  • carpetaLocal: nombre de la carpeta local donde se montará el sistema de archivos.

wiki/tuneles.txt · Last modified: 2019/07/15 19:44 by admin