« Linux : Securiser un serveur Linux » : différence entre les versions

De www.yakakliker.org
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 149 : Ligne 149 :
sudo clamscan -r /directory_to_scan
sudo clamscan -r /directory_to_scan
</syntaxhighlight>
</syntaxhighlight>
== Authentification multi-facteurs MFA ==
=== Google Authenticator ===
<code>sudo apt install libpam-google-authenticator</code>
==== Paramétrage ====
<code>google-authenticator</code>
==== Activation du MFA dans la configuration PAM ====
<code>sudo nano /etc/pam.d/sshd</code>
* Ajouter
<code>auth required pam_google_authenticator.so</code>





Version du 23 décembre 2024 à 11:30

Désactiver l'accès SSH Root

Editer le fichier de configuration SSH

sudo nano /etc/ssh/sshd_config

  • Vérifier la présence ou non de cette ligne :
    • PermitRootLogin yes
  • La remplacer par :
    • PermitRootLogin no
  • Paramétrer le protocol SSH (Imposer le protocol 2 uniquement)
    • Protocol 2

Enregistrer le fichier et redémarrer le service SSHD

sudo systemctl restart sshd

Utilisation d'une clé SSH pour l'authentification

Générer la clé SSH sur la station locale pour créer une paire de clé Privée/Publique

ssh-keygen -t rsa -b 4096

Copier la clé publique sur le serveur distant

ssh-copy-id username@server_ip

Désactiver l'authentification SSH par mot de passe

Editer le fichier de configuration SSH

sudo nano /etc/ssh/sshd_config

  • Modifier ou ajouter la variable PasswordAuthentication et la passer à no
    • PasswordAuthentication no

Redémarrer le service SSH

  • sudo systemctl restart sshd

Configurer une politique de mots de passe complexe

Editer une fichier de configuration de la politique de mot de passe

sudo nano /etc/security/pwquality.conf

Exemple de paramètres

minlen = 12 minclass = 3

  • minlen : 12 caractères
  • minclass : 3 types de caractères différents

Activer les mises à jours automatiques sur Ubuntu

sudo apt install unattended-upgrades

Configurer le Firewall

Exemple

sudo apt install ufw
sudo ufw allow 22    # Allow SSH
sudo ufw allow 80    # Allow HTTP
sudo ufw allow 443   # Allow HTTPS
sudo ufw enable

Configurer Fail2ban (Détection d'intrusion)

Installation de Fail2ban

sudo apt install fail2ban

Edition de la configuration

sudo nano /etc/fail2ban/jail.conf

Exemple pour la surveillance du service SSH

[sshd] 
enabled = true 
maxretry = 5 
bantime = 3600
  • Block l'IP pendant 1 heure après 5 échecs d'authentification

Désactiver les services non nécessaires

Listing des services actifs

sudo systemctl list-unit-files --type=service --state=enabled

Désactiver les services non nécessaires

sudo systemctl disable service_name

Vérifier les droits d'accès aux fichiers de configuration importants

Exemple

sudo chmod 600 /etc/ssh/sshd_config 
sudo chmod 640 /var/log/auth.log

Activer le monitoring & les logs

(Sera l'objet d'une page dédiée plus tard)

  • Utiliser des outils comme Rsyslog ou (plus centralisé) Elasticsearch, Logstash, Kibana

Configurer Auditd

sudo apt install auditd

Ajout des règles dans le fichier /etc/audit/audit.rules pour surveiller les fichiers importants

-w /etc/passwd -p wa -k passwd_changes

Redémarrage du service auditd

sudo systemctl restart auditd

Paramètres du Kernel

Edition du fichier /etc/sysctl.conf

net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0

Application des paramètres

sudo sysctl -p

Limitation des ressources systèmes

Edition du fichier /etc/security/limits.conf

sudo nano /etc/security/limits.conf

Paramètres

* soft nproc 4096 
* hard nproc 8192

Outils de détection de failles de sécurité

Lynis

sudo apt install lynis

Scan du système

sudo lynis audit system

Antivirus

Clamav

sudo apt install clamav

Mise à jour & scan

sudo freshclam 
sudo clamscan -r /directory_to_scan

Authentification multi-facteurs MFA

Google Authenticator

sudo apt install libpam-google-authenticator

Paramétrage

google-authenticator

Activation du MFA dans la configuration PAM

sudo nano /etc/pam.d/sshd

  • Ajouter

auth required pam_google_authenticator.so






Liens

https://jay75chauhan.medium.com/%EF%B8%8Fsecure-linux-server-1bbbaaa465d6