Conexión SSH por medio de llaves


Una clave SSH es una forma de autenticación en el protocolo SSH. Es similar a una contraseña, pero permite la autenticación sin ingresar una contraseña o cualquier entrada manual. En términos generales, las claves SSH son más seguras y convenientes que la autenticación de contraseña. Consta de una llave pública y una llave privada, generalmente la primera se conserva del lado del cliente y la segunda del lado del servidor.

No hay dos pares de llaves SSH iguales, por tanto se pueden usar la authentificación. Cuando se utiliza la autentificacipon de clave pública, el servidor SSH verifica si el usuario que intenta autenticarse en una cuenta que tiene llave pública autorizada posee la clave privada correspondiente.

Generando SSH Keys desde WHM

Puede generar su par de claves SSH para root en su interface de WHM:

WHM >> Home >> Security Center >> Manage root’s SSH Keys

  • De clic en Generate a New Key 



  • Hay varios campos en esta página : Key NameKey PasswordKey Type, y Key Size

El Key Name predeterminado es id_rsa. Las claves se generan en /root/.ssh/, por lo que el nombre de clave predeterminado crearía una clave privada en /root/.ssh/id_rsa y una clave pública en /root/.ssh/id_rsa.pub. El uso del nombre predeterminado permitirá a los clientes SSH localizar automáticamente las claves, El nombre de la llave es obligatorio y se recomienda utilizar un nombre significativo que identifique al usuario que utiliza estas llaves o simplemente deje el campo en blanco o rellénelo con id_rsa).

El Key Password encripta el archivo de clave privada usando una contraseña para agregar una capa adicional de seguridad. La contraseña debe proporcionarse cada vez que se utiliza la clave para la autenticación para descifrar la clave privada. El campo Fortaleza de la contraseña indica qué tan fuerte es su contraseña. 0 indica una contraseña muy débil y 100 indica una contraseña muy segura. Haga clic en Generador de contraseñas para que le generen una contraseña segura. 

Key Type, y Key Size son RSA y 2048 de forma predeterminada, y son lo suficientemente seguros para la mayoría de los propósitos, por lo que pueden dejar como esta. 


  • Haga clic en Generate Key para generar el par de claves SSH. WHM mostrará la ubicación de la clave. 


  • Ahora es necesario autorizar dicha llave para permitir la conexión por SSH.  Ubique la sección de Public Keys y de clic en Manage Authorization

  • De clic en Authorize


Conectando por SSH desde Terminal de Linux / MAC

  • Una vez hemos creado nuestras llaves desde WHM, en la opción Home » Security Center » Manage root’s SSH Keys, ubicamos la sección de Private Keys y damos clic en View/Download Key

  • Copiaremos lo que esta en el recuadro de texto y lo guardaremos en un archivo de texto en nuestra maquina maquina local

  • Al archivo le daremos permisos 600 en sistemas linux y mac, en el caso de windows, solo es necesaro guardar la contraseña en una subcarpeta dentro de la carpeta raíz del usuario por ejemplo en Mis Documentos.
chmod 600 key-servidor


Para conectarse al servidor via SSH desde computadoras Linux o Mac, estas ya cuentan con una consola que reconoce el comando ssh, sin embargo en windows pudiera ser necesario descargar una consola de acceso como por ejemplo alguna de estas: 

https://www.redeszone.net/tutoriales/servidores/mejores-clientes-ssh-windows/

  • Finalmente se puede conectar al servidor, con el siguiente comando. cambiando la ruta y nombre del archivo que contiene su Key. Así como la IP y Puerto del servidor a donde va a conectar
ssh -i /ruta/de/carpeta/nombre_archivo_key -pPORT root@IP


Le aparecerá un mensaje, solicitando la contraseña que definió al momento de crear la llave en el paso anterior, solo ingrese la contraseña e ingresara a SSH