Primero que todos hay que definir el concepto, porque no es llegar e instalar un script, como muchos lo hacen (experiencia propia).
SSH, un intéprete de órdenes seguras, nos permite enlazar sistemas o dicho de otro modo, conectarse en forma remota a otras terminales y manejar el computador lejano usando sólo el intérprete de comandos. Los datos que viajan a través de este protocolo son muy seguros ya que lo hacen con información cifrada, y no se puede leer por terceras personas, execpto por los ataques de reinyección. Fin del asunto.
Vamos al grano:
Los requisitos mínimos para trabajar con este protocolo es tener en tu computador instalado algún sistema Linux, sería ideal el caso de Archlinux porque la explicación está basada en dicho SO y de manera sintetizada. Además debes tener instalado un router (el típico que trabaja con servidores virtuales).
Primero:
-Abrir una terminal en Linux, puede ser directamente con Konsole o Yakuake
-Ahora en la terminal, escribes:
$ pacman -S openssh
Advertencia: en el modo "su" se puede teclear solo pacman, si trabajas sólo con tu usuario antepone sudo (si está agregado en el archivo sudoers en etc)
-Luego de instalar agregar la siguiente línea a /etc/hosts.allow
sshd: ALL
Recomendación: puedes restringir el acceso para una cierta ip o un rango de ip cambiando ALL por la ip o rango que quieras dentro de los parámetros de la red de tu router.
-Comenta la siguiente línea en /etc/hosts.deny
Está así
ALL: ALL: DENY
Debería quedar así
#ALL: ALL: DENY
-Agregar el DAEMON sshd a /etc/rc.conf
DAEMONS=(... sshd ...)
-Iniciar el servicio:
$ sudo /etc/rc.d/sshd restart
Ahora tienes instalado el servidor SSH en tu computador, ahora para probar si funciona en otro computador con SSH instalado pero no iniciado el servidor prueba lo siguiente:
En Linux utiliza el comando:
$ ssh -l "nombre usuario" "host name, ip del servidor o dns"
Si los parámetros son correctos la primera vez que te conectas te pregunta si quieres guardar en forma permanente la dirección, teclea "yes" luego escribe el password correcto y "yasta".
En Windows abre PuTTY:
-Hostname o IP address, Port 22
-Connection Type: SSH
-Click en Open
Si los datos son correctos, se abrirá una terminal que te pide el login y password, si los datos son los esperados ya puedras acceder a la teminal de Linux en un escritorio Windows.
Ahora si quieres acceder en forma remota, debes abrir el puerto 22 en tu router y asignar la ip del servidor al puerto para que tengas acceso desde cualquier parte de la red global.
En mi caso hay una opción llamada Virtual Server en la configuración de mi router Trendnet Modelo TEW-432BRP dentro de la opción Access en donde puedo configurar los servidores y abrir los respectivos puertos para cada uno de ellos.
Si tienes dudas o quieres dar algún aporte sólo deja un comentario.