Tamaño: 2024
Comentario:
|
Tamaño: 2894
Comentario:
|
Los textos eliminados se marcan así. | Los textos añadidos se marcan así. |
Línea 2: | Línea 2: |
La idea de usar ProxyCommand es un opción para ejecutar automáticamente el comando ssh en el host remoto y pasar al siguiente host y reenviar todo el tráfico a través de netcat. | ProxyCommand es un opción para ejecutar automáticamente el comando ssh en el host remoto y pasar al siguiente host reenviando todo el tráfico a través de una netcat encriptada con ssh. <<TableOfContents>> |
Línea 5: | Línea 7: |
* Se configura el usuario ssh del equipo de la red privada en tú equipo. Esto inicia el proceso padre ssh. * El padre ssh crea un hijo ssh con E / S redirigido a tuneles que derivarán el tráfico de la conexión establecida (proxycommand). * El ssh hijo crea una conexión con la máquina de la red pública. * El proceso ssh en el equipo de la red pública crea una conexión tipo tcp con la máquina de la red privada deseada a través del puerto 22. * A esto se agrega un canal ssh a la conexión ssh existente entre tú equipo y el equipo de la red pública. * Entonces el padre de la conexión ssh escribe los datos de handshake del túnel, la conexión hijo ssh los lee desde aquél túnel, los envía a través del canal ssh a ssh del equipo de la red pública; ssh lo lee y lo escribe en el socket conectado al equipo de la red privada. Del mismo modo, los datos se transmiten desde la red privada a tú equipo |
En un modo simple esto funciona del siguiente modo: |
Línea 12: | Línea 9: |
== ¿Cómo hacerlo? == Para lograr está acción se debe editar el archivo configuración local de SSH ~/.ssh/config (Linux - OSX) e insertar lo siguiente: |
Se establece una conexión entre tú maquina y bioinfo.utalca.cl |
Línea 16: | Línea 12: |
+-------+ +------------+ you ---ssh--- bioinfo +-------+ +------------+ }}} bioinfo ejecuta un netcat para establecer conexión con un equipo de la red privada |
|
Línea 17: | Línea 18: |
{{{ +------------+ +--------+ bioinfo ---netcat--- server +------------+ +--------+ }}} Entonces tú estás conectado a través de una conexión ssh en un túnel netcat (encriptado) hasta el equipo de la red privada. {{{ +-----+ +------------+ +--------+ | you | | bioinfo | | server | | | ===ssh=over=netcat=tunnel====================> | | +-----+ +------------+ +--------+ }}} En el caso de nuestra escuela, considerar que: * Equipo de red pública: bioinfo.utalca.cl. * Equipo red privada: Todo aquél equipo que se encuentre en dependencias de la escuela. == ¿Cómo configurar? == La configuración es bastante sencilla, sólo se debe editar el archivo de configuración local de SSH ubicado en /home/user/.ssh/config (Linux) o /Users/user/.ssh/config (OSX) e insertar los siguientes tag con los datos relacionados: * Host: identificador único * User: usuario de la máquina final a la que se desea conectar * Hostname: con la IP de la máquina final * proxycommand: con la instrucción de conexión a establecer Un ejemplo o template para generar una conexión a la escuela puede ser: {{{ |
|
Línea 24: | Línea 54: |
}}} == Ejemplos == Para el caso de acceder al clustertalca, la configuración de ssh_config sería la siguiente: |
|
Línea 25: | Línea 58: |
{{{ Host clustertalca user: <usuariocluster> hostname 10.1.1.101 proxycommand ssh tu-usuario-bioinfo@bioinfo.utalca.cl nc %h %p 2> /dev/null }}} La conexión desde tú máquina se realiza del siguiente modo: {{{ ssh clustertalca }}} En caso de querer traspasar datos desde tú maquina hasta el cluster se debe ejecutar lo siguiente: {{{ scp fichero clustertalca: |
|
Línea 27: | Línea 78: |
Esto posiblemente facilitará la experiencia de uso y conectividad al centro de cómputo. Un ejemplo de conexión: user@clustertalca Siendo siempre el destino la referencia o parámetro que le hemos dado al tag Host en la configuración anterior. Ahora, en caso de necesitar realizar un copiado de datos mediante scp solo se tendría que hacer: scp fichero.local user@clustertalca: |
{{{ scp -r folder clustertalca: }}} |
Línea 40: | Línea 83: |
Para copiar los datos generados desde el clustertalca hasta tú máquina se puede realizar de la siguiente forma: {{{ scp clustertalca:fichero <mi directorio local> }}} |
SSH - ProxyCommand
ProxyCommand es un opción para ejecutar automáticamente el comando ssh en el host remoto y pasar al siguiente host reenviando todo el tráfico a través de una netcat encriptada con ssh.
Tabla de Contenidos
¿Cómo funciona?
En un modo simple esto funciona del siguiente modo:
Se establece una conexión entre tú maquina y bioinfo.utalca.cl
+-------+ +------------+ you ---ssh--- bioinfo +-------+ +------------+
bioinfo ejecuta un netcat para establecer conexión con un equipo de la red privada
+------------+ +--------+ bioinfo ---netcat--- server +------------+ +--------+
Entonces tú estás conectado a través de una conexión ssh en un túnel netcat (encriptado) hasta el equipo de la red privada.
+-----+ +------------+ +--------+ | you | | bioinfo | | server | | | ===ssh=over=netcat=tunnel====================> | | +-----+ +------------+ +--------+
En el caso de nuestra escuela, considerar que:
- Equipo de red pública: bioinfo.utalca.cl.
- Equipo red privada: Todo aquél equipo que se encuentre en dependencias de la escuela.
¿Cómo configurar?
La configuración es bastante sencilla, sólo se debe editar el archivo de configuración local de SSH ubicado en /home/user/.ssh/config (Linux) o /Users/user/.ssh/config (OSX) e insertar los siguientes tag con los datos relacionados:
- Host: identificador único
- User: usuario de la máquina final a la que se desea conectar
- Hostname: con la IP de la máquina final
- proxycommand: con la instrucción de conexión a establecer
Un ejemplo o template para generar una conexión a la escuela puede ser:
Host clustertalca user <tu-usuario-equipo-red-privada> hostname <ip-equipo-red-privada> proxycommand ssh tu-usuario-bioinfo@bioinfo.utalca.cl nc %h %p 2> /dev/null
Ejemplos
Para el caso de acceder al clustertalca, la configuración de ssh_config sería la siguiente:
Host clustertalca user: <usuariocluster> hostname 10.1.1.101 proxycommand ssh tu-usuario-bioinfo@bioinfo.utalca.cl nc %h %p 2> /dev/null
La conexión desde tú máquina se realiza del siguiente modo:
ssh clustertalca
En caso de querer traspasar datos desde tú maquina hasta el cluster se debe ejecutar lo siguiente:
scp fichero clustertalca:
scp -r folder clustertalca:
No olvidar que después del dos puntos (:) va en referencia al directorio personal ($HOME) del usuario.
Para copiar los datos generados desde el clustertalca hasta tú máquina se puede realizar de la siguiente forma:
scp clustertalca:fichero <mi directorio local>