Modifications pour le document Durcissement Linux
Modifié par john le 2026/09/20 20:06
Résumé
-
Propriétés de la Page (1 modifications, 0 ajouts, 0 suppressions)
Détails
- Propriétés de la Page
-
- Contenu
-
... ... @@ -1,39 +3,43 @@ 1 -= Durcissement de Linux = 2 - 3 3 {{toc/}} 4 4 5 5 == Présentation == 6 -Le **durcissement** (ou *hardening*) d’une machine Linux consiste à **renforcer sa sécurité** pour limiter les risques d’exploitation, d’intrusion ou d’erreurs critiques. 7 7 5 +Le **durcissement** (ou //hardening//) d’une machine Linux consiste à **renforcer sa sécurité** pour limiter les risques d’exploitation, d’intrusion ou d’erreurs critiques. 6 + 8 8 C’est une démarche proactive, indispensable pour les systèmes exposés en réseau ou manipulés par plusieurs utilisateurs. 9 9 10 ---- 9 +----- 11 11 12 12 == Objectifs du durcissement == 12 + 13 13 * Réduire la **surface d’attaque** 14 14 * Protéger les **données et services critiques** 15 15 * Prévenir les **exécutions non autorisées** 16 16 * **Isoler** les composants sensibles 17 17 18 ---- 18 +----- 19 19 20 20 == 1. Nettoyer le système == 21 -* Supprimer les services inutiles : 22 - {{code language="bash"}} 23 - systemctl list-units --type=service 24 - sudo systemctl disable nom_du_service 25 - {{/code}} 26 26 27 -* Supprimer les paquets superflus : 28 - {{code language="bash"}} 29 - sudo apt autoremove 30 - # ou 31 - sudo dnf remove paquet 32 - {{/code}} 22 +Supprimer les services inutiles : 33 33 34 ---- 24 +{{code language="bash"}} 25 +systemctl list-units --type=service 26 +sudo systemctl disable nom_du_service 27 +{{/code}} 35 35 29 +Supprimer les paquets superflus : 30 + 31 +{{code language="bash"}} 32 +sudo apt autoremove 33 +# ou 34 +sudo dnf remove paquet 35 +{{/code}} 36 + 37 +----- 38 + 36 36 == 2. Mettre à jour régulièrement == 40 + 37 37 Les mises à jour corrigent des failles de sécurité : 38 38 39 39 {{code language="bash"}} ... ... @@ -42,21 +42,23 @@ 42 42 sudo dnf update 43 43 {{/code}} 44 44 45 -Automatiser avec `unattended-upgrades`(Debian/Ubuntu).49 +Automatiser avec ##unattended-upgrades## (Debian/Ubuntu). 46 46 47 ---- 51 +----- 48 48 49 49 == 3. Sécuriser les comptes == 54 + 50 50 * Désactiver l’accès root en SSH 51 -* Utiliser `sudo`au lieu de se connecter en root56 +* Utiliser ##sudo## au lieu de se connecter en root 52 52 * Supprimer les utilisateurs inutilisés 53 53 * Utiliser des mots de passe robustes 54 54 55 ---- 60 +----- 56 56 57 57 == 4. Configurer un pare-feu == 58 -Utiliser `ufw` ou `nftables` : 59 59 64 +Utiliser ##ufw## ou ##nftables## : 65 + 60 60 {{code language="bash"}} 61 61 sudo ufw default deny incoming 62 62 sudo ufw default allow outgoing ... ... @@ -65,6 +65,7 @@ 65 65 {{/code}} 66 66 67 67 Ou pour un contrôle plus fin : 74 + 68 68 {{code language="bash"}} 69 69 sudo nft add table inet filter 70 70 sudo nft add chain inet filter input { type filter hook input priority 0 \; } ... ... @@ -74,59 +74,68 @@ 74 74 sudo nft add rule inet filter input drop 75 75 {{/code}} 76 76 77 ---- 84 +----- 78 78 79 79 == 5. Configurations sensibles == 80 -* `/etc/sysctl.conf` pour le kernel : 81 - {{code language="bash"}} 82 - net.ipv4.ip_forward = 0 83 - net.ipv4.conf.all.accept_source_route = 0 84 - {{/code}} 85 85 86 - * `/etc/login.defs`pour la politiquedes mots de passe88 +##/etc/sysctl.conf## pour le noyau : 87 87 88 -* `/etc/ssh/sshd_config` : 89 - - Désactiver root : `PermitRootLogin no` 90 - - Forcer les clés : `PasswordAuthentication no` 90 +{{code language="bash"}} 91 +net.ipv4.ip_forward = 0 92 +net.ipv4.conf.all.accept_source_route = 0 93 +{{/code}} 91 91 92 - ---95 +##/etc/login.defs## pour la politique des mots de passe. 93 93 97 +##/etc/ssh/sshd_config## : 98 + 99 +* Désactiver root : ##PermitRootLogin no## 100 +* Forcer les clés : ##PasswordAuthentication no## 101 + 102 +----- 103 + 94 94 == 6. Sécuriser les permissions et services == 95 -* Vérifier les **fichiers SUID** : 96 - {{code language="bash"}} 97 - find / -perm -4000 -type f 2>/dev/null 98 - {{/code}} 99 99 100 -* Utiliser `chmod`, `chown`, `ls -l` pour ajuster les permissions 101 -* Mettre en place `AppArmor` ou `SELinux` pour renforcer l’isolation 106 +Vérifier les **fichiers SUID** : 102 102 103 ---- 108 +{{code language="bash"}} 109 +find / -perm -4000 -type f 2>/dev/null 110 +{{/code}} 104 104 112 +* Utiliser ##chmod##, ##chown##, ##ls -l## pour ajuster les permissions 113 +* Mettre en place ##AppArmor## ou ##SELinux## pour renforcer l’isolation 114 + 115 +----- 116 + 105 105 == 7. Surveillance et audit == 106 -* Installer un IDS comme `AIDE`, `OSSEC`, ou `Fail2Ban` 118 + 119 +* Installer un IDS comme ##AIDE##, ##OSSEC##, ou ##Fail2Ban## 107 107 * Auditer les connexions SSH, sudo, root : 108 - {{code language="bash"}} 109 - journalctl -u ssh 110 - sudo lastlog 111 - {{/code}} 112 112 113 ---- 122 +{{code language="bash"}} 123 +journalctl -u ssh 124 +sudo lastlog 125 +{{/code}} 114 114 127 +----- 128 + 115 115 == 8. Autres bonnes pratiques == 116 -* Désactiver les modules inutiles (`/etc/modprobe.d/blacklist.conf`) 117 -* Monter `/tmp` et `/var/tmp` avec les options `noexec,nosuid,nodev` 118 -* Utiliser des partitions séparées : `/home`, `/var`, `/srv`, etc. 119 -* Activer la journalisation (`rsyslog`, `logrotate`) 120 120 121 ---- 131 +* Désactiver les modules inutiles (##/etc/modprobe.d/blacklist.conf##) 132 +* Monter ##/tmp## et ##/var/tmp## avec les options ##noexec,nosuid,nodev## 133 +* Utiliser des partitions séparées : ##/home##, ##/var##, ##/srv##, etc. 134 +* Activer la journalisation (##rsyslog##, ##logrotate##) 122 122 136 +----- 137 + 123 123 == Liens utiles == 124 -* [CIS Linux Benchmark](https://cisecurity.org) 125 -* [Debian Securing Manual](https://debian-handbook.info) 126 -* [ArchWiki: Hardening](https://wiki.archlinux.org/title/Security) 127 127 128 ---- 140 +* [[CIS Benchmarks>>https://www.cisecurity.org/cis-benchmarks]] 141 +* [[Manuel de sécurisation Debian>>https://www.debian.org/doc/manuals/securing-debian-manual/]] 142 +* [[ArchWiki : Security>>https://wiki.archlinux.org/title/Security]] 129 129 144 +----- 145 + 130 130 == Liens internes == 131 -* [[Retour à la section Tutos Linux>>Wiki Batcave John.TutosLinux]] 132 132 148 +* [[Retour à la section Tutos Linux>>doc:Wiki Batcave John.TutosLinux.WebHome]]