Page 1 sur 3

Fail2ban, configuration

Publié : 26 janv. 2023, 11:59
par samourai47
Hello
J'ai installé fail2ban avec la config suivantes. j'ai l'impression que cela fonctionne car limité à 3 , les logs n'affichent le plus souvent que 2 tentatives. PAr exemple

Code : Tout sélectionner

 2023-01-24 20:27:27.000 Error: Error parsing http request address: ::ffff:164.90.202.249
2023-01-24 20:27:27.059 Error: Error parsing http request address: ::ffff:164.90.202.249 
Mais de temps en temps il y a semble t il un "echappement"....

Code : Tout sélectionner

 2023-01-25 22:44:11.136 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:11.679 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:12.265 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:12.783 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:13.331 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:13.907 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:14.385 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:16.576 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:17.111 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:17.642 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:18.112 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:18.641 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:19.228 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:19.746 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:20.247 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:20.729 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:21.896 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:22.359 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:22.851 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:23.332 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:23.956 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:24.516 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:25.046 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:25.522 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:26.118 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:26.623 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:27.101 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:27.559 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:28.066 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:28.549 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:29.038 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:29.564 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:30.038 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:30.668 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:31.134 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:31.595 Error: Error parsing http request address: ::ffff:147.182.146.230
2023-01-25 22:44:32.079 Error: Error parsing http request address: ::ffff:147.182.146.230 
Pouvez vous me confirmer si ma config est bonne et surtotu comment bien m'assurer que fail2 ban est bien operationnel
Merci
/etc/fail2ban/jail.local

Code : Tout sélectionner

[domoticz]
enabled = true
port = 443,8080
filter = domoticz
logpath = /tmp/domoticz.txt
maxretry = 3
findtime = 3600
Pour le /etc/fail2ban/jail.conf

Code : Tout sélectionner

# "ignoreip" can be a list of IP addresses, CIDR masks or DNS hosts. Fail2ban
# will not ban a host which matches an address in this list. Several addresses
# can be defined using space (and/or comma) separator.
ignoreip = 127.0.0.1/8 192.168.0.1/24 ::1

# External command that will take an tagged arguments to ignore, e.g. <ip>,
# and return true if the IP is to be ignored. False otherwise.
#
# ignorecommand = /path/to/command <ip>
ignorecommand =

# "bantime" is the number of seconds that a host is banned.
bantime  = 10m

# A host is banned if it has generated "maxretry" during the last "findtime"
# seconds.
findtime  = 10m

# "maxretry" is the number of failures before a host get banned.
maxretry = 5
Sacahnt que je suis derriere un nginx pour utiliser une adresse duckdns

Merci

Re: Fail2ban, configuration

Publié : 29 janv. 2023, 09:51
par Neutrino
Perso j'ai juste suivi le wiki :
https://www.domoticz.com/wiki/Setup_fail2ban

Mais dans le filtre, j'ai

Code : Tout sélectionner

failregex = Error: Failed login attempt from <HOST> for user '.*' !
              Error: Failed login attempt from <HOST> for '.*' !
              Error: Error parsing http request address: ::ffff:<HOST>
              Error: \[web:8080\] Failed authentication attempt, ignoring client request \(remote address: <HOST>\)
              Error: \[web:80\] Failed authentication attempt, ignoring client request \(remote address: <HOST>\)
              Error: \[web:443\] Failed authentication attempt, ignoring client request \(remote address: <HOST>\)
Et je viens de voir que j'ai actuellement 17 ip de bannies :)
Je bloque dès la 1ère tentative échouée et pour toujours.

Re: Fail2ban, configuration

Publié : 30 janv. 2023, 09:20
par samourai47
hello
Je viens de rajouter les 2 lignes que je n'avais pas dans mon fichier
Relancé le tout...

SI je tape

Code : Tout sélectionner

