Para conectarnos a una instancia, podemos utilizar la consola que nos proporciona SoaX.
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.
Vamos a ver como conectarnos por SSH a una instancia del catálogo de SoaX, que nos permitirá configurar el par de claves SSH cuando estemos configurándola.
Vamos a ver como crear he importar un par de claves ssh en SoaX.
Para crear un par de claves podemos hacerlo haciendo click derecho sobre el panel resumen de par de claves ssh (clave pública/privada).
También podemos crear un nuevo par de claves arrastrando el icono de par de claves ssh a nuevo.
En cualquiera de los dos casos se descargará automáticamente un archivo .pem con la clave privada, que deberemos de conservar en un lugar seguro.
Si abrimos el archivo en un editor de texto podremos ver lo siguiente.
Podremos ver que se ha creado un objeto que podremos ver en el panel resumen, que sería la clave pública.
Si creamos una instancia del catálogo de SoaX podremos insertar esta clave.
Tenemos la posibilidad de crear o importar el par de claves desde la pantalla Seguridad al crear una instancia.
Si desplegamos las opciones de par de claves podremos seleccionar el que hemos creado.
Una vez esperemos a que se lance la Instancia y nos muestre que está corriendo con normalidad comenzaremos con las configuraciones de red y de seguridad para poder conectarnos.
En este punto vamos a ir directos a los puntos que debemos configurar para poder establecer la conexión con la menos complejidad posible, sin embargo puede seguir los enlaces a los temas específicos para poder ver una configuración adaptada a sus necesidades.
Vamos a configurar el puerto de la instancia que acabamos de crear para que no rechace ninguna petición.
Iremos al panel resumen y sobre el titulo de Seguridad, haremos click derecho, y seleccionaremos la opción de crear grupo de seguridad sin restricciones.
Después iremos al puerto de la instancia y haremos click derecho sobre el puerto.
Seleccionaremos el grupo de seguridad sin restricciones, desmarcando default.
Confirmaremos y ya habremos configurado el grupo de seguridad.
Para poder conectarnos a la instancia podremos hacerlo con un reenvío de puertos o asignando una IP flotante asignada al puerto de la instancia.
Deberemos de reservar la IP flotante, arrastrando el icono de IP flotante a nuevo.
En este caso vamos a realizar un reenvío del puerto 22.
Haremos click derecho cobre la IP flotante que hayamos reservado y seleccionaremos configurar reenvío de puertos.
En la siguiente pantalla crearemos la regla de entrada y salida del puerto 22 para la instancia a la que vamos a conectarnos.
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, en este caso la IP flotante, Especificaremos el usuario si lo sabemos y el puerto.
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.
Ya que hemos expuesto el puerto de la instancia recomendamos que solo se haga para pruebas, después de confirmar que tenemos acceso a la Instancia, deberíamos de limitar las conexiones, ya sea con un filtro de IP pública o cambiando el puerto de la instancia para que no sea foco de bots.
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.
Deberemos de tener en cuenta el archivo de clave privada .pem, en este caso será el archivo ssh-Gsad.pem
Si editamos el archivo, veremos el siguiente formato:
Vamos a ver como acceder por ssh desde un terminal ubuntu al servidor
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
Las imágenes del catálogo de SoaX tienen un usuario por defecto asignado, solo es accesible por par de claves y indicando el usuario.
Los usuarios por defecto para las imágenes son:
Imágenes Ubuntu: ubuntu
Imágenes Debian: debian
Imágenes CentOS: centos
Imágenes Rocky: rocky
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?