ciberseguridad_11zon

Los servidores Linux son conocidos por su seguridad y estabilidad, pero una mala configuración puede dejarlos vulnerables a ataques cibernéticos. Proteger tu servidor Linux no solo evita pérdida de datos y accesos no autorizados, sino que también mejora su rendimiento y confiabilidad.

En esta guía detallada, aprenderás cómo evitar los errores más comunes en la seguridad de un servidor Linux y aplicar buenas prácticas para mantenerlo seguro.

1. Mantén el Sistema y Paquetes Actualizados

No actualizar el sistema es uno de los errores más comunes en servidores Linux. Un sistema desactualizado puede contener vulnerabilidades que los hackers explotan fácilmente.

Cómo Mantener Linux Actualizado

Ejecuta estos comandos regularmente para actualizar tu servidor:

📌 En distribuciones basadas en Debian (Ubuntu, Debian, etc.):

sudo apt update && sudo apt upgrade -y

📌 En distribuciones basadas en RedHat (CentOS, Fedora, etc.):

sudo dnf update -y

📌 Para Arch Linux y derivados:

sudo pacman -Syu

💡 Consejo: Configura actualizaciones automáticas con:

sudo apt install unattended-upgrades

sudo dpkg-reconfigure unattended-upgrades

2. Usa Contraseñas Fuertes y Autenticación Segura

Muchos ataques ocurren por contraseñas débiles. Evita este error implementando una política de contraseñas seguras.

Buenas Prácticas

✔ Usa contraseñas de al menos 12 caracteres con letras, números y símbolos.
✔ Usa un gestor de contraseñas como Bitwarden o KeePassXC.
Deshabilita el acceso con contraseña en SSH y usa autenticación con claves SSH.

Para generar una clave SSH, usa:

ssh-keygen -t rsa -b 4096

Luego, copia la clave pública a tu servidor:

ssh-copy-id usuario@servidor>

Para deshabilitar la autenticación con contraseña, edita el archivo de configuración de SSH:

sudo nano /etc/ssh/sshd_config

Cambia o añade las siguientes líneas:

nginx

PasswordAuthentication no PermitRootLogin no

Luego, reinicia el servicio SSH:

sudo systemctl restart ssh

3. Restringe el Acceso al Servidor

No todos los usuarios deben tener acceso total al servidor. Es importante restringir privilegios para minimizar riesgos.

Cómo Restringir el Acceso

Usa usuarios sin privilegios administrativos para tareas diarias.
✔ Usa sudo solo cuando sea necesario.
Restringe el acceso SSH solo a usuarios autorizados en /etc/ssh/sshd_config:

nginx

AllowUsers usuario1 usuario2

Bloquea el acceso al usuario root con:

PermitRootLogin no

Cambia el puerto de SSH para reducir intentos de acceso:

yaml

Port 2222

Luego, reinicia SSH con:

sudo systemctl restart ssh

4. Configura un Firewall y Control de Tráfico

No tener un firewall activo es una gran brecha de seguridad. Un firewall filtra el tráfico no deseado y protege contra ataques.

Cómo Configurar un Firewall con UFW (Ubuntu/Debian)

1️⃣ Instalar UFW:

sudo apt install ufw -y

2️⃣ Permitir conexiones SSH:

sudo ufw allow 2222/tcp

3️⃣ Habilitar el firewall:

sudo ufw enable

4️⃣ Verificar reglas activas:

sudo ufw status verbose

📌 Para servidores con CentOS o Fedora, usa firewalld:

sudo systemctl enable firewalld

sudo systemctl start firewalld

5. Configura un IDS/IPS para Detectar Ataques

Un Sistema de Detección y Prevención de Intrusos (IDS/IPS) te alerta sobre posibles ataques.

Instalando Fail2Ban para Proteger tu Servidor

📌 Instalar Fail2Ban en Debian/Ubuntu:

sudo apt install fail2ban -y

📌 Instalar en CentOS/Fedora:

sudo dnf install fail2ban -y

Configura Fail2Ban para proteger SSH:

sudo nano /etc/fail2ban/jail.local

Añade:

ini

[sshd] enabled = true port = 2222 maxretry = 5 bantime = 3600

Guarda los cambios y reinicia:

sudo systemctl restart fail2ban

Para ver los intentos bloqueados:

sudo fail2ban-client status sshd

6. Usa SELinux o AppArmor para Mayor Seguridad

📌 En Fedora/CentOS (SELinux):
✔ Activa SELinux con:

sudo setenforce 1

✔ Verifica el estado de SELinux:

sestatus

📌 En Ubuntu/Debian (AppArmor):
✔ Instala AppArmor:

sudo apt install apparmor -y

✔ Habilita AppArmor:

sudo systemctl enable apparmor --now

7. Monitorea tu Servidor Constantemente

La supervisión en tiempo real te ayuda a detectar comportamientos sospechosos antes de que se conviertan en problemas.

Herramientas de Monitoreo

HTOP: Ver procesos en tiempo real.

sudo apt install htop -y && htop

Netstat: Ver conexiones activas.

netstat -tulnp

Chkrootkit: Detectar malware en Linux.

sudo apt install chkrootkit -y sudo chkrootkit

Lynis: Auditoría de seguridad en servidores Linux.

sudo apt install lynis -y sudo lynis audit system

Conclusión

🔒 Proteger tu servidor Linux no es difícil, pero requiere disciplina y buenas prácticas.
📌 Mantén actualizado tu sistema y usa autenticación con claves SSH.
📌 Configura un firewall y usa herramientas como Fail2Ban para evitar ataques.
📌 Monitorea constantemente para detectar actividad sospechosa.

💡 Con estas medidas, tu servidor estará mejor protegido contra amenazas y ataques cibernéticos.

 

Fuente: somoslibres

¿Quién está en línea?

Hay 46487 invitados y ningún miembro en línea