Seguridad en Linux: guía completa para proteger su sistema
Aprenda a proteger eficazmente sus sistemas Linux frente a las amenazas y vulnerabilidades más comunes.
InSkillCoach
Seguridad en Linux: guía completa para proteger su sistema
La seguridad es un aspecto fundamental de la administración de sistemas Linux. Tanto si gestiona un servidor en producción como un ordenador personal, proteger su sistema frente a las amenazas es esencial. Esta guía le presenta las mejores prácticas y técnicas para proteger eficazmente su entorno Linux.
Principios fundamentales de seguridad
Actualización periódica del sistema
La primera línea de defensa es mantener su sistema actualizado:
# Pour Debian/Ubuntu
sudo apt update
sudo apt upgrade
# Pour Fedora/RHEL
sudo dnf upgrade
# Pour Arch Linux
sudo pacman -Syu
Configure las actualizaciones automáticas para los parches de seguridad:
# Sur Debian/Ubuntu
sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades
Gestión de usuarios y permisos
Principio de mínimo privilegio
# Créer un utilisateur standard (non root)
sudo adduser nouvel_utilisateur
# Ajouter aux sudoers (pour les tâches administratives)
sudo usermod -aG sudo nouvel_utilisateur
# Vérifier les groupes d'un utilisateur
groups utilisateur
Refuerzo de las contraseñas
# Configurer une politique de mots de passe forts
sudo apt install libpam-pwquality
sudo nano /etc/security/pwquality.conf
# Paramètres recommandés
# minlen = 12
# minclass = 3
# enforce_for_root
Protección de la red
Configuración del cortafuegos
UFW (Uncomplicated Firewall) simplifica la gestión del cortafuegos:
# Installation
sudo apt install ufw
# Configuration de base
sudo ufw default deny incoming
sudo ufw default allow outgoing
# Autoriser SSH
sudo ufw allow ssh
# Autoriser d'autres services si nécessaire
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
# Activer le pare-feu
sudo ufw enable
# Vérifier le statut
sudo ufw status verbose
Protección de SSH
SSH suele ser el principal objetivo de los ataques:
# Éditer la configuration SSH
sudo nano /etc/ssh/sshd_config
Modificaciones recomendadas:
# Désactiver la connexion root
PermitRootLogin no
# Utiliser uniquement le protocole SSH v2
Protocol 2
# Désactiver l'authentification par mot de passe
PasswordAuthentication no
# Limiter les utilisateurs autorisés
AllowUsers utilisateur1 utilisateur2
# Changer le port par défaut (optionnel mais efficace)
Port 2222
# Limiter les tentatives d'authentification
MaxAuthTries 3
Reinicie el servicio SSH:
sudo systemctl restart sshd
Autenticación mediante clave SSH
# Sur votre machine locale, générer une paire de clés
ssh-keygen -t ed25519 -C "votre_email@exemple.com"
# Copier la clé publique sur le serveur
ssh-copy-id -i ~/.ssh/id_ed25519.pub utilisateur@serveur
# Ou manuellement
cat ~/.ssh/id_ed25519.pub | ssh utilisateur@serveur "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
Protección contra intrusiones
Fail2ban: protección contra ataques de fuerza bruta
# Installation
sudo apt install fail2ban
# Configuration
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
Configuración recomendada:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600
Inicie y active el servicio:
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
Detección de intrusiones con AIDE
AIDE (Advanced Intrusion Detection Environment) supervisa las modificaciones de los archivos:
# Installation
sudo apt install aide
# Initialiser la base de données
sudo aideinit
# Vérifier les modifications
sudo aide --check
Endurecimiento del sistema
Desactivación de los servicios innecesarios
# Lister les services actifs
systemctl list-units --type=service --state=active
# Désactiver un service
sudo systemctl disable service_inutile
sudo systemctl stop service_inutile
Protección del gestor de arranque
# Définir un mot de passe GRUB
sudo grub-mkpasswd-pbkdf2
sudo nano /etc/grub.d/40_custom
# Ajouter les lignes suivantes
# set superusers="admin"
# password_pbkdf2 admin <mot_de_passe_généré>
# Mettre à jour GRUB
sudo update-grub
Cifrado de datos
# Chiffrer le répertoire personnel
sudo apt install ecryptfs-utils
sudo ecryptfs-migrate-home -u utilisateur
# Chiffrer une partition complète (lors de l'installation)
# Utiliser LUKS via l'installateur de votre distribution
Supervisión y registro
Configuración del registro
# Vérifier les journaux système
sudo journalctl -xe
# Surveiller les tentatives de connexion
sudo tail -f /var/log/auth.log
# Configurer la rotation des journaux
sudo nano /etc/logrotate.conf
Herramientas de supervisión
# Installer des outils de surveillance
sudo apt install logwatch
sudo apt install auditd
# Configurer des rapports quotidiens
sudo nano /etc/cron.daily/00logwatch
Auditorías de seguridad
Lynis: herramienta de auditoría de seguridad
# Installation
sudo apt install lynis
# Exécuter un audit complet
sudo lynis audit system
# Générer un rapport
sudo lynis audit system --report-file /tmp/lynis-report.dat
OpenVAS: escáner de vulnerabilidades
# Installation (peut varier selon la distribution)
sudo apt install openvas
# Configuration initiale
sudo openvas-setup
# Accéder à l'interface web
# https://localhost:9392
Buenas prácticas adicionales
Copias de seguridad seguras
# Utiliser rsync avec SSH
rsync -avz -e ssh /chemin/source utilisateur@serveur:/chemin/destination
# Automatiser avec cron
# 0 2 * * * rsync -avz -e ssh /chemin/source utilisateur@serveur:/chemin/destination
Aislamiento con AppArmor o SELinux
# AppArmor (Ubuntu/Debian)
sudo apt install apparmor apparmor-utils
sudo aa-enforce /etc/apparmor.d/*
# SELinux (Fedora/RHEL)
sudo dnf install selinux-policy-targeted
sudo setenforce 1
Conclusión
La seguridad en Linux es un proceso continuo que requiere vigilancia y actualizaciones periódicas. Al aplicar las medidas descritas en esta guía, establecerá una base sólida para proteger su sistema frente a la mayoría de las amenazas habituales.
No olvide que la seguridad perfecta no existe, pero un enfoque en profundidad con varias capas de protección reduce considerablemente los riesgos. Manténgase al día de las últimas vulnerabilidades y adapte su estrategia de seguridad en consecuencia.
Acerca de InSkillCoach
Experto en formación y tecnologías
Coach especializado en tecnologías avanzadas e IA, impulsado por GNeurone Inc.
Certificaciones:
- AWS Certified Solutions Architect – Professional
- Certificaciones de Google Cloud
- Microsoft Certified: DevOps Engineer Expert
- Certified Kubernetes Administrator (CKA)
- CompTIA Security+
Comentarios
Los comentarios funcionan con GitHub Discussions
Inicia sesión con GitHub para participar en la discusión