Comment installer et configurer fail2ban

Bonjour

Suite réinstallation complète debian 11 puis jeedom, j’obtiens ce message au niveau des logs du cron

0003|2024-04-17 21:10:03,307 fail2ban                [18623]: ERROR   Failed to access socket path: /var/run/fail2ban/fail2ban.sock. Is fail2ban running?```

Merci par avance


Informations Jeedom

Core : 4.4.3 (V4-stable)
DNS Jeedom : non

Plugin : fail2ban
Version : 2024-04-10 01:13:32 (stable)

Bonjour,

:joy:

Et donc? Je ne peux pas répondre à la question, seul vous le pouvez!

La question est que puis je faire pour corriger ce problème ? :wink:

Mais… :upside_down_face:

Est-ce que fail2ban tourne?

C’est la question dans le log même si uniquement en anglais c’est clair quand même.

quand je tente un

sudo fail2ban-client status

j’obtiens la même erreur.

Du coup, comment savoir si fail2ban tourne ?

Merci

Est-ce que tu l’as installé et configuré?
Le plugin ne s’occupe pas de l’installation

Ah non, j’avais pas noté cette partie, je ne me rappelle pas l’avoir vu dans la doc.
J’ai juste fais une restauration sur une Debian propre.

Pourtant quand je tente une installation il me dit que c’est déjà installé…

fail2ban est déjà la version la plus récente (0.11.2-2)

et quand je tente

/etc/init.d/fail2ban start

je ne vois pas de changement

@Mips si tu as une idee je suis preneur

Ou si quelqu’un d’autre peut m’éclairer.

Merci par avance

Bonjour

Je vais essayé de répondre pour faire avancer ton problème:
Si je comprends bien tu as installé une Debian 11 toute fraîche puis tu as installé Jeedom.
Comme te le fait remarquer Monsieur Mips est ce que tu as installé fail2ban?, a priori oui puisque que lorsque tu l’a installé le système te répond que fail2ban est déjà dans la version la plus récente.

Comme Monsieur Mips te le signale il faut le configurer :

1- il faut lancer le daemon pour vérifier qu’il se lance bien :

systemctl start fail2ban

Vérifier le status du daemon :

systemctl status fail2ban
fail2ban.service - Fail2Ban Service
     Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled)
    Drop-In: /usr/lib/systemd/system/fail2ban.service.d
             └─override.conf
     Active: active (running) since Fri 2024-04-19 00:24:29 CEST; 38s ago
       Docs: man:fail2ban(1)
    Process: 128607 ExecStartPre=/bin/mkdir -p /run/fail2ban (code=exited, status=0/SUCCESS)
   Main PID: 128608 (fail2ban-server)
      Tasks: 11 (limit: 7072)
     Memory: 23.1M
        CPU: 310ms
     CGroup: /system.slice/fail2ban.service
             └─128608 /usr/bin/python3 /usr/bin/fail2ban-server -xf start

vérifier :Active: active (running) since Fri 2024-04-19 00:24:29 CEST; 38s ago

Si c’est ok fail2ban est opérationel.
Pour que le daemon démarre au reboot:

systemctl enable fail2ban

2- Les règles:
Le principe de fail2ban c’est de surveiller les logs des différents services et donc il faut paramétrer les services que l’on veut surveiller.
Sous Debian un service est paramétré par défaut c’est celui du serveur sshd.

Pour vérifier les services surveillés :

fail2ban-client status

résultat:

root@jeedom:/etc# fail2ban-client status
Status
|- Number of jail:	4
`- Jail list:	apache-botsearch, apache-noscript, apache-overflows, sshd
root@jeedom:/etc# 

Explication: 4 règles en service

Dans ton cas tu dois avoir 1 seule règle par défaut : sshd

Les 3 autres règles sont les règles spécifiques à Jeedom.

Le dossier des règles se trouvent ici:

root@jeedom:/etc/fail2ban/jail.d# ls
defaults-debian.conf  jeedom.conf

Le fichier defaults-debian.conf : règle par défaut de Debian concernant le serveur sshd
Le fichier jeedom.conf : le fichier de règle spécifique à Jeedom à créer

jeedom.txt (1,3 Ko)

Il faudra renommer le fichier en jeedom.conf

Vérifier les droits du fichier jeedom.conf par rapport au fichier defaults-debian.conf

root@jeedom:/etc/fail2ban/jail.d# ls -al
total 16
drwxr-xr-x 2 root root 4096  9 avril 23:57 .
drwxr-xr-x 6 root root 4096 30 janv. 23:45 ..
-rw-r--r-- 1 root root   22 12 juil.  2021 defaults-debian.conf
-rw-r--r-- 1 root root 1342  9 avril 23:57 jeedom.conf

Relancer le daemon:

systemctl stop fail2ban
systemctl start fail2ban
systemctl status fail2ban
fail2ban-client status

résultat:

root@jeedom:/etc# fail2ban-client status
Status
|- Number of jail:	4
`- Jail list:	apache-botsearch, apache-noscript, apache-overflows, sshd
root@jeedom:/etc# 

Je te conseille de faire un reboot de jeedom et de vérifier à nouveau que fail2ban est bien relancé avec les 4 règles.
FIN

Ajout : Je ne connais pas le plugin-fail2ban, je ne pourrais pas répondre à ce sujet.

3 « J'aime »

Merci pour ces indications, quand je fais une demande de status après avoir démarré, voici ce que j’obtiens.
J’ai fait mplsueurs recherche sur le net, mais je ne trouve pas la bonne solution…

root@Jeedom:/home/vincent# systemctl start fail2ban
root@Jeedom:/home/vincent# systemctl status fail2ban
● fail2ban.service - Fail2Ban Service
     Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled)
    Drop-In: /usr/lib/systemd/system/fail2ban.service.d
             └─override.conf
     Active: failed (Result: exit-code) since Sat 2024-04-20 14:54:12 CEST; 2s ago
       Docs: man:fail2ban(1)
    Process: 2782062 ExecStartPre=/bin/mkdir -p /run/fail2ban (code=exited, status=0/SUCCESS)
    Process: 2782063 ExecStart=/usr/bin/fail2ban-server -xf start (code=exited, status=255/EXCEPTION)
   Main PID: 2782063 (code=exited, status=255/EXCEPTION)
        CPU: 162ms

avril 20 14:54:12 Jeedom systemd[1]: Starting Fail2Ban Service...
avril 20 14:54:12 Jeedom systemd[1]: Started Fail2Ban Service.
avril 20 14:54:12 Jeedom fail2ban-server[2782063]: 2024-04-20 14:54:12,912 fail2ban                [2782063]: ERROR   Failed during configuration: Have not found any log file for apache-noscript jail
avril 20 14:54:12 Jeedom fail2ban-server[2782063]: 2024-04-20 14:54:12,914 fail2ban                [2782063]: ERROR   Async configuration of server failed
avril 20 14:54:12 Jeedom systemd[1]: fail2ban.service: Main process exited, code=exited, status=255/EXCEPTION
avril 20 14:54:12 Jeedom systemd[1]: fail2ban.service: Failed with result 'exit-code'.
root@Jeedom:/home/vincent# 

La config est incorrecte.

Il faut que tu dises ce que tu as fais comme config pour que quelqu’un sache peut-être t’aider.

En reprenant la config d’@echo, j’ai réussi à m’en sortir.
Merci à tous les deux

Bonjour

Quelques conseils d’ami:

Essaye d’être plus précis dans tes réponses « quand je fais une demande de status après avoir démarré »
Tu as démarré quoi ?

Si cela fonctionne explique nous en résumé ce que tu as fait pour arriver au résultat, c’est intéressant pour tout le monde et pour moi qui a passé du temps pour tout expliqué et pour Mips qui modère le forum et qui passe énormément de temps à répondre à tout le monde.

Sur fail2ban il y a énormément de ressources sur internet qui explique la mise en place.

Jeedom est basé sur Linux Debian, il faut se former à Linux et se former à systemd qui gère les daemon ( services). Il y a un vieille adage dans le monde Linux c’est « Read the fuck manual ».

Cordialement.

3 « J'aime »

En fait il semble que lors de l’installation Debian aucune regle nexistait.
J’ai donc créé les regles comme tu l’as expliqué.
Ca a fonctionné.

Faut que je regarde encore comment les afiner.

Encore merci

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.