Le durcicement de linux est une étape très importante à faire une fois celui-ci est installé afin de le sécuriser.
Dans ce guide je vais vous présenter les configurations nécessaire à fair pour sécurisier CentOS 8 /redhat 8
Remarque :
Il est à noter que ces configurations peuvent être faite aussi pour CentOS 7 / Redhat 7.
1- Complexité du mot de passe :
Pour renforcer la complexité du mot de passe, nous allons utiliser le module pam pwquality en éditant le fichier /etc/pam.d/system-auth.
localiser la ligne contennat le module pwquality.so :
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
Modifier la ligne comme ci-dessous :
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= minlen=8 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 enforce_for_root
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-16.png?resize=790%2C218&ssl=1)
Pour plus d’information sur la complexité du mot de passe pour les système Linux CentOS et Redhat, je vous conseil de vous réferez à l’article Renforcer la complexité du mot de passe sur CentOS / RHEL.
2- Délai d’expiration pour la session ssh :
Par défaut les session SSH n’expire jamais et cela n’est pas recomandé :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-17.png?resize=596%2C121&ssl=1)
Pour définir une valeur précise éditer le fichier /etc/ssh/sshd_config et mettez une valeur de votre choix ( une valeur de 900s est recommandée) :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-18.png?resize=641%2C119&ssl=1)
3 – Durée de vie du mot de passe :
Par défaut la duréé de vie du mot de passe est définit à 99999 cela veux dire que le mot n’expirera jamais et cela n’est pas recommandé :
[root@linux ~]# grep PASS_MAX /etc/login.defs # PASS_MAX_DAYS Maximum number of days a password may be used. PASS_MAX_DAYS 90
Editer le fichier /etc/login.defs et modifier la valeur 90 ( recommandé) :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-20.png?resize=615%2C138&ssl=1)
4- Interdire l’accès ssh du compte root
Editer le fichier de configuration de ssh /etc/ssh/sshd_config et localiser la ligne contenant le paramétre PermitRootLogin :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-22.png?resize=233%2C134&ssl=1)
Remplacer yes par no :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-23.png?resize=470%2C87&ssl=1)
redémarrer ensuite le service sshd pour ce changement soit pris en charge.
Si vous essayer de vous connecter avec root l’accés sera interdit :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-24.png?resize=393%2C86&ssl=1)
5- Historique du mot de passe :
L’objectif est d’interdire un utilisateur d’utiliser des anciens mot de passe, moi je vais choisir de retenir 4 ancien mot de passe, pour cela éditer le fichier /etc/security/ et localiser la vbaleur « remember »
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-25.png?resize=566%2C345&ssl=1)
Décomenter la ligne et mettez la valeur de votre choix :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-26.png?resize=522%2C107&ssl=1)
6- Nombre de tentive d’accès
On peux mettre une politique de désactiver un compte si la tentative de connexion a échoué plusieurs cela est très utils si quelqu’un est entrain de tester des mot de passes pour se connecter.
Pour ce faire éditer le fichier /etc/pam.d/password-auth et ajouter la ligne ci-dessous comme présenté sur la capture suivante :
auth required pam_faillock.so preauth silent audit deny=3 unlock_time=1800
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-27.png?resize=790%2C311&ssl=1)
7- Duréé du blockage du compte
Si un compte est désactivé après le nombre de tentative déterminé a été étainte, le compte sear désactivé pour tempe déteminé que vous pouver précisé sur le fichier /etc/pam.d/password-auth avec le paramétre unlock_time :
![](https://i0.wp.com/sysreseau.net/wp-content/uploads/2022/11/image-28.png?resize=790%2C311&ssl=1)
nmap : les 12 commandes que vous devez connaître
Protocole du routage
C’est quoi le réseau CDN et comment fonctionne ?
ss : 10 exemples pour monitorer son réseau
Fail2Ban : How to protect Linux services