sudo fail2ban-client status domoticz
Status for the jail: domoticz
|- Filter
|  |- Currently failed: 0
|  |- Total failed:     0
|  `- File list:        /tmp/domoticz.txt
`- Actions
   |- Currently banned: 0
   |- Total banned:     0
   `- Banned IP list:
Je n'ai rien de banni. Peut etre la modification

J'attends et je surveille
Meri pour le coup de main

Re: Fail2ban, configuration

Publié : 31 janv. 2023, 08:56
par samourai47
Hello
Bon depuis hier je n'ai pas de traces d'ip non bloquees comme auparavant.
donc ca m'a l'air de fonctionner
PAr contre en tapant

Code : Tout sélectionner

tail -20 /var/log/fail2ban.log
j'ai une partie des msg qui me signale une erreur

Code : Tout sélectionner

2023-01-30 09:10:31,947 fail2ban.filter         [16495]: INFO      findtime: 3600
2023-01-30 09:10:31,948 fail2ban.actions        [16495]: INFO      banTime: 600
2023-01-30 09:10:31,953 fail2ban.jail           [16495]: INFO    Jail 'sshd' started
2023-01-30 09:10:31,955 fail2ban.jail           [16495]: INFO    Jail 'domoticz' started
2023-01-30 09:13:32,177 fail2ban.transmitter    [16495]: WARNING Command ['get', 'sshd', 'banip'] has failed. Received Exception('Invalid command (no get action or not yet implemented)')
2023-01-30 09:13:49,743 fail2ban.transmitter    [16495]: WARNING Command ['get', 'sshd', 'banip'] has failed. Received Exception('Invalid command (no get action or not yet implemented)')
2023-01-30 12:10:30,604 fail2ban.filter         [16495]: INFO    [domoticz] Found 144.126.196.74 - 2023-01-30 12:10:30
2023-01-30 12:10:30,617 fail2ban.filter         [16495]: INFO    [domoticz] Found 144.126.196.74 - 2023-01-30 12:10:30
2023-01-30 15:13:51,280 fail2ban.filter         [16495]: INFO    [domoticz] Found 172.105.128.12 - 2023-01-30 15:13:51
2023-01-30 15:33:36,814 fail2ban.filter         [16495]: INFO    [domoticz] Found 35.229.49.232 - 2023-01-30 15:33:36
2023-01-30 20:53:05,001 fail2ban.filter         [16495]: INFO    [domoticz] Found 66.240.205.34 - 2023-01-30 20:53:04
2023-01-30 22:48:02,351 fail2ban.filter         [16495]: INFO    [domoticz] Found 162.243.133.14 - 2023-01-30 22:48:02
2023-01-30 23:44:05,989 fail2ban.filter         [16495]: INFO    [domoticz] Found 143.198.90.213 - 2023-01-30 23:44:05
2023-01-30 23:44:06,422 fail2ban.filter         [16495]: INFO    [domoticz] Found 143.198.90.213 - 2023-01-30 23:44:06
2023-01-31 01:00:47,831 fail2ban.filter         [16495]: INFO    [domoticz] Found 198.235.24.183 - 2023-01-31 01:00:47
2023-01-31 01:28:23,225 fail2ban.filter         [16495]: INFO    [domoticz] Found 194.165.16.11 - 2023-01-31 01:28:23
2023-01-31 01:28:23,225 fail2ban.filter         [16495]: INFO    [domoticz] Found 194.165.16.11 - 2023-01-31 01:28:23
2023-01-31 02:11:13,924 fail2ban.filter         [16495]: INFO    [domoticz] Found 181.214.167.241 - 2023-01-31 02:11:13
2023-01-31 04:03:21,925 fail2ban.filter         [16495]: INFO    [domoticz] Found 170.64.172.144 - 2023-01-31 04:03:21
2023-01-31 04:03:22,629 fail2ban.filter         [16495]: INFO    [domoticz] Found 170.64.172.144 - 2023-01-31 04:03:22
Y a un truc que je n'ai pas installe? Bizarre
Merci du coup de main

Re: Fail2ban, configuration

Publié : 01 févr. 2023, 09:57
par samourai47
en effet après cette modif je n'ai plus depuis 2 jours de longues tentatives de connexion
2 max...

Merci

Re: Fail2ban, configuration

Publié : 02 févr. 2023, 18:09
par lost
Comme je vois un sujet fail2ban, à lire vos logs j'ai un warning que vous ne semblez pas avoir:

Code : Tout sélectionner

fail2ban.filter (...): WARNING [domoticz] Simulate NOW in operation since found time has too large deviation...
fail2ban.filter (...): WARNING [domoticz] Please check jail has possibly a timezone issue. Line with odd timestamp...
Cela n'empêche, quand cela se produit, un ban éventuel. Mais visiblement fail2ban m'avertit que les timestamp dans les logs domoticz sont parfois très en retard (il semble tilter au delà de 60s) sur l'heure système réelle au moment ou fail2ban les examine.

C'est là pour alerter que le ban pourrait en conséquence manquer de réactivité vs les tentatives de bruteforce.

Je me demande si quelques réglages persos niveau mémoire virtuelle, afin de mieux utiliser leurs caches/regrouper les écritures au bénéfice de la réactivité d'ensemble et de la durée de vie de la carte SD, n'est pas en cause même si je ne pensais pas que cela puisse être le cas pour 2 process tournant sur le même système.

Mon /etc/sysctl.conf a ces lignes ajoutées:

Code : Tout sélectionner

vm.dirty_ratio=60
vm.dirty_expire_centisecs=120000
Le dirty_expire_centisecs passe en particulier de 3s à 120s, permettant de regrouper beaucoup de petites écritures très préjudiciables pour l'usure de la SD (si le ratio de 60% de la mémoire dédiée à ce cache n'est pas atteint avant ce temps). Le risque étant alors de perdre 2mn d'écritures au lieu de 3sec en cas de perte d'alimentation par exemple, mais mon PI est sur batterie.

Si vous n'avez pas ces messages, je referais qq tests en baissant de 120s à 50, en dessous des 60 qui font tilter fail2ban. dommage qu'a ma connaissance on ne puisse régler cela par type de FS ou point de montage: Je pourrais laisser les tmpfs en ram aux 3 secondes par défaut et laisser les 2mn a ce qui est sur la SD.

Fail2ban, configuration

Publié : 26 sept. 2023, 15:35
par pierrotori
Je viens d’installer fai2ban en container docker et quand je simule une attaque de mon tel je reçois une alerte comme quoi l’ip est bannie pendant 10m sauf que quand je me reconnecte en https avec la même ip il accepte l’affichage de la page web et la connexion
tu as quoi comme comportement ?

Re: Fail2ban, configuration

Publié : 27 sept. 2023, 09:48
par lost
Je n'utilise aucun conteneur. Je considère que hors de ces cas d'usage cela n'a pas de sens:
-Applicatif qui ne soit pas de confiance.
-Applicatif très ancien qu'on ne sait plus maintenir (voir dont on aurait perdu les sources) avec des dépendances hors d'âge.

Hélas, un nouveau cas d'usage arrive de plus en plus:
-Applicatif de confiance et maintenu, mais codé cochon avec des trop de dépendances qui auraient pu être évitées et qui relèvent d'un alignement des planètes pour tomber en marche sans utiliser de conteneurs: Zwavejs en est un remarquable exemple hélas.

Là je pense que l'on a fail2ban qui fait très logiquement un ban... dans son conteneur! Super utile...

Re: Fail2ban, configuration

Publié : 27 sept. 2023, 10:11
par pierrotori
il bannit bien l'ip sur le host avec le statut reject dans mon cas
si toi tu l'utilises sans container des que l'ip est bannie tu as une erreur 404 ?
dans le container

Code : Tout sélectionner

Status for the jail: domoticz
|- Filter
|  |- Currently failed: 0
|  |- Total failed:     2
|  `- File list:        /remotelogs/domoticz/domoticz.log
`- Actions
   |- Currently banned: 1
   |- Total banned:     1
   `- Banned IP list:   92.184.99.175
