doc:formations:hebergement:serveur:proteger
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
doc:formations:hebergement:serveur:proteger [2022/07/26 16:11] – [portsentry: intercepter les tentatives de scan de ports] jeremie | doc:formations:hebergement:serveur:proteger [2024/02/19 18:56] (Version actuelle) – [Via le nouveau ufw] jeremie | ||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
====== Protéger ses serveurs ====== | ====== Protéger ses serveurs ====== | ||
+ | |||
+ | Voyez aussi: [[doc: | ||
En cas de compromission, | En cas de compromission, | ||
Ligne 127: | Ligne 129: | ||
Vous trouverez bien d' | Vous trouverez bien d' | ||
+ | |||
===== fail2ban en défense contre les accès "brute force" ===== | ===== fail2ban en défense contre les accès "brute force" ===== | ||
- | Les accès "brute force" sont des tentatives répétées d' | + | Pour SSH au moins, on recommande systématiquement l' |
- | ==== protéger SSH ==== | + | Il y a une [[doc:formations:hebergement:serveur:proteger:fail2ban|page dédiée]] à cet outil. |
- | + | ||
- | Pour SSH spécifiquement, | + | |
- | + | ||
- | C'est un système qui observe vos tentatives d' | + | |
- | + | ||
- | Par défaut il protège SSH sur son port 22, en analysant les abus et erreurs d' | + | |
- | + | ||
- | :!: si l' | + | |
- | < | + | |
- | + | ||
- | [ssh] | + | |
- | + | ||
- | enabled | + | |
- | port = 12345 | + | |
- | filter | + | |
- | logpath | + | |
- | maxretry = 6 | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | ==== Tentatives d' | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | Par exemple, pour protéger d' | + | |
- | + | ||
- | < | + | |
- | [Definition] | + | |
- | failregex = ^ \[error\] \d+#\d+: .*directory index.*forbidden.*, | + | |
- | ^ \[error\] \d+#\d+: .*Connection refused.*, client: < | + | |
- | + | ||
- | # On cherche à collecter les adresses IP des lignes suivantes: | + | |
- | # | + | |
- | # | + | |
- | + | ||
- | ignoreregex = | + | |
- | </ | + | |
- | + | ||
- | Le fichier d' | + | |
- | < | + | |
- | [nginx-forbidden] | + | |
- | enabled = true | + | |
- | filter = nginx-forbidden | + | |
- | port = http, | + | |
- | logpath = / | + | |
- | findtime = 60 | + | |
- | bantime = 2000 | + | |
- | maxretry = 4 | + | |
- | </ | + | |
- | + | ||
- | + | ||
- | Fail2ban permet de tester en amont la validité des règles, mais aussi d' | + | |
- | + | ||
- | < | + | |
- | fail2ban-client status nginx-forbidden | + | |
- | Status for the jail: nginx-forbidden | + | |
- | |- Filter | + | |
- | | |- Currently failed: 0 | + | |
- | | |- Total failed: | + | |
- | | `- File list: | + | |
- | `- Actions | + | |
- | |- Currently banned: 1 | + | |
- | |- Total banned: 2 | + | |
- | `- Banned IP list: | + | |
- | </ | + | |
Ligne 206: | Ligne 144: | ||
ss -tunlp|grep portsentry | ss -tunlp|grep portsentry | ||
- | Par défaut cet outil ne fait que logguer des événements dans le journal ''/ | + | Par défaut cet outil ne fait que logguer des événements dans le journal ''/ |
__Note__ je vous conseille d' | __Note__ je vous conseille d' | ||
Ligne 237: | Ligne 175: | ||
Il s'agit d'un système de configuration plus récent que iptables. Il est un peu moins répandu mais il est réputé un peu plus facile à l' | Il s'agit d'un système de configuration plus récent que iptables. Il est un peu moins répandu mais il est réputé un peu plus facile à l' | ||
+ | Exemple pour autoriser les clients 10.34.0.* à accéder au service web local: | ||
+ | |||
+ | ufw allow from 10.34.0.0/8 to 10.34.0.1 port 80 | ||
+ | |||
+ | Pour lister les règles '' | ||
==== Via un serveur filtrant amont ==== | ==== Via un serveur filtrant amont ==== | ||
doc/formations/hebergement/serveur/proteger.1658851904.txt.gz · Dernière modification : 2022/07/26 16:11 de jeremie