En Clouding, se genera una clave privada codificada en PEM automáticamente y se le asigna a los servidores creados en tu cuenta de forma predeterminada. Con el uso de estas llaves, no es necesario autentificarse con la contraseña del usuario del sistema operativo para conectarse por SSH.
Puedes agregar más llaves en la pestaña Mis llaves SSH y vincularlas durante la creación del servidor para utilizarlas. Para descargarlas simplemente desde la misma sección en Acciones sobre las llaves SSH privadas (PEM), para ello haz clic en el icono de descarga para obtenerla:
Conectarse con la llave privada por SSH
En Linux y MacOS por defecto viene instalado un cliente SSH. Por lo tanto, puedes indicar el uso de la llave descargada de la siguiente forma:
# ssh root@dirección_IP_del_servidor -i /ruta/ejemplo/default.pem
Directamente accederás al servidor sin la necesidad de introducir ninguna contraseña, pero en Windows no viene por defecto ningún cliente SSH y será necesario instalar uno.
Instalar característica Cliente OpenSSH en Windows
Puedes ejecutar lo siguiente en un PowerShell con privilegios de administrador para instalar el cliente:
# Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
También puedes realizarlo desde el propio "Agregar características opcionales" de Windows. Una vez instalado, abre un el símbolo de sistema (CMD) o PowerShell para utilizar el cliente OpenSSH:
# ssh root@dirección_IP_del_servidor -i "Downloads\default.pem"En el apartado Añadir la llave al agente SSH (opcional) también puedes utilizarlo en Windows y añadir la llave para no tener que indicarla continuamente.
Otra alternativa es utilizar PuTTy en Windows, en el artículo Cómo acceder a SSH desde Windows con PuTTy y PuTTygen se explica cómo utilizar el cliente PuTTy con la llave.
Añadir la llave al agente SSH (opcional)
En caso que quieras implementarla y/o no tener que indicarla para conectarte al servidor, puedes almacenarla para el cliente SSH utilizando la opción de añadirla:
# ssh-add llave.pem
En Windows, por defecto esta desactivado el agente SSH y al intentarlo aparecerá el siguiente mensaje:
Error connecting to agent: No such file or directory
Por lo tanto, deberás iniciarlo. Puedes revisar el estado del agente desde un PowerShell con permisos de administrador lo siguiente:
# Get-Service | ?{$_.Name -like '*ssh-agent*'} | select -Property Name, StartType, Status
Aparecerá detenido, para poder iniciarlo modifica el servicio en modo manual e inícialo:
# Set-Service -Name ssh-agent -StartupType Automatic ; Start-Service ssh-agent
En Linux aparecerá el siguiente mensaje si no esta activado el agente:
Could not open a connection to your authentication agent.
Para activar el agente en Linux ejecuta lo siguiente (modifica bash por tu intérprete de órdenes):
# exec ssh-agent bash
Al añadir la llave con el agente activado, puede ocurrir lo siguiente:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0744 for 'llave.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Deberás modificar los permisos para únicamente el usuario tenga acceso:
# chmod 700 llave.pem
Posteriormente, sí podrás realizar la acción de añadir la llave:
# ssh-add .\llave.pem
Información adicional
Para crear llaves individuales para usuarios de un servidor o de cliente puedes revisar el siguiente artículo de Creación de llaves con ssh-keygen.
Esperamos haberte ayudado con este artículo. Si te quedan dudas sobre esta u otra cuestión relacionada con tus servidores en Clouding, escríbenos a soporte@clouding.io. ¡Estamos para ayudarte! 😉