et sur le host

Code : Tout sélectionner

sudo iptables-legacy -L'
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
f2b-domoticz  tcp  --  anywhere             anywhere             multiport dports https,8443

Chain f2b-domoticz (1 references)
target     prot opt source               destination
REJECT     all  --  92-184-99-175.mobile.fr.orangecustomers.net  anywhere             reject-with icmp-port-unreachable
RETURN     all  --  anywhere             anywhere

Re: Fail2ban, configuration

Publié : 27 sept. 2023, 12:02
par lost
Même pas: Un 404 serait renvoyé par le serveur http(s) ne pouvant/voulant donner accès à une ressources (inexistante/bloquée...).

Ici le blocage devrait intervenir avant, niveau FW. Le serveur web de domoticz ne risque dès lors pas de voir venir la queue d'une trame pour renvoyer quelque erreur que ce soit...

Ici cela semble fonctionner mais AMHA, sans compréhension de comment le réseau fonctionne entre conteneurs et OS hôte: Un bridge au niveau 2 fera l'aiguillage en dessous d'un iptables au niveau 3... Il y a sans doute moyen de faire des noeuds là dedans (et au cerveau) et violer le modèle en couche (après celui du concept de conteneur) pour faire un aller retour 2/3/2 et avoir un filtrage effectif niveau conteneur, mais franchement il faut aimer les emmerdements et personnellement je ne suis pas assez calé sur le sujet!

https://xkcd.com/2259/