Cambio de puertos SSH y XRDP en una máquina virtual Linux en Azure

Una recomendación básica de seguridad es cambiar los puertos de conexionado por defecto de un sistema para los distintos servicios de comunicaciones disponibles. Vamos a ver como cambiar el puerto ssh y xrdp en una máquina virtual Linux en Azure.

Cambio de puerto ssh

Nada más crear la máquina virtual, el puerto por defecto es el 22. Conectamos a la máquina por medio de su IP o DNS público con un cliente tipo Putty a través de dicho puerto. Editamos el fichero de configuración con nano por ejemplo:

sudo nano /etc/ssh/sshd_config

Y modificamos donde pone el puerto 22 por el valor que deseemos (por ejemplo yo he puesto 40167):

20160401_CambioSSH_Paso02

Ahora es necesario reiniciar el servicio ssh. Ejecutamos:

sudo service ssh restart

Cerramos la sesión remota que estamos ejecutando, que todavía irá por el puerto 22. Ahora tenemos que editar la regla de seguridad en el panel de control de la máquina virtual para reflejar el cambio de puerto. Para ello, buscamos la máquina en nuestra suscripción de Azure, por ejemplo, en mi caso se llama f23uh4733:

20160401_CambioSSH_Paso04

Pulsamos en la opción de reglas de seguridad de entrada:

20160401_CambioSSH_Paso05

Y hacemos doble clic sobre la regla actual del puerto 22:

20160401_CambioSSH_Paso06

Y modificamos el valor del puerto 22 al puerto definido en el fichero de configuración:

20160401_CambioSSH_Paso07

Pulsando grabar tras la modificación. La regla tardará unos segundos en estar aplicada.

Instalación de un escritorio remoto y cambio de puerto xrdp

Ahora vamos a instalar un escritorio remoto. Ésto será necesario si nuestra imagen de Linux es tipo servidor por ejemplo. Hay que tener en cuenta que xrdp en Ubuntu desde la versión 12.04LTS no soporta Gnome Desktop, por lo que usaremos xfce.

Primero instalamos xrdp, para lo que ejecutamos el siguiente comando en la línea de terminal:

sudo apt-get install xrdp

20160401_CambioSSH_Paso08

Una vez concluida la instalación de xrdp, instalamos xfce, ejecutando el comando:

sudo apt-get install xfce4

20160401_CambioSSH_Paso09

El siguiente paso es configurar xrdp para que use xfce. Ejecutamos el siguiente comando:

echo xfce4-session >~/.xsession

20160401_CambioSSH_Paso10

Una vez instalado el escritorio, vamos a cambiar el puerto por defecto de conexión remota. Usamos un editor, por ejemplo nano, para modificar el fichero de configuración de xrdp. Ejecutamos el comando:

sudo nano /etc/xrdp/xrdp.ini

Y modificamos el puerto con el valor deseado, en éste caso por ejemplo al puerto 40168:

20160401_CambioSSH_Paso12

Grabamos los cambios y reiniciamos el servicio xrdp para que surtan efecto, mediante el siguiente comando:

sudo service xrdp restart

20160401_CambioSSH_Paso13

Una vez tenemos configurado el puerto, al igual que antes, tenemos que crear la regla de seguridad que nos permita acceder. Para ello volvemos al listado de reglas de entrada, y pulsamos el botón añadir:

20160401_CambioSSH_Paso14

Y añadimos una regla indicando el puerto destino que hayamos configurado en el paso anterior:

20160401_CambioSSH_Paso15

Pulsamos grabar y esperamos a que la regla se aplique. Posteriormente ya podemos abrir una conexión por escritorio remoto contra la máquina por el puerto:

20160401_CambioSSH_Paso16

Nos tendremos que identificar con un usuario UNIX. Si no hemos creado ninguno, el usuario administrador nos serviría:

20160401_CambioSSH_Paso17

Y accederíamos al escritorio de la máquina Linux:

20160401_CambioSSH_Paso18

 

Linux_Azure_Creation

Crear una máquina virtual Linux en Azure

Dentro del marketplace de Azure nos encontramos múltiples imágenes listas para desplegar. Entre ellas están varias distribuciones de Linux creadas por varias compañías, con varios paquetes ya preinstalados llegado el caso.

Creación de una máquina virtual Linux

Vamos a ver el proceso completo de aprovisionamiento de una máquina virtual (IaaS) con una imagen de Canonical de Ubuntu Server 15.10.

Paso 1

Entramos en nuestra suscripción de Azure y pulsamos sobre máquinas virtuales:

20160311_CreaciónVM_Paso01

Paso 2

Pulsamos en agregar nueva máquina virtual:

20160311_CreaciónVM_Paso02

Paso 3

Buscamos por Ubuntu y seleccionamos la imagen Ubuntu Server 15.10 de Canonical:

20160311_CreaciónVM_Paso03

Paso 4

Nos aparece la descripción de la imagen, en donde podremos seleccionar si la queremos en modo clásico o administrador de recursos. Vamos a elegir administrador de recursos. Puedes consultar las diferencias en éste enlace. Pulsamos crear para iniciar el proceso de provisión:

20160311_CreaciónVM_Paso04

Paso 5

Rellenamos los datos básicos de la máquina, con especial atención a la zona geográfica de despliegue y el grupo de recursos al que asignarla. Seleccionar la ubicación más cercana a donde queráis dar el servicio o aquella en donde tengáis todo vuestro CPD virtual.

Respecto al grupo de recursos, recordad que todo lo que metáis dentro no se reiniciará de forma simultánea ante mantenimientos, por lo que su uso es para situaciones de alta disponibilidad.

En éste paso definiréis el usuario y contraseña root, así que asegurad que los datos son correctos.

Una vez relleno todo pulsáis aceptar.

20160311_CreaciónVM_Paso05

Paso 6

Ahora seleccionar el tamaño, lo que define el coste de la máquina. Elegid el que necesitéis en función del uso estimado. La serie DS, con discos SSD, son apropiados para servicios LAMP por ejemplo.

20160311_CreaciónVM_Paso06

Paso 7

Toca configurar opciones adicionales, como la red, tipo de almacenamiento y otros. Al terminar pulsad aceptar. Si no conocéis todavía estos conceptos en Azure, las opciones por defecto os servirán para empezar.

20160311_CreaciónVM_Paso07

Paso 8

Se presenta un resumen del proceso y se solicita una última confirmación. Si está todo bien, pulsar aceptar y se comenzará a aprovisionar la máquina. Si no, podéis volver hacia atrás para corregir.

Creación VM Ubuntu

En el área de notificaciones tendréis un aviso del progreso del proceso, al igual que en el panel principal.

Una vez concluido el despliegue, lo que puede llevar unos 5 a 10 minutos, podéis conectar por SSH con un cliente tipo Putty, usando la IP pública de la máquina y contra el puerto 22, con el usuario root definido en las opciones básicas del paso 5.

Sin embargo dicha configuración por defecto no es la más segura. En un próximo post veremos como cambiar los puertos por defecto e instalar un escritorio para acceso remoto. Posteriormente veremos como configurar al servidor para convertirlo es un stack LAMP.