En SoaX tenemos disponible la posibilidad de gestionar la conexión por SSH a las instancias mediante el método de par de claves, sin embargo este método solo está disponible para las instancias en el catálogo de SoaX. Si subimos una imagen y generamos una instancia propia deberemos de configurar el par de claves de forma tradicional.
Todas las imagenes del Catálogo de SoaX únicamente tienen permitido el acceso por claves ssh.
En los siguientes apartados veremos como configurar el par de claves en ambos casos.
El primer paso para poder acceder a una instancia será crear un par de claves y asociarlo a la instancia, para ello podremos crearlo desde la plataforma, o importar uno ya existente.
También podremos crear el par de claves en el propio proceso de creación de la instancia.
Una vez tengamos el par de claves disponible, lo podremos seleccionar en la creación de instancia en el apartado configuración.

Vamos a configurar el puerto de la instancia que acabamos de crear para poder acceder por SSH desde nuestra IP. Para ello tendremos que agregar la siguiente regla a nuestro grupo de seguridad.

Después iremos a las opciones de la instancia y seleccionaremos "Actualizar grupo de seguridad"

Seleccionaremos el grupo de seguridad al cual le acabamos de agregar la regla SSH

Confirmaremos y ya habremos configurado el grupo de seguridad.
Para poder conectarnos a la instancia podremos hacerlo mediante la IP pública de la instancia, ya sea con una IP flotante o con un puerto de la red externa, o realizando un reenvío de puertos.
Para más información sobre el reenvío de puertos, visite:
Reenvío de puertos
Si la instancia se encuentra directamente conectada a la red externa, bastará con conocer la IP externa que se le ha proporcionado para conectarnos a la instancia.
Para asociar una IP flotante a la instancia seleccionaremos una IP que se encuentre en estado "caído" y la asociaremos a la instancia

Para más información sobre como asociar p crear una IP flotante:
IP flotante
Una vez realizados los pasos anteriores ya podemos conectarnos a nuestra instancia desde un cliente SSH, como Putty, MobaXterm, o si tambien lo prefiere desde la línea de comandos de un terminal Linux.
En este caso vamos a utilizar MobaXterm, deberemos de configurar la IP remota, especificaremos el usuario y el puerto.
Puede consultar los usuarios por defecto en:
Credenciales por defecto
Por ultimo añadiremos el archivo con la clave privada que previamente se descargó cuando creamos el par de claves.

Cuando le demos a OK automáticamente tendremos conexión a la Instancia.

Desde grupos de seguridad podremos crear una norma que nos limite el acceso al puerto desde nuestra IP pública.
Los ususarios que opten por establecer la conexión SSH mediante PuTTY, deberán realizar previamente la conversión de las claves ssh. Para ello, el cliente deberá inicializar el software PuTTYgen que se incluye al realizar la instalación del sofftware PuTTY.
Una vez abierto el prgrama, se deberá seleccionar en el menú superior, la opción de "Import key".
A continuación, se deberá seleccionar la clave privada .pem que SOAX descarga en el navegador al generar el par de claves.

Al importar la clave, se podrá modificar el nombre con el que se guardará la clave convertida. A continuación se deberá presionar sobre el botón de "Save private key".

Una vez almacenada la clave, podrá utilizarse con el cliente PuTTY para establecer la conexión SSH con el servidor.
Para acceder por CLI tendremos que crear el archivo de la clave privada para poder usarlo en el acceso.
En el terminal escribiremos los siguientes comandos para crear el archivo de la clave privada
touch ssh.pem
nano ssh.pem

Una vez creado el archivo y copiado el contenido de la clave privada vamos a securizarlo haciendo que solo los superusuarios puedan acceder a ella.
chmod 700 ssh.pem
Ya podremos ingresar por ssh al servidor con el siguiente comando:
ssh -i ssh.pem usuariopordefectoimagen@IP

Ya tendremos acceso a nuestro servidor por ssh.
Para algunos usuarios el disponer de varios proyectos y usuarios en los mismos hace que estos puedan necesitar de una clave propia sin contar con SoaX.
SoaX nos permite generar los pared de claves shh he importarlos, puede seguir esta guía en el caso de que desee generar e importar a SoaX su propio par de claves:
Desde el equipo de OASIX no recomendamos el uso de servicio de ssh si no es por medio de par de claves ssh y por tanto las instancias del catálogo vienen configuradas por defecto de esta forma.
Por defecto en las imágenes del catálogo de SoaX los usuarios no disponen de contraseña.
La configuración del servidor SSH se puede encontrar en el archivo /etc/ssh/sshd_config. Para habilitar el acceso SSH con contraseña hay que añadir la siguiente línea, editando el archivo como root:
PasswordAuthentication yes
Una vez realizados los cambios, hay que reiniciar el servidor SSH, siempre como root:
service sshd restart
Una vez realizados estos cambios ya podremos accedes con contraseña a la Instancia.
Ya hemos visto como conectarnos a una Instancia del catálogo, ahora vamos a ver como conectarnos a una instancia Linux con una imagen que hayamos subido.
para más información sobre subir una imagen y arrancar la Instancia puede seguir estos enlaces.
En este apartado vamos a partir de una Instancia de Ubuntu server 20.04, que simplemente hemos conectado a la red local.
En este caso vamos a utilizar el par de claves que hemos creado en el apartado anterior, "Crear un par de claves en SoaX". También podremos crear un par de claves propio.
Tenemos la Instancia conectada a la red local con salida a internet, pero para poder conectarnos por SSH deberemos de configurar el grupo de seguridad de la interfaz y el reenvío del puerto 22 de la IP flotante que tenemos reservada.
Una vez realizados estos dos pasos deberemos de configurar la Instancia para poder conectarnos con nuestro par de claves y eliminar la posibilidad de conectarnos con usuario y contraseña, aumentando la seguridad considerablemente.
Una vez generado el par de claves en la máquina local hay que copiar la clave pública al servidor remoto:
user@localmachine$ scp ~/.ssh/id_rsa.pub user@remotemachine:/home/user/uploaded_key.pub

La clave pública hay que incluirla en el archivo /home/user/.ssh/authorized_keys. Si la carpeta .ssh no existe, la creamos antes de copiar, así como el archivo authorized_keys:
user@remotemachine$ mkdir .ssh
user@remotemachine$ chmod 700 .ssh
user@remotemachine$ touch .ssh/authorized_keys
user@remotemachine$ chmod 600 .ssh/authorized_keys
Por último copiamos la clave y borramos el archivo copiado al servidor:
user@remotemachine$ echo `cat ~/uploaded_key.pub` >> ~/.ssh/authorized_keys
user@remotemachine$ rm /home/user/uploaded_key.pub

Una vez habilitado el acceso SSH mediante clave pública, se puede deshabilitar el acceso con contraseña. Esto aumentará la seguridad, pero implica que si se pierde la clave privada se perderá el acceso al servidor: hay que guardar cuidadosamente la clave privada.
La configuración del servidor SSH se puede encontrar en el archivo /etc/ssh/sshd_config. Para deshabilitar el acceso SSH con contraseña hay que añadir la siguiente línea, editando el archivo como root:
PasswordAuthentication no
Una vez realizados los cambios, hay que reiniciar el servidor SSH, siempre como root:
service sshd restart
Una vez realizados estos cambios ya podremos accedes con par de claves a la Instancia.
Conexión por consola
Conexión SSH
¿Como me conecto a la instancia?