« 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 33 : Ligne 33 :
* <code>sudo systemctl restart sshd</code>
* <code>sudo systemctl restart sshd</code>


== Configurer une politique de mots de passe complexe ==


=== Editer une fichier de configuration de la politique de mot de passe ===
<code>sudo nano /etc/security/pwquality.conf</code>
==== Exemple de paramètres ====
<code>minlen = 12 minclass = 3</code>
* '''minlen :''' 12 caractères
* '''minclass :''' 3 types de caractères différents<br />
== Activer les mises à jours automatiques sur Ubuntu ==
<code>sudo apt install unattended-upgrades</code>
== Configurer le Firewall ==
=== Exemple ===
<syntaxhighlight lang="bash">
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
</syntaxhighlight>
== Configurer Fail2ban (Détection d'intrusion) ==
=== Installation de Fail2ban ===
<code>sudo apt install fail2ban</code>
=== Edition de la configuration ===
<code>sudo nano /etc/fail2ban/jail.conf</code>
==== Exemple pour la surveillance du service SSH ====
<syntaxhighlight lang="bash">
[sshd]
enabled = true
maxretry = 5
bantime = 3600
</syntaxhighlight>
* Block l'IP pendant 1 heure après 5 échecs d'authentification
== Désactiver les services non nécessaires ==
=== Listing des services actifs ===
<code>sudo systemctl list-unit-files --type=service --state=enabled</code>
=== Désactiver les services non nécessaires ===
<code>sudo systemctl disable service_name</code>





Version du 23 décembre 2024 à 11:06

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



Liens

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