En esta tercera entrega sobre «Aprendiendo SSH» iniciaremos la exploración y conocimiento de las opciones del comando SSH y los parámetros del programa OpenSSH, disponibles para usar al ejecutar el comando en el terminal.
Lo cual será muy útil, ya que, OpenSSH es el más instalado y utilizado de los protocolos de conexión remota y segura, sobre la mayoría de los Sistemas Operativos libres y abiertos, como GNU/Linux.
Pero, antes de comenzar esta presente publicación sobre las opciones y parámetros de configuración de la aplicación OpenSSH, para continuar «Aprendiendo SSH», les recomendamos que al finalizar de leer esta, exploren las siguientes anteriores publicaciones relacionadas:
Aprendiendo SSH: Hacia un uso avanzado del protocolo
Aprendiendo sobre las opciones y parámetros de SSH
Lo más básico y esencial sobre el comando SSH es saber que, el mismo permite ser ejecutado utilizando ciertas opciones o parámetros, los cuales son según su manual de usuario actual, las siguientes:
ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-J destination] [-L address] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address] [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]] destino [comando [argumento …]]
Así que, a continuación exploraremos algunas de las más importantes para conocerlas, practicarlas y dominarlas, en caso de ser necesario o útil en cualquier momento. Y estás son las siguientes:
Básicas
- -4 y -6: Obliga al protocolo SSH a únicamente emplear direcciones IPv4 o IPv6.
- -A y -a: Habilita o deshabilita el reenvío de conexiones desde un agente de autenticación, como ssh-agent.
- -C: Solicita la compresión de todos los datos (incluidos stdin, stdout, stderr y los datos para las conexiones).
- -f: Permite solicitudes SSH para pasar al fondo justo antes de la ejecución del comando. Es decir, coloca al cliente en segundo plano antes de la ejecución de un comando. Útil para el ingreso de contraseñas en segundo plano.
- -G: Permite obtener como respuesta del host de destino, la impresión de su configuración de SSH local.
- -g: Permite que los hosts remotos se conecten a los puertos reenviados locales. Si se usa en una conexión multiplexada, esta opción debe especificarse en el proceso maestro.
- -K y -k: Habilita o deshabilita la autenticación y el reenvío GSSAPI de las credenciales de GSSAPI al servidor.
- -M: Permite colocar al cliente SSH en modo «maestro» para compartir la conexión TCP/IP con otras sucesivas.
- -N: Permite bloquear la ejecución de comandos remotos. Útil para la sola configuración del reenvío de puertos.
- -n: Redirige la entrada estándar desde /dev/null. Útil para cuando SSH se ejecuta en segundo plano.
- -q: Activa el modo silencioso. Haciendo que se supriman la mayoría de los mensajes de advertencia y diagnóstico.
- -s: Permite solicitar la invocación de un subsistema (conjunto de comandos remotos) en el sistema remoto.
- -T y -t: Deshabilita y habilita la asignación de un pseudo-terminal en una máquina remota.
- -V: Permite visualizar el número de versión del paquete OpenSSH instalado.
- -v: Permite activar el modo detallado, provocando que se impriman mensajes de depuración sobre su progreso.
- -X y -x: Habilita y deshabilita el reenvío del servidor X11, para acceder a la pantalla X11 local del host remoto.
- -Y: Habilita el reenvío X11 de confianza, los cuales no están sujetos a los controles de extensión de seguridad X11.
- -y: Envía información de registro mediante el módulo del sistema syslog.
Avanzadas
- -B bind_interface: Permite vincular una dirección IP a una conexión SSH, antes de intentar conectarse al host de destino. La cual se empleará como la dirección de origen de la conexión SSH. Útil sobre sistemas con más de una dirección de red de destino.
- -b bind_address: Permite especificar en el host local, la interfaz de red que será la dirección de origen de la conexión. Útil en equipos (sistemas) con más de una dirección de red de origen.
- -c cipher_spec: Permite seleccionar la especificación de cifrado que se empleará para cifrar la sesión. Esta (cipher_spec) es una lista separada por comas, de cifrados enumerados en orden de preferencia.
- -D bind_address:port: Permite especificar localmente un reenvío de puerto dinámico a nivel de aplicación. Asignando un socket para escuchar el puerto en el lado local, vinculado a la dirección de red especificada.
- -E log_file: Permite agregar registros de depuración al archivo de errores, en lugar de los tradicionales errores estándar que gestiona el sistema operativo.
- -e escape_char: Permite establecer el carácter de escape para las sesiones de terminal. El valor predeterminado es una tilde ‘
~
‘. El valor «ninguno» deshabilita cualquier escape y vuelve completamente transparente la sesión. - -F configfile: Permite especificar un archivo de configuración por cada usuario alternativo. Si se proporciona uno, se ignorará el archivo de configuración general ( /etc/ssh/ssh_config ).
- -I pkcs11: Permite especificar la biblioteca compartida PKCS#11 que SSH debe usar para comunicarse con un token PKCS#11. Es decir, la selección de un archivo con clave privada para la autenticación de la clave pública.
- -J destination: Permite especificar una directiva de configuración ProxyJump, para conectarse a un host de destino haciendo primero una conexión SSH con un host de salto descrito por el host destino.
- -L address: Permite especificar que las conexiones al puerto TCP dado o socket Unix en el host local (cliente) se reenviarán al host y puerto dados, o socket Unix, en el lado remoto.
- -l login_name: Permite especificar el usuario para iniciar sesión en la máquina remota. Esto también puede especificarse por host en el archivo de configuración.
- -m mac_spec: Permite especificar uno o más algoritmos MAC (message authentication code) separados por comas para utilizar sobre una conexión SSH a ejecutarse.
- -O ctl_cmd: Controle un proceso maestro de multiplexación sobre una conexión activa, haciendo posible que un argumento (ctl_cmd) se interprete y se pase al proceso maestro.
- -o option: Permite emplear opciones especificadas en el archivo de configuración. Esto es útil para especificar opciones para las que no hay un indicador de línea de comandos independiente.
- -p port: Permite especificar un puerto al que conectarse en el host remoto. Esto se puede especificar por host en el archivo de configuración. Sin embargo, el valor predeterminado es 22, valor estándar de las conexiones SSH.
- -Q query_option: Permite ejecutar una consulta sobre los algoritmos admitidos, entre los que se encuentran los siguientes: cipher, cipher-auth, help, mac, key, key-cert, key-plain, key-sig, protocol-version y sig.
- -R address: Permite especificar que las conexiones al puerto TCP dado o al socket Unix en el host remoto (servidor) deben reenviarse al lado local. Asignando un socket para escuchar un puerto/socket en el lado remoto.
- -S ctl_path: Permite especificar la ubicación de un socket de control para compartir la conexión, o la cadena «ninguno» para deshabilitar la conexión compartida.
- -W host:port: Solicita que la entrada y la salida estándar del cliente se reenvíen al host mediante un puerto especificado a través del canal seguro.
- -w local_tun[:remote_tun]: Solicita el reenvío de dispositivos de túnel con los dispositivos Tun especificados entre el cliente (local_tun) y el servidor (remote_tun).
Más información
Y en esta tercera entrega para ampliar esta información, recomendamos explorar el siguiente Tutorial SSH, en inglés, además de practicar algunos ejemplos sobre la sintaxis de algunas órdenes de comando SSH en Explain Shell. Y tal como, en la primera y segunda entrega, el continuar explorando los siguientes contenidos oficiales y confiables en línea sobre SSH y OpenSSH:
- Wiki Debian
- Manual del Administrador de Debian: Inicio de sesión remoto / SSH
- Manual de seguridad de Debian: Capítulo 5. Asegurando los servicios que se ejecutan en su sistema
Resumen
En resumen, esta nueva entrega sobre «Aprendiendo SSH» seguramente le será muy útil a aquellos Linuxeros que ya trabajan con dicha aplicación. Sobre todo, para aclarar ciertas dudas sobre el manejo avanzado, eficiente y eficaz de dicha herramienta. Para así, realizar mejores y más complejas conexiones remotas, y ejecutar configuraciones más seguras y confiables en sus propios equipos y plataformas, empleando dicho protocolo de conexión remota y segura.
Esperamos que esta publicación, sea de mucha utilidad para toda la «Comunidad de Software Libre, Código Abierto y GNU/Linux»
. Y no dejes de comentarla más abajo, y de compartirla con otros en tus sitios webs, canales, grupos o comunidades favoritas de redes sociales o sistemas de mensajería. Además, recuerda visitar nuestra página de inicio en «DesdeLinux» para explorar más noticias. Y únete a nuestro canal oficial de Telegram de DesdeLinux para que te mantengas informado, o al grupo para más información sobre el tema de hoy u otros.
from Desde Linux https://ift.tt/nOjlxM1
via IFTTT
No hay comentarios.:
Publicar un comentario