You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2018-05-30 15:49:57

curumo29
Guest
Registered: 2018-05-30
Posts: 4

GLPI et Fail2Ban

Bonjour à toutes et à tous,

Après avoir installé GLPI et son plugin FusionInventory, je cherche maintenant à mettre en place différentes sécurités sur mon serveur.

Pour cela, j'ai installé Fail2ban afin de bannir différents attaquants sur mon serveur : la prison SSH fonctionne parfaitement mais la prison que j'ai créé pour GLPI ne fonctionne absolument pas, je m'explique :

Dans un premier temps, je mets en place la prison pour GLPI :

[email protected]:~# cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
[email protected]:~# nano /etc/fail2ban/jail.local

Et je rajoute les lignes suivantes à la fin :

[glpi]
enabled = true
filter = glpi
port = http,https
logpath = /var/www/glpi/files/_log/event.log
maxretry = 3

Ensuite, je crée le filtre qui m'intéresse (afin de repérer les lignes d'échec de connexion au GLPI) :

[email protected]:~# nano /etc/fail2ban/filter.d/glpi.conf
[INCLUDES]
before = apache-common.conf
[Definition]
failregex = Connexion échouée de \w+ depuis l\’IP <HOST>
ignoreregex =

Je redémarre le service :

[email protected]:~# fail2ban-client reload

Puis je tente de voir ce qui est pris en compte :

[email protected]:~# fail2ban-regex /var/www/glpi/files/_log/event.log /etc/fail2ban/filter.d/glpi.conf /etc/fail2ban/filter.d/glpi.conf

Running tests
=============

Use ignoreregex file : /etc/fail2ban/filter.d/glpi.conf
Use   failregex file : /etc/fail2ban/filter.d/glpi.conf
Use         log file : /var/www/glpi/files/_log/event.log


Results
=======

Failregex: 0 total

Ignoreregex:  total

Date template hits:
|- [# of hits] date format
|  [26] Year-Month-Day Hour:Minute:Second
`-

Lines: 52 lines, 0 ignored, 0 matched, 52 missed
Missed line(s): too many to print.  Use --print-all-missed to print all 52 lines

On peut voir qu'aucune ligne n'a "matché" avec mon expression. On va donc essayé avec le ignoreregex.
Pour cela, je recopie le regex de "failregex" dans "ignoreregex" :

[email protected]:~# nano /etc/fail2ban/filter.d/glpi.conf
[INCLUDES]
before = apache-common.conf
[Definition]
failregex = 
ignoreregex = Connexion échouée de \w+ depuis l\’IP <HOST>

Puis je redémarre le service :

[email protected]:~# fail2ban-client reload

Et je réessaye le même test qu'auparavant :

[email protected]:~# fail2ban-regex /var/www/glpi/files/_log/event.log /etc/fail2ban/filter.d/glpi.conf /etc/fail2ban/filter.d/glpi.conf

Running tests
=============

Use ignoreregex file : /etc/fail2ban/filter.d/glpi.conf
Use   failregex file : /etc/fail2ban/filter.d/glpi.conf
Use         log file : /var/www/glpi/files/_log/event.log


Results
=======

Failregex: 0 total

Ignoreregex: 20 total
|-  #) [# of hits] regular expression
|   1) [20] Connexion échouée de \w+ depuis l\'IP <HOST>
`-

Date template hits:
|- [# of hits] date format
|  [26] Year-Month-Day Hour:Minute:Second
`-

Lines: 52 lines, 20 ignored, 0 matched, 32 missed
Ignored line(s): too many to print.  Use --print-all-ignored to print all 20 lines
Missed line(s): too many to print.  Use --print-all-missed to print all 32 lines

On peut voir que dans le cas du ignoreregex, il prend bien en compte mes 20 lignes de connexions échouées. Dans le cas du failregex, il en avait pris 0 en compte.

J'espère que l'un d'entre vous à une solution pour palier à cela et vous souhaite une bonne journée.

Cordialement,
curumo29

Last edited by curumo29 (2018-06-04 13:55:06)


Debian 8.10 / PHP 5.6.33 / GLPI 9.2.3 / Fusion Inventory 9.2+2.0

Offline

#2 2018-06-04 14:56:43

curumo29
Guest
Registered: 2018-05-30
Posts: 4

Re: GLPI et Fail2Ban

Le test a été fait sous Debian 8.10, j'ai donc cherché à refaire la même chose sous Debian 9 et cela a fonctionné...
Si quelqu'un sait pourquoi ça ne fonctionne pas sous Debian 8, ça serait cool.


Debian 8.10 / PHP 5.6.33 / GLPI 9.2.3 / Fusion Inventory 9.2+2.0

Offline

Board footer

Powered by FluxBB