Linux Fu: Estúpidos trucos de SSH

Si te conectas a ordenadores remotos a través de Internet, es muy probable que utilices algún tipo de SSH o shell seguro. En Linux o en Unix usarás el comando ssh. Lo mismo ocurre con los entornos similares a Linux en Windows como Cygwin o WSL. Para Windows nativo, podrías usar Putty. En su forma más simple, ssh es sólo un programa de terminal que habla con un servidor usando una conexión cifrada. Creemos que es muy difícil escuchar a escondidas a cualquiera que se comunique con un ordenador remoto a través de ssh.

Hay varios trucos para usar ssh – algunos son bastante sencillos y otros son cosas que usted podría pensar que no están en el dominio de un programa de terminal. Probablemente sabe que ssh puede copiar archivos de forma segura, y hay formas fáciles y difíciles de configurar el inicio de sesión sin contraseña.

Sin embargo, también puede montar un sistema de ficheros remoto mediante ssh (en realidad, hay varias formas de hacerlo). Puedes usar ssh para navegar de forma segura por la web en tu navegador favorito, o incluso usarlo para tunelizar un tráfico específico por puerto o incluso usarlo como una VPN improvisada. De hecho, hay tanto terreno por cubrir que este no será el último Fu de Linux en hablar de ssh. Pero suficiente configuración, vayamos a los trucos.


Unas cuantas buenas opciones

Asumiremos que conoce los fundamentos: scp y sftp para las copias de archivos y ssh-copy-id para configurar el inicio de sesión sin contraseña. (Si no, tienes diez minutos para hacer una búsqueda rápida en la web.) Pero una de las cosas en las que ssh es genial es en la manipulación de la red. Tenga en cuenta, sin embargo, que el servidor tiene que tener ciertas opciones configuradas para hacer algunas de las cosas más interesantes, así que si no controla el servidor ssh, algunos de estos trucos podrían no funcionar para usted.

Hay muchas opciones para recordar en la línea de comandos de ssh, pero por suerte no tienes que hacerlo. Ni siquiera tienes que recordar tu nombre de host o nombre de usuario. En el archivo ~/.ssh/config puede crear un alias. Por ejemplo, supongamos que quiere conectarse a su servidor local:

12345678Host homeserverNombre del host mih0me.dyndns.orgPort 1234User TheAlIdentityFile ~/.ssh/home_idForwardX11 síCompresión síTCPKeepAlive sí

Puedes tener tantos alias como quieras. Sólo tienes que repetir la línea de Host y luego seguirla con las opciones. También puede agregar más de un alias a una sola declaración de Host. Las opciones siguientes se aplicarán a cualquiera de los alias. Ahora para conectar sólo emite ssh homeserver y ya tienes todas las opciones correctas.

Por supuesto, si está usando Putty, sus opciones estarán principalmente en el perfil del host y en el panel ssh de la pantalla de opciones. Puede que no tengas tantas opciones, pero hay algunas que puedes probar.


Ser persistente

Un muy buen conjunto de opciones para incluir el archivo de control maestro. Por ejemplo:

12ControlMaster autoControlPath ~/.ssh/master-%r@%h:%p

Esto permite que varias sesiones al mismo host compartan un solo socket TCP. Debido a que toma algún tiempo configurar un socket seguro, esto puede acelerar las cosas si mantiene varias sesiones entre dos hosts. Puede configurarlo para todos los hosts utilizando la línea Host * en el archivo de configuración. Puede usarla para cualquier opción global que pueda tener.

Por otro lado, si se introducen muchos datos en varias conexiones, puede que activar el ControlMaster no sea una gran idea. Puede añadir -S none para anular la configuración global.

Otra cosa que hay que tener en cuenta es que su primera sesión ssh puede parecer que se cuelga si intenta salir de ella antes de que se cierren todas las demás conexiones. Algunas personas deliberadamente ejecutan una sesión ssh oculta al iniciar sesión en un host al que se conectan con frecuencia, lo que evita ese problema. Sin embargo, una mejor manera es establecer ControlPersist a yes. Esto hará que la sesión original pase a segundo plano indefinidamente. Si desea un pequeño período de gracia puede establecer ControlPersist en un número como 180. Eso causaría que la sesión en segundo plano termine si no hay conexiones durante tres minutos.

