Proteger un VPS

Bases de conocimiento

Proteger un VPS


Icons/System/eye-open Created with Sketch. 8414 visualizaciones 21.01.2026 Cloud / Servidores privados virtuales
Información sobre la traducción

Esta traducción ha sido generada de forma automática por nuestro partner SYSTRAN. En algunos casos puede contener términos imprecisos, como en las etiquetas de los botones o los detalles técnicos. En caso de duda, le recomendamos que consulte la versión inglesa o francesa de la guía. Si quiere ayudarnos a mejorar esta traducción, por favor, utilice el botón «Contribuir» de esta página.

Objetivo

Al contratar su VPS, puede elegir una distribución o sistema operativo que quiera preinstalar. El servidor está listo para usar después de la entrega. Sin embargo, usted, como administrador, debe adoptar medidas que garanticen la seguridad y la estabilidad de su sistema.

Esta guía ofrece algunos consejos para proteger un servidor basado en GNU/Linux.

OVHcloud pone a su disposición servicios cuya configuración, seguridad y responsabilidad le pertenecen. En efecto, no tenemos acceso a los datos alojados en estas máquinas ni somos los administradores. Por lo tanto, usted es responsable de la gestión del software y de la seguridad diaria. Esta guía le ayudará a realizar las operaciones más habituales. No obstante, le recomendamos que, si necesita ayuda, contacte con un proveedor especializado en caso de que tenga dificultades o dudas relativas a la administración, la utilización o la seguridad del servidor. Más información en el apartado «Más información» de esta guía.

Requisitos

  • Un VPS en su cuenta de OVHcloud.
  • Tener acceso de administrador (sudo) al servidor por SSH.

Procedimiento

Tenga en cuenta que esta guía se basa en los sistemas operativos Ubuntu, Debian y CentOS. Tenga en cuenta que algunos comandos deben adaptarse a la distribución que utilice y que algunos consejos le invitan a utilizar herramientas de terceros. Si necesita ayuda, consulte la documentación oficial de estas aplicaciones.

Si se trata de su primera configuración de un VPS de OVHcloud, consulte nuestra guía Primeros pasos con un VPS.

Los siguientes ejemplos implican que está conectado como usuario con permisos muy exigentes.

Índice:

Actualizar el sistema operativo

Los desarrolladores de distribuciones y sistemas operativos ofrecen actualizaciones frecuentes de los paquetes, en muchas ocasiones por motivos de seguridad.
Garantizar que su distribución o sistema operativo estén actualizados es un aspecto fundamental para proteger su VPS.

Esta actualización se realizará en dos pasos:

  • Actualizando la lista de paquetes:
sudo apt update
  • Actualizando los paquetes reales:
sudo apt upgrade
sudo apt update && sudo apt upgrade

El comando es idéntico a Ubuntu porque tanto Debian como Ubuntu utilizan apt.

sudo yum update

En CentOS, el comando para actualizar el sistema operativo utiliza yum o dnf, según la versión.

Esta operación debe realizarse regularmente para mantener un sistema actualizado.

Crear y utilizar una clave SSH

La autenticación mediante clave SSH es uno de los métodos más eficaces para garantizar la seguridad del acceso a su VPS.
A diferencia de la autenticación mediante contraseña, se basa en un par de claves criptográficas y permite reducir considerablemente los riesgos de ataques por fuerza bruta.

Le recomendamos encarecidamente que configure una clave SSH desde la primera conexión a su servidor, y que priorice este método para sus accesos administrativos.

Según su entorno y la herramienta que utilice para conectarse a su VPS, consulte uno de los siguientes tutoriales:

Estos tutoriales detallan los pasos para:

  • generar un par de claves SSH;
  • desplegar la clave pública en su servidor;
  • conectarse de forma segura mediante SSH.

Una vez que la autenticación mediante clave SSH esté configurada y funcione correctamente, puede ir más allá y reforzar la configuración del servicio SSH, por ejemplo, modificando el puerto de escucha o desactivando la autenticación mediante contraseña.

Cambiar el puerto de escucha SSH por defecto

Antes de cualquier modificación del servicio SSH, asegúrese de disponer de un acceso funcional mediante una clave SSH para evitar perder el acceso a su servidor.

Para esta sección, las siguientes líneas de comando son las mismas para Ubuntu, Debian y CentOS.

Una de las primeras acciones que deberá realizar en su servidor es configurar el puerto de escucha del servicio SSH. Por defecto, este se define en el puerto 22, por lo que los intentos de hackeo del servidor por parte de robots se dirigirán prioritariamente a este puerto.
La modificación de este parámetro, en beneficio de un puerto diferente, es una medida sencilla para reforzar la protección de su servidor contra los ataques automatizados.

Para ello, edite el archivo de configuración del servicio con el editor de texto que desee (nano se utiliza en este ejemplo):

sudo nano /etc/ssh/sshd_config

Encontrará las siguientes líneas o equivalentes:

#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0

Sustituya el número 22 por el número de puerto que desee.
Recuerde que no debe indicar un número de puerto que ya esté en uso en su sistema. Para mayor seguridad, utilice un número entre 49152 y 65535.

También puede ver los puertos asignados a su sistema con el siguiente comando:

sudo cat /etc/services

Si la línea está "comentada" (es decir, precedida de un "#") como en el ejemplo anterior, asegúrese de eliminar el "#" antes de guardar el archivo para que se tenga en cuenta el cambio. Ejemplo:

Port 49152
#AddressFamily any
#ListenAddress 0.0.0.0

Si hay un cortafuegos configurado en su sistema operativo (UFW o iptables), debe ajustar su configuración para permitir el tráfico en el nuevo puerto antes de reiniciar el servicio. Si utiliza iptables, consulte esta guía: Configurar el firewall de Linux con iptables. Si no hay ningún cortafuegos configurado por defecto, reinicie el servicio.

Guarde y cierre el archivo de configuración.

Reinicie el servicio:

sudo systemctl restart sshd

Esto debería ser suficiente para aplicar los cambios. En caso contrario, reinicie el VPS (sudo reboot).

Para Ubuntu 24.04 y versiones posteriores

Para las últimas versiones de Ubuntu, la configuración SSH se gestiona ahora en el archivo /ssh.socket`.

Para actualizar el puerto SSH, edite la línea ListenStream en el archivo de configuración con un editor de texto de su elección (nano utilizado en este ejemplo):

sudo nano /lib/systemd/system/ssh.socket

Su archivo debería parecerse a los siguientes ejemplos, dependiendo de la versión de Ubuntu que tenga instalada:

[Socket]
ListenStream=49152
Accept=no

o

[Socket]
ListenStream=0.0.0.0:49152
ListenStream=[::]:22
BindIPv6Only=ipv6-only
Accept=no
FreeBind=yes

Guarde los cambios y ejecute los siguientes comandos:

sudo systemctl daemon-reload

Reinicie el servicio:

sudo systemctl restart ssh.socket

Recuerde que deberá indicar el nuevo puerto en cada solicitud de conexión SSH al servidor:

ssh username@IPv4_VPS -p NewPortNumber

Ejemplo:

ssh ubuntu@203.0.113.100 -p 49152

Si no puede acceder a su sistema, puede utilizar nuestro entorno modo de rescate para cancelar los cambios.

Crear un usuario con permisos restringidos

Por lo general, las tareas que no requieran privilegios root deben realizarse a través de un usuario estándar. Para más información, consulte esta guía.

Configurar el firewall interno (iptables)

Las distribuciones GNU/Linux habituales se entregan con un servicio de cortafuegos llamado iptables. Por defecto, este servicio no tiene ninguna regla activa. Puede comprobarlo introduciendo el siguiente comando:

iptables -L

Para más información sobre iptables, consulte nuestra guía dedicada.

Le recomendamos que cree y adapte las reglas de firewall en función de su uso. Para más información sobre las diversas operaciones posibles, consulte la documentación oficial de la distribución utilizada.

Instalar Fail2ban

Fail2ban es una aplicación de prevención contra intrusiones que actúa bloqueando las direcciones IP desde las que robots o atacantes intentan penetrar en el sistema.
Es recomendable, y en algunos casos incluso indispensable, proteger su servidor de los ataques de tipo Brute Force o Denial of Service.

Para instalar el paquete de software, utilice el siguiente comando:

sudo apt install fail2ban

En CentOS 7 y CentOS 8 (o RHEL), instale primero el repositorio EPEL (Extra Packages for Enterprise Linux), luego Fail2ban:

sudo yum install epel-release
sudo yum install fail2ban

Puede personalizar los archivos de configuración Fail2ban para proteger los servicios expuestos a la internet pública contra los intentos de conexión repetidos.

Como recomienda Fail2ban, cree un archivo de configuración local de sus servicios copiando el archivo "jail.conf":

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Abra el archivo con un editor de texto:

sudo nano /etc/fail2ban/jail.local

Lea la información arriba del archivo, incluyendo los comentarios en [DEFAULT].

La configuración [DEFAULT] es global, por lo que se aplicará a todos los servicios que se hayan definido para activarla (enabled) en este archivo.

Es importante saber que los parámetros globales sólo se tendrán en cuenta si no hay valores diferentes definidos en las secciones servicios (JAILS) del archivo.

Consideremos estas líneas en [DEFAULT]:

bantime = 10m
maxretry = 5
enabled = false

Esto significa que una dirección IP desde la que un host intenta conectarse se bloqueará durante diez minutos después del quinto intento de apertura de sesión fallido.
Además, todos los parámetros especificados por [DEFAULT] y en las siguientes secciones permanecen desactivados a menos que se añada la línea enabled = true para un servicio (listado debajo # JAILS).

Por ejemplo de uso, el hecho de tener las siguientes líneas en la sección [sshd] activará restricciones únicamente para el servicio OpenSSH:

[sshd]
enabled = true
port = ssh
filter = sshd
maxretry = 3
findtime = 5m
bantime  = 30m

En este ejemplo, si un intento de conexión SSH falla tres veces en cinco minutos, el período de prohibición de las IP será de 30 minutos.

Si lo ha cambiado, puede sustituir "ssh" por el número de puerto real.

El mejor enfoque es activar Fail2ban únicamente para los servicios que realmente se ejecutan en el servidor. Cada parámetro personalizado añadido en # JAILS tendrá preferencia sobre los valores predeterminados.

Una vez realizados los cambios, guarde el archivo y cierre el editor.

Reinicie el servicio para asegurarse de que se ejecuta con las personalizaciones aplicadas:

1. Comando recomendado con systemctl:

sudo systemctl restart fail2ban

2. Comando con service (método heredado, aún compatible):

sudo service fail2ban restart

Fail2ban dispone de múltiples parámetros y filtros de personalización, así como de opciones predefinidas, por ejemplo, cuando desea añadir una capa de protección a un servidor web Nginx.

Para más información y recomendaciones sobre Fail2ban, consulte la documentación oficial de esta herramienta.

Configuración del firewall de red de OVHcloud

Las soluciones de OVHcloud incluyen la posibilidad de activar un firewall de red en el punto de entrada de la infraestructura. Una configuración correcta de este cortafuegos permite bloquear las conexiones incluso antes de que lleguen al servidor.

Para activarlo, consulte la guía Configurar el firewall de red.

Guardar copia de seguridad del sistema y los datos

El concepto de seguridad no se limita a la protección de un sistema contra los ataques.

La protección de sus datos es un elemento clave. Por ese motivo, OVHcloud le ofrece varias opciones de backup como servicios:

  • La opción Snapshot que permite crear una instantánea manual.
  • La opción de backup automático permite conservar copias de seguridad regulares de su VPS (a excepción de los discos adicionales).

En la página de producto y en las respectivas guías encontrará toda la información sobre las soluciones de backup disponibles para su servicio.

Más información

Primeros pasos con un VPS

Crear claves SSH

Configurar el firewall de Windows

Configurar el firewall de Linux con iptables

Configurar el firewall de red

Interactúe con nuestra comunidad de usuarios.

Artículos relacionados