Como hemos visto en artículos anteriores, para crear un VPS o máquina virtual se utilizan tecnologías de virtualización que permiten dividir un servidor físico en múltiples entornos virtuales aislados, cada uno con la capacidad de levantar su propio sistema operativo. Lo anterior, permite desplegar de forma eficiente multiples aplicaciones, muchas de la cuales se ejecutan sobre el sistema operativo Linux.
Los VPS Linux se utilizan ampliamente en la actualidad y se consideran entre los más populares debido a su estabilidad, seguridad y flexibilidad, que para muchos superan a los servidores estándar de Windows. Además, los servidores Linux generalmente son más livianos para ejecutarse tanto en servidores físicos como en la nube porque no requieren una interfaz gráfica. Sin embargo, ese poder conlleva una gran responsabilidad: mantener y asegurar este entorno, especialmente cuando optas por un VPS No Administrado, donde tendrás control absoluto sobre el servidor, desde el software hasta la protección.
Saber cómo proteger tu VPS Linux, ayudará a evitar una serie de amenazas y ataques que puedan comprometer tus datos y la continuidad operativa del servicio.
Para conocer más detalles sobre proveedores de VPS y cómo elegir tu máquina ideal, hablemos por chat! >
¿Se puede hackear un VPS?
Inevitablemente, sí. Con suficiente tiempo y dedicación, cualquier servidor puede ser hackeado, aunque tengamos implementados controles de seguridad, ya que por definición, ningún sistema informático está 100% libre de riesgo.
Son quienes administran estos sistemas los encargados de reducir el riesgo al mínimo, para así evitar amenazas, detener ataques y hacerlos resilientes. Si bien la seguridad predeterminada de Linux es bastante buena y mejor que la de la mayoría de sus competidores, aún tiene debilidades; si no es administrado correctamente, se pueden presentar vulnerabilidades cuando es configurado de forma incorrecta, se descarga e instala malware, o se dejan aplicaciones sin parches. También a medida que se integran cambios al sistema, el riesgo aumenta o disminuye dependiendo de la modificación realizada.
Entonces, a continuación tienes algunas de las configuraciones de seguridad mas utilizadas para mantener seguro tu VPS Linux:
- Deshabilita el inicio de sesión raíz
- Cambia el puerto predeterminado de SSH
- Supervisa los registros del servidor
- Implementa una política de contraseña segura
- Usa cifrado GnuPG
- Usa particiones de disco
- Usa SFTP en lugar de FTP
1. Deshabilita el inicio de sesión raíz
Cada VPS Linux tiene un usuario raíz o “root” que tiene el mayor nivel de privilegios de administración en comparación con los otros usuarios del sistema. Los delincuentes informáticos pueden apuntar a ellos para obtener acceso completo al servidor.
Por lo tanto, es fundamental deshabilitar los inicios de sesión del usuario raíz para proteger su servidor de ataques. Antes de deshabilitar el root, no olvides crear otro usuario alternativo con privilegios para ejecutar comandos de nivel raíz:
- Abre Terminal e inicia sesión SSH.
- Para abrir y editar el archivo de configuración, ejecuta el siguiente comando:
nano /etc/ssh/sshd_config
- Encuentra el parámetro “PermitRootLogin” y cámbialo a no:
PermitRootLogin=no
- Guarda los cambios y reinicia el servicio SSH ejecutando el siguiente comando:
- Para Debian y Ubuntu
service ssh restart
- Para CentOS y Red Hat Enterprise Linux (RHEL)
systemctl restart sshd.service
- Esto deshabilitará el inicio de sesión raíz.
2. Cambia el puerto predeterminado de SSH
En acceso SSH es necesario para conectarse en forma segura a un VPS y se instala con el puerto predeterminado 22. Los atacantes escanean los servidores en busca de puertos abiertos como el 22 para obtener acceso remoto a SSH. Después de detectar SSH en el puerto 22, un atacante podría lanzar un ataque de fuerza bruta para obtener acceso remoto al servidor adivinando las credenciales del usuario raíz.
Para combatir este ataque, el puerto SSH se puede mover a uno alternativo. Cuando SSH se ejecuta en un puerto diferente, los escaneos automáticos no mostrarán nada para el puerto 22. Para cambiar este puerto, se debe actualizar de la siguiente forma:
- Abre Terminal e inicia sesión en SSH.
- Edita el archivo de configuración del servicio ejecutando el siguiente comando:
nano /etc/ssh/sshd_config
- Localiza la línea que dice Puerto 22 .
- Reemplaza 22 con un nuevo número de puerto y elimina el #
- Guarda los cambios
- Reinicia el servicio insertando el siguiente comando y presionando Enter:
- Para Debian y Ubuntu
service ssh restart
- Para CentOS y Red Hat Enterprise Linux (RHEL)
systemctl restart sshd.service
- Finalmente, inicia sesión en SSH usando el nuevo puerto.
Antes de editar el archivo, asegúrate de que otro servicio no utilice el mismo numero de puerto, o tendrá un conflicto y ambos servicios no funcionarán correctamente.
3. Supervisa los registros del servidor
El monitoreo de VPS requiere el registro de eventos específicos, como fallas de autenticación, cargas fallidas, errores y otras amenazas comunes. Estos registros se pueden usar en análisis e informes que pueden brindar a los administradores información detallada sobre la actividad que ocurre en el servidor. Los registros pueden informar a los administradores sobre un ataque en curso o un compromiso. Uno de los directorios críticos en Linux se llama /var/log . Almacena una colección de archivos de registro que contienen información crucial relacionada con el sistema, el kernel, los administradores de paquetes y varias aplicaciones que se ejecutan en el servidor.
A continuación podrás ver cómo abrir /var/log y verificar los registros del sistema en un servidor Ubuntu:
- Abra Terminal e inicie sesión en SSH.
- Ejecute el siguiente comando para cambiar el directorio de trabajo a /var/log . Tenga en cuenta que esto no producirá ningún resultado.
cd /var/registro
- Para enumerar todos los archivos, inserte el siguiente comando y presione Enter :
ls
- Para verificar los registros del sistema, ingrese el siguiente comando y presione Entrar :
sudo cat syslog
Supervisar los registros de tu VPS ayuda a mantener el control sobre su funcionamiento. Los registros del servidor te permiten saber si el servidor está experimentando ciberataques u otra amenaza de seguridad. Cuanto antes se corrijan esas vulnerabilidades, menos oportunidades tendrán los atacantes de interceptar datos.
> Por un inbox libre de newsletters!… Únete a nuestra red en LinkedIn para seguir y comentar este artículo.
4. Implementa una política de contraseña segura
Una política de contraseña siempre es necesaria para cualquier usuario con acceso a los recursos de la red. Por lo general, las contraseñas que contienen información relacionada con tu identidad o frases de contraseña simples son fáciles de adivinar. Por lo tanto, implementa una política de contraseñas larga y segura con varios elementos, como letras mayúsculas y minúsculas, números y caracteres especiales. haciendo esto, protegerás tu VPS contra ataques de fuerza bruta.
También puedes emplear herramientas en línea como NordPass o LastPass para crear contraseñas seguras. Ambos brindan opciones de personalización, como limitar la longitud de la contraseña y el uso de caracteres.
5. Usa cifrado GnuPG
En la mayoría de los casos, los datos son vulnerables durante la transición de un lugar a otro. Por lo tanto, el cifrado es esencial para proteger los datos de la fuga. GnuPG se utiliza para cifrar los datos a través de la red y autenticar el sistema. El sistema consta de la clave pública que solo se describe utilizando la clave privada disponible con el destinatario. Sin la clave privada, el sistema que intenta descifrar no podrá descifrarla.
La aplicación GnuPG permitirá a los administradores transferir datos mediante cifrado asíncrono. Cualquier tercero puede utilizar la clave pública generada para enviar datos cifrados al propietario o a los administradores del sitio, y la clave privada se utiliza para descifrarla. Debido a que la clave privada se usa para descifrar datos, debe protegerse y nunca divulgarse a un tercero.
6. Usa particiones de disco
Para mayor seguridad, es una buena idea particionar tu disco para mantener los archivos del sistema operativo alejados de los archivos de usuario, archivos tmp y programas de terceros. Es posible separar el sistema operativo de las particiones de archivos de usuario, para ello, usa la opción noexec (sin ejecución de archivos binarios) y nosuid (no permita establecer identificador de usuario o identificador de grupo) para montar las dos particiones de forma segura:
# mount -t tmpfs -o noexec,nosuid,nodev tmpfs /tmp
# mount -t tmpfs -o noexec,nosuid,nodev tmpfs /var/tmp
7. Usa SFTP en lugar de FTP
Si bien las conexiones FTP no tienen el cifrado habilitado, usando FTPS (FTP sobre TLS) podemos cifrar las credenciales, aunque no las transferencias de archivos. Como resultado, el uso de ambas conexiones incrementa los riesgos de seguridad, permitiendo fácilmente realizar un ataque de rastreo para robar tus credenciales de inicio e interceptar la transferencia de archivos.
Para evitar este riesgo, puedes utilizar FTP sobre SSH, o SFTP en su lugar. SFTP es una conexión FTP segura ya que encripta completamente todos los datos, incluidas las credenciales y los archivos que se transfieren. Además, SFTP protege a los usuarios de los ataques de intermediarios, ya que el servidor debe autenticar al cliente antes de obtener acceso al sistema. Puedes configurarlo de la siguiente forma:
- Abre la Terminal e inicia sesión en SSH.
- Inicia una conexión SFTP ingresando alguno de los siguientes comandos y presionando Enter :
sftp user@server_ipaddress
sftp user@remotehost_domainname
- Si estás utilizando un puerto personalizado, puedes ejecutar uno de los siguientes comandos:
sftp -oPort=customport user@server_ipaddress
sftp -oPort=customport user@remotehost_domainname
- Una vez que esté conectado, aparecerá un mensaje de SFTP.
Para conocer más detalles sobre proveedores de VPS y cómo elegir tu máquina ideal, hablemos por chat! >
Es importante proteger y mantener su VPS seguro en todo momento, en este artículo, hemos revisado sólo algunos pasos mínimos necesarios para asegurar un VPS Linux. Sin embargo, además de estas configuraciones y dependiendo de como se use la maquina virtual, es muy probable que debas habilitar capas de seguridad adicionales. En esos casos tendrás que determinar qué medidas de seguridad específicas se requieren, aunque antes de implementar cualquier funcionalidad, debes estar consciente de mantener un buen equilibrio entre usabilidad y seguridad.