Otra desventaja de este enfoque es que se tiende a obtener archivos maestros huérfanos. En rc.local tengo la siguiente línea:

1/bin/rm /home/*/.ssh/master-* || true;/dev/null

Con Putty, puedes hacer clic en el botón “Compartir conexiones SSH si es posible” en el panel de opciones SSH.


Configuración

Hay bastantes opciones de configuración que puede utilizar en el archivo de configuración. Por ejemplo, BatchMode te permite decirle a ssh que la conexión se hace para uso desatendido, así que no te molestes en pedirle al usuario las contraseñas o cualquier otra cosa. Esto no quiere decir que sólo te dejará entrar, por supuesto. Sólo significa que fallará si no tienes las cosas configuradas para entrar sin contraseña.

Hay algunos otros artículos interesantes. Por ejemplo, puede ejecutar un comando local o remoto en la conexión. También puede enviar una variable de entorno al host remoto o incluso simplemente establecer una. Por ejemplo, supongamos que quiere mantener siempre su LS_COLORS igual en su estación de trabajo y en el servidor, pero que los cambia con frecuencia y no quiere utilizar los mismos perfiles. Podría agregar esto a la entrada del archivo de configuración del host:

1SendEnv LS_COLORS

El servidor tiene que estar configurado para aceptar esto, por supuesto. Putty puede manejar la configuración de una variable de entorno desde la pestaña Data en su configuración.

En el lado de la red, puede especificar TCPKeepAlive a yes si desea que el servidor y el cliente prueben su conexión durante los períodos de inactividad. Esto es un arma de doble filo. Si la conexión está inactiva, no se desconectará. Pero si la red se cae en el momento adecuado durante un breve período, puede que se desconecte donde no lo habría hecho si hubiera seguido con el valor predeterminado. Incluso hay una forma de abrir un túnel de capa 3 o capa 2 entre las máquinas – un tema para un futuro Linux Fu.


Por sus órdenes

No olvides que ssh puede ejecutar un comando y enviarte su salida. Como un ejemplo práctico, ocasionalmente reprogramo el firmware de mi impresora 3D. La impresora está conectada a un Raspberry PI, pero yo hago el firmware en mi máquina principal. Durante mucho tiempo, copié mi archivo a la Pi (usando scp) y luego me conecté a la Pi para ejecutar un script que escribí llamado flash. El script deshabilita el software del servidor Reptier, flashea el chip Atmel en el tablero de control de la impresora, y luego vuelve a encender el servidor.

Aquí está el guión que se ejecuta en mi ordenador principal. Fíjate en los comandos ssh. Uno apaga el servidor. Un comando scp copia el nuevo firmware. Luego otro ssh hace el flash y renueva el servidor. Hay muchas otras maneras de hacer esto, por supuesto. Pero no olvides que ssh puede ejecutar un comando remoto y luego regresar.

123456789101112131415161718192021222324#!/bin/bashif [ -z “$1” ]thenecho Uso: archivo hexadecimal flash [nombre_remoto]echo Si se omite, el nombre_remoto tendrá un archivo adjunto de fecha 1fiONAME=”$2 “EXTRA=$(fecha “+%Y%m%d.%H%M”)if [ -z “$2” ]thenONAME=”$1-$EXTRA.hex “fiIP=192.168.1.110echo Detener Servidorssh -l pi $IP “sudo systemctl parar RepetidorServidor “echo Copiar…scp “$1” “pi@$IP:a8fw/$ONAME “echo Parpadear…ssh pi@$IP “cd a8fw; ./flash $ONAME “echo Reiniciarsh “pi@$IP” “sudo systemctl iniciar RepetidorServidor “echo Salir 0

Si quiere un ejemplo más amigable para los hackers, considere usar la misma idea para ejecutar Wireshark localmente y analizar una captura remota de paquetes:

1ssh root@someserver $0027tcpdump -c 1000 -nn -w – no el puerto 22$0027 | wireshark -k -i –

Puedes hacer el mismo truco con Tshark, si lo prefieres.


Prueba de velocidad

¿Qué saber lo rápido que es tu conexión ssh? Asegúrate de tener instalado el pv y prueba esto:

1yes | pv | ssh remote_host “cat >/dev/null”

¡Muy bien!

Si tiene buenas velocidades – o incluso si no las tiene – puede intentar montar un sistema de archivos remoto usando sshfs. Este es un sistema de ficheros FUSE – es decir, un sistema de ficheros que vive como un programa de usuario normal, no es parte del núcleo. Con nada en el lado remoto excepto el servidor ssh y las herramientas estándar, puede hacer que cualquier host que pueda conectar se parezca a un sistema de ficheros local.


Pero espera…

Hay mucho más que puedes hacer con ssh, y yo cubriré más en breve. Pero por ahora, espero que hayas encontrado al menos un truco de ssh que puedas usar y que sea, si no nuevo, al menos un recordatorio para ti.

El Festival RepRap de la Costa Este cobra vida en su segundo año

El Festival RepRap de la Costa Este cobra vida en su segundo año

Por casi cualquier medida que usted se preocupe por usar, el Festival de RepRap de la Costa Este (ERRF) inaugural ...
Leer Más
Actualizando a Windows 10 por diversión y beneficio: Haga que esas llaves OEM vayan más allá

Actualizando a Windows 10 por diversión y beneficio: Haga que esas llaves OEM vayan más allá

Microsoft parece tener una maldición en todas las demás versiones. No estamos seguros de cuánto de esto es un sesgo ...
Leer Más
La aplicación de teléfono de AI aprende las señales de béisbol

La aplicación de teléfono de AI aprende las señales de béisbol

Ver un deporte puede ser un poco extraño si no estás familiarizado con él. La mayoría de los estadounidenses, por ...
Leer Más
La antigua tarjeta WAN de Cisco se convirtió en un patio de recreo FPGA

La antigua tarjeta WAN de Cisco se convirtió en un patio de recreo FPGA

Muchos de nosotros pensamos que las FPGAs son una nueva tecnología de vanguardia, pero el hecho es que existen desde ...
Leer Más
La historia del aceleramiento: Metal Mercurial

La historia del aceleramiento: Metal Mercurial

De todos los metales conocidos, el mercurio es probablemente uno de los más famosos, aunque sólo sea por su forma ...
Leer Más
David Williams es "FPGA-Curioso"

David Williams es “FPGA-Curioso”

Por si no lo habéis notado, en la Superconferencia de este año tuvimos un tema un poco más de FPGA ...
Leer Más
¿Qué es un Exciton?

¿Qué es un Exciton?

Si lees la literatura científica, verás las conocidas partículas subatómicas que aprendiste en la escuela: protones, neutrones y electrones. Si ...
Leer Más
El Reloj Escultura CircuitPython añade un personaje a cualquier escritorio

El Reloj Escultura CircuitPython añade un personaje a cualquier escritorio

Probablemente todos podemos relacionarnos con la historia del origen de este. [Alex] estaba trabajando en un proyecto de reloj más ...
Leer Más
Digan lo que digan, un traje de piel es mucho trabajo.

Digan lo que digan, un traje de piel es mucho trabajo.

Una cosa que el Dr. Cucaracha demuestra es que un traje de piel no es algo fácil de hacer. Las ...
Leer Más
El nacimiento del robot moderno

El nacimiento del robot moderno

Cuando Isaac Asmiov estaba escribiendo I, Robot , el campo de la robótica estaba todavía en su infancia. Como señala ...
Leer Más
Chat de propulsión satelital de código abierto

Chat de propulsión satelital de código abierto

Acompáñenos el miércoles 11 de diciembre al mediodía en el Pacífico para la Charla de Propulsión Satelital de Código Abierto ...
Leer Más
Con el PowerCore y FluxLamp, el reflujo es posible

Con el PowerCore y FluxLamp, el reflujo es posible

Envía este combo de proyectos que se combinan para hacer un horno de reflujo muy interesante. El primero es el ...
Leer Más
Un eficiente horno de madera casero

Un eficiente horno de madera casero

Para los pobres [taller desde cero], el invierno trae la alegría de un taller frío. Como el edificio está construido ...
Leer Más
Sistemas de archivos para dispositivos pequeños

Sistemas de archivos para dispositivos pequeños

A veces se construye un ordenador y se utiliza todos los días. A veces se construye un tipo diferente de ...
Leer Más
IA simplificada en los microcontroladores

IA simplificada en los microcontroladores

La inteligencia artificial está tomando el mundo por asalto. Sin embargo, más que un apocalipsis al estilo de Terminator, parece ...
Leer Más
Recuperación de Datos de Discos Rígidos - ¿Por qué no bricolaje?

Recuperación de Datos de Discos Rígidos – ¿Por qué no bricolaje?

Los fallos de los discos duros pueden ser difíciles de soportar, especialmente para la persona promedio que no hace copias ...
Leer Más
Una fantástica frontera de flexibilidad FPGA en la insignia Supercon de 2019

Una fantástica frontera de flexibilidad FPGA en la insignia Supercon de 2019

Acabamos de concluir una exitosa Superconferencia de Digital Lithium en la que para muchos fue un punto culminante el estudio ...
Leer Más
El fracaso de la semana: La cinta Z no es un sustituto de la soldadura

El fracaso de la semana: La cinta Z no es un sustituto de la soldadura

Aquí en Digital Lithium, vemos todo tipo de métodos de construcción mecánica. Algunos son impresionantemente sólidos y permanentes, mientras que ...
Leer Más
La tarjeta de interfaz universal viene al rescate de proyectos más grandes

La tarjeta de interfaz universal viene al rescate de proyectos más grandes

Tan pronto como un proyecto involucra otros ensamblajes, partes o módulos, las cosas se complican. Dispositivos como ventiladores, unidades de ...
Leer Más
Se acerca el invierno, este reloj te hará saber cuando

Se acerca el invierno, este reloj te hará saber cuando

Para los fans de Juego de Tronos , es un momento incómodo. El programa ha terminado su carrera en HBO ...
Leer Más
No cuelgue las luces de Navidad, insértelas

No cuelgue las luces de Navidad, insértelas

¿Te cuesta entrar en el espíritu navideño este año? Tal vez sólo necesita un proyecto oportuno para iluminar las tardes ...
Leer Más
NET a FPGA con Hastlayer

NET a FPGA con Hastlayer

Hay muchas maneras de usar las FPGAs. Una de ellas es convertir el software de computación en hardware. Esto puede ...
Leer Más
Patrulle la expansión con este cibercubierta listo para la batalla

Patrulle la expansión con este cibercubierta listo para la batalla

La reciente cosecha de construcciones de cibercubiertas se inspiran, al menos tangencialmente, en la novela de William Gibson Neuromancer y ...
Leer Más
Inyecte las pulsaciones de teclas como quiera con este inyector de pulsaciones de teclas Bluetooth

Inyecte las pulsaciones de teclas como quiera con este inyector de pulsaciones de teclas Bluetooth

[Amirreza Nasiri] envía este genial inyector de pulsaciones de teclas USB. El dispositivo consiste en un Arduino, un módulo Bluetooth ...
Leer Más
DeepPCB enruta sus PCBs de KiCAD

DeepPCB enruta sus PCBs de KiCAD

Los ordenadores pueden escribir poesía, aunque no necesariamente pueden escribir buena poesía. Lo mismo puede decirse del enrutamiento de las ...
Leer Más
AMD presenta los nuevos mini PC Ryzen para desafiar a Intel

AMD presenta los nuevos mini PC Ryzen para desafiar a Intel

Para la mayoría de los proyectos de hackers y fabricantes, el ordenador en miniatura elegido estos últimos años ha sido ...
Leer Más
Vea que tan diferentes pueden ser los aires acondicionados (en el interior)

Vea que tan diferentes pueden ser los aires acondicionados (en el interior)

Los aires acondicionados son fáciles de dar por sentado. Desde los refrigeradores hasta el control de climatización, la mayoría de ...
Leer Más
Nuevo concurso: Decir la hora

Nuevo concurso: Decir la hora

Relojes. A ti te encantan, a nosotros nos encantan. Así que no necesitas una razón para construir un nuevo reloj, ...
Leer Más
Slack, ahora en Windows 3.1

Slack, ahora en Windows 3.1

Slack es una herramienta de colaboración en línea o una religión, dependiendo de con quién hables. Naturalmente, es accesible a ...
Leer Más
Detrás de las puertas de Amazon hay una biblioteca

Detrás de las puertas de Amazon hay una biblioteca

Algunas personas aman el Amazonas, mientras que otras piensan que se ha vuelto demasiado grande e invasiva. Pero tienes que ...
Leer Más

Deja un comentario