« 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 84 : | Ligne 84 : | ||
<code>sudo systemctl disable service_name</code> | <code>sudo systemctl disable service_name</code> | ||
== Vérifier les droits d'accès aux fichiers de configuration importants == | |||
=== Exemple === | |||
<syntaxhighlight lang="bash"> | |||
sudo chmod 600 /etc/ssh/sshd_config | |||
sudo chmod 640 /var/log/auth.log | |||
</syntaxhighlight> | |||
== 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 === | |||
<code>sudo apt install auditd</code> | |||
==== Ajout des règles dans le fichier ''/etc/audit/audit.rules'' pour surveiller les fichiers importants ==== | |||
<code>-w /etc/passwd -p wa -k passwd_changes</code> | |||
==== Redémarrage du service auditd ==== | |||
<code>sudo systemctl restart auditd</code> | |||
Version du 23 décembre 2024 à 11:15
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
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
Liens
https://jay75chauhan.medium.com/%EF%B8%8Fsecure-linux-server-1bbbaaa465d6