ssh sustituye a rsh

Después de la r viene la s


Tabla de contenidos
Introducción
Deshabilitar los comandos "r"
Instalar y configurar SSH
Comandos básicos de ssh
Métodos de autenticación
Gestión de claves
Ejecución de comandos en modo no interactivo.
Redirección de puertos
Uso del SSH en otras aplicaciones
Conclusión
Bibliografía

SSH (Secure SHell) es un reemplazo seguro para programas de acceso remoto y transmisión de archivos como telnet, rsh, rcp y ftp.

Mientras que los programas clásicos transmiten los datos en claro, SSH utiliza métodos de autenticación por clave pública para establecer una conexión encriptada segura entre el cliente y el servidor.

Las conexiones X11 y puertos TCP/IP también pueden ser redirigidos sobre la conexión segura. Esta redirección de puertos se puede aprovechar para hacer seguras otras aplicaciones.

Este documento se basa en OpenSSH que es la implementación del protocolo SSH de OpenBSD. OpenSSH está disponible para muchas de las distribuciones de Linux y UNIX.

También existen clientes de ssh para windows como Putty o SecureCRT

Los ejemplos que se incluyen en este documento se corresponden con la distribución Red Hat Linux release 9 (Shrike).

Introducción

En el uso diario de Linux es frecuente la ejecución de comandos en máquinas remotas. Tradicionalmente esta necesidad se resolvía con los comandos "r" esto es: rlogin, rsh y rcp.

Estos comandos lanzan un shell en la máquina remota y permiten al usuario ejecutar comandos. El usuario debe usar una cuenta en la máquina remota, por lo que debe pasar por los métodos de autenticación. Los comandos r usan la autenticación simple de usuario y contraseña, y utilizan una conexión en texto claro, por lo que estas pueden ser interceptadas por la red.

La autenticación para los comandos "r" también se puede controlar desde algunos archivos de configuración como son:

Para poder utilizar aplicaciones gráficas al usar comandos "r" se necesita usar los comandos que controlan el acceso al servidor X. El comando xhost permite el acceso a un host, y xauth permite dar el acceso a un usuario determinado mediante el intercambio de cookies. Este es un ejemplo del comando que se ha de ejecutar para permitir el acceso a un usuario remoto:


   $xauth  extract - $DISPLAY | rsh otherhost xauth merge -
  

Estas funcionalidades se pueden obtener de una manera sencilla mediante SSH, con la ventaja de que utiliza criptografía de clave pública.

SSH ofrece la autenticación mediante usuario y contraseña, así como la autenticación mediante clave pública. Los datos están encriptados en la conexión con lo que se evita que las contraseñas o la información intercambiada pueda ser interceptada por otros usuarios.

Así que avanzamos de la r a la s, comenzando por deshabilitar los comandos "r".