Como securizar un servidor VPS

En esta entrada voy a resumir las tareas que yo realizo cada vez que adquiero un servidor VPS y, a posterior, las acciones que realizo durante su mantenimiento recurrente. Con estas tareas puedo apoyarme para proteger un servidor.

Elegir la versión de sistema operativo

Lo primero que tengo en cuenta cuando contrato un nuevo servidor VPS es ver que opciones hay disponibles en cuanto a elegir el sistema operativo.

Por coste / rendimiento, normalmente elijo una distribución de Ubuntu en sus versiones LTS. Lo bueno de utilizar Ubuntu es que al ser una distribución muy desplegada, hay mucha documentación y soporte de la comunidad. Ademas, dispone de paquetes muy estándar en cuanto a aplicaciones y seguridad.

Securizar el acceso SSH

Si nos decidimos por una distribución de Linux, el acceso habitual de administración sera mediante SSH. Aquí tenemos que tener en cuenta que estemos utilizando la última versión del protocolo, que a fecha de este artículo es la versión 2. Además, otra buena recomendación sería configurar doble factor de autenticación para no depender únicamente de una contraseña.

Otra opción seria crear y utilizar una clave SSH. Ambas opciones tienen sus beneficios e inconvenientes, pero personalmente creo que es mas sencillo utilizar un doble factor ya que es mas sencillo llevar un teléfono móvil para el segundo factor que tener un lugar seguro para la clave.

Actualizar el sistema

Personalmente, acostumbro a parchear mis servidores cada 20 o 25 días. Lo recomendable sería tener copias de seguridad justo antes de iniciar el proceso de parcheado por si hubiera algún problema en el proceso. No es algo habitual, pero siempre es buena idea disponer de un plan de contingencia.

Hay 2 tipos de parches, los de seguridad y los de mantenimiento. Los primeros habitualmente no generan problemas en las aplicaciones y los instalo que mayor prioridad, debido al riesgo que ocasiona no hacerlo. Los parches de mantenimiento hay que revisarlos mas en detalle ya que pueden generar cambios en las aplicaciones y estas podrían dejar de funcionar.

Copias de seguridad

Tener una copia de nuestros datos es uno de los puntos mas importantes a tener en cuenta. Para este punto podemos optar por varias opciones.

Seguramente vuestro proveedor de servicios incluya algún servicio de copias de seguridad, de pago o gratuito. Normalmente está es la opción más sencilla ya que vendrá integrado con vuestro VPS y tendrá una configuración más sencilla y guiada.

Si no tenemos o queremos utilizar esta opción, podemos optar por herramientas de copia de seguridad de terceros. Existen multitud de herramientas de copias de seguridad en el mercado y la elección de ellas dependerá principalmente del método de copia y el tipo de dato que gestionemos. Por ejemplo, algunas herramientas se integran con motores de bases de datos, lo que nos evitará utilizar complicados script para parar y arrancar la base de datos, por ejemplo, antes de realizar la copia de seguridad.

Actualizar portal web (WordPress, Prestashop, etc..)

Otro punto importante para evitar accesos malintencionados seria mantener actualizadas nuestras aplicaciones web. Por ejemplo, en caso de utilizar nuestro VPS para publicar páginas web con WordPress, es importante mantener nuestro WordPress actualizado y así reducir el riesgo de que puedan atacar nuestro VPS a través de vulnerabilidades del propio WordPress.

Revisión de logs y monitorizacion

También es una buena práctica ir revisando los registros habituales del sistema para saber si hemos sufrido algún ataque o alguien, ajeno a nosotros, a accedido a nuestro servidor.

Esto dependerá de nuestro sistemas operativo pero, en Ubuntu, podemos revisar estos registros.

cat /var/log/auth.log | grep 'ssh.*Invalid'

Sobre esto, una buena recomendación sería tener algún tipo de monitorización activa que nos pueda generar una alerta en caso de que se produzca una intrusión, ya sea utilizando algún script que se ejecute de manera recurrente (con cron, por ejemplo) o utilizando alguna herramienta de monitorización externa (ELK, Nagios, Zabbix, etc…).

Configurar el Firewall

Por último, pero no menos importante, es indispensable disponer de una buena política de seguridad bloqueando los puertos y/o IPs que no requieran acceder al sistema o puedan ser una posible amenaza.

La mayoría de proveedores de VPS ya disponen de un servicio de Firewall incluido en el servicio. En caso contrario, se puede utilizar un servicio de Firewall incluido en nuestro propio servidor Linux (iptables, firewalld, etc…).

Espero que esto os sirva de ayuda para elegir y poner a punto vuestro servidor VPS.

¿Tenéis alguna otra tarea que ejecutéis en vuestros VPS? Dejádmelo en comentarios.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.