# Fail2ban et ipv6

**URL:** <https://www.debian-fr.org/t/fail2ban-et-ipv6/52906>\
**Category:** Trucs et Astuces\
**Created:** [Février 21, 2016, 11:43 UTC](https://www.debian-fr.org/t/fail2ban-et-ipv6/52906 "2016-02-21T11:43:35Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![lol](https://www.debian-fr.org/user_avatar/www.debian-fr.org/lol/32/15629_2.png) [@lol](https://www.debian-fr.org/u/lol)\
**Post date:** [Février 21, 2016, 11:43 UTC](https://www.debian-fr.org/t/fail2ban-et-ipv6/52906/1 "2016-02-21T11:43:35Z")

</div>

Salut,  
Comme j’ai activé l’ipv6 sur un de mes serveurs, je me suis naturellement penché sur la sécurité; J’ai été surpris de voir que fail2ban ne fonctionnait pas encore sur ipv6…  
Heureusement, il existe un patch. Il est EXPERIMENTAL…  
Je n’ai pas encore travaillé sur les autres services, seul la protection de ssh est abordée ici.

Vos commentaires et précisions sont les bienvenues!  
Petit article sur le Wiki au sujet de fail2ban et du support de l’ipv6: [0.isalo.org/5z](http://0.isalo.org/5z)

Avertissement… Je n’ai pas encore testé sur un serveur en production (Je n’ai pas d’IpV6 sur deux machines dans le même réseau…)

Voici le tuto:

Vous le savez, l’ipv6 se généralise, lancement officiel le 6 juin 2012 Quid de fail2ban ? Malheureusement, fail2ban ne supporte pas encore l’ipv6. Heureusement, il existe un patch qui permet d’avoir fail2ban activé sur votre ipv6…

Mode d’emploi:  
Téléchargez le patch:

[code]wget [http://thanatos.trollprod.org/sousites/fail2banv6/fail2ban-ipv6.tar.bz2](http://thanatos.trollprod.org/sousites/fail2banv6/fail2ban-ipv6.tar.bz2)  
–2012-04-14 09:30:31-- [http://thanatos.trollprod.org/sousites/fail2banv6/fail2ban-ipv6.tar.bz2](http://thanatos.trollprod.org/sousites/fail2banv6/fail2ban-ipv6.tar.bz2)  
Résolution de [thanatos.trollprod.org](http://thanatos.trollprod.org) ([thanatos.trollprod.org](http://thanatos.trollprod.org))… 94.23.14.97, 2001:41d0:2:f61::fed1:fe54  
Connexion vers [thanatos.trollprod.org](http://thanatos.trollprod.org) ([thanatos.trollprod.org](http://thanatos.trollprod.org))|94.23.14.97|:80…connecté.  
requête HTTP transmise, en attente de la réponse…200 OK  
Longueur: 2293 (2,2K) [application/x-bzip]  
Sauvegarde en : «fail2ban-ipv6.tar.bz2»

100%[=============================================================================================\>] 2 293 --.-K/s ds 0,001s

2012-04-14 09:30:31 (2,98 MB/s) - «fail2ban-ipv6.tar.bz2» sauvegardé [2293/2293][/code]

`mkdir fail2ban-ipv6
tar xvjf fail2ban-ipv6.tar.bz2 -C fail2ban-ipv6
cp /usr/share/fail2ban/server/filter.py /usr/share/fail2ban/server/filter.py.sos
cp /usr/share/fail2ban/server/failregex.py /usr/share/fail2ban/server/failregex.py.sos`

Testez les patch:

[code]cd /usr/share/fail2ban/server/  
root@nas:/usr/share/fail2ban/server# patch -p0 --dry-run \< /root/fail2ban-ipv6/patchfilter.patch  
patching file [filter.py](http://filter.py)  
Hunk #1 succeeded at 525 (offset 14 lines).  
Hunk #2 succeeded at 549 (offset 14 lines).  
Hunk #3 succeeded at 580 (offset 14 lines).

root@nas:/usr/share/fail2ban/server# patch -p0 --dry-run \< /root/fail2ban-ipv6/regex.patch  
patching file [failregex.py](http://failregex.py)  
Hunk #1 succeeded at 47 (offset 3 lines).[/code]  
Si le résultat est positif (pas d’erreur) lancez les patchs

`root@nas:/usr/share/fail2ban/server# patch -p0 < /root/fail2ban-ipv6/patchfilter.patch
patching file filter.py
Hunk #1 succeeded at 525 (offset 14 lines).
Hunk #2 succeeded at 549 (offset 14 lines).
Hunk #3 succeeded at 580 (offset 14 lines).
root@nas:/usr/share/fail2ban/server# patch -p0 < /root/fail2ban-ipv6/regex.patch 
patching file failregex.py
Hunk #1 succeeded at 47 (offset 3 lines).`  
Copiez les fichiers nécessaires:

`root@nas:/usr/share/fail2ban/server# cp /root/fail2ban-ipv6/ip64tables.sh /usr/bin/
root@nas:/usr/share/fail2ban/server# chmod 755 /usr/bin/ip64tables.sh
root@nas:/usr/share/fail2ban/server# cp /root/fail2ban-ipv6/iptables46-multiport.conf /etc/fail2ban/action.d/
root@nas:/usr/share/fail2ban/server# chmod 644 /etc/fail2ban/action.d/iptables46-multiport.conf`  
Créez le bloc de configuration:

`nano /etc/fail2ban/jail.conf
...
[ssh-ip6tables]
enabled = true
filter = sshd
logpath = /var/log/auth.log
maxretry = 6
action = iptables46-multiport[name=SSH, port=22, protocol=tcp]
           sendmail-whois[name=SSH, dest=root, sender=fail2ban@mail.com]
...`  
Redémarrez fail2ban et vérifiez qu’il est actif:

`service fail2ban restart
Restarting authentication failure monitor: fail2ban.
ip6tables -S
...
-N fail2ban-SSH
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-SSH
-A fail2ban-SSH -j RETURN`

[Source](http://www.fail2ban.org/wiki/index.php/Fail2ban:Community_Portal#IPv6_Experimental_support)

---

<div class="post-metadata">

**Author:** ![mazarini](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/6f9a4e/32.png) [@mazarini](https://www.debian-fr.org/u/mazarini)\
**Post date:** [Février 21, 2016, 2:07 UTC](https://www.debian-fr.org/t/fail2ban-et-ipv6/52906/2 "2016-02-21T14:07:09Z")

</div>

Bonjour,

J’avais constaté que mon serveur ne subissait jamais d’attaque ssh / ipv6. Comme ca me semblait très étonnant, j’ai fait une recherche et j’ai atterri ici.

Apparemment en 2013, ssh en ipv6 est activé par défaut, mais fail2ban ne le protège toujours pas par défaut. Comme quoi, on met plein de verrous sur une porte blindée et on laisse la fenêtre ouverte

---

<div class="post-metadata">

**Author:** ![lol](https://www.debian-fr.org/user_avatar/www.debian-fr.org/lol/32/15629_2.png) [@lol](https://www.debian-fr.org/u/lol)\
**Post date:** [Février 21, 2016, 2:07 UTC](https://www.debian-fr.org/t/fail2ban-et-ipv6/52906/3 "2016-02-21T14:07:40Z")

</div>

[quote=“mazarini”]Bonjour,  
J’avais constaté que mon serveur ne subissait jamais d’attaque ssh / ipv6. Comme ca me semblait très étonnant, j’ai fait une recherche et j’ai atterri ici.  
Apparemment en 2013, ssh en ipv6 est activé par défaut, mais fail2ban ne le protège toujours pas par défaut. Comme quoi, on met plein de verrous sur une porte blindée et on laisse la fenêtre ouverte[/quote]

Bien d’accord avec toi…  
Je n’ai activé ipv6 que sur le serveur Web, le reste est bloqué en attendant que fail2ban propose par défaut une protection sur ipv6

`ip6tables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p ipv6-icmp -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -j LOG
-A OUTPUT -p ipv6-icmp -j ACCEPT`

Apparemment il y a mieux que le patch, mais je n’ai pas encore essayé: [github.com/fail2ban/fail2ban/tr … dapter\_cmd](https://github.com/fail2ban/fail2ban/tree/_tent/ipv6_adapter_cmd)

---

<div class="post-metadata">

**Author:** ![PascalHambourg](https://www.debian-fr.org/user_avatar/www.debian-fr.org/pascalhambourg/32/5837_2.png) [@PascalHambourg](https://www.debian-fr.org/u/PascalHambourg)\
**Post date:** [Février 21, 2016, 2:07 UTC](https://www.debian-fr.org/t/fail2ban-et-ipv6/52906/4 "2016-02-21T14:07:52Z")

</div>

> [@mazarini](#):
>
> J’avais constaté que mon serveur ne subissait jamais d’attaque ssh / ipv6. Comme ca me semblait très étonnant

Pourquoi ce te semble-t-il étonnant ? IPv6 est encore très peu utilisé en général, et compte tenu de l’espace d’adressage gigantesque, scanner des blocs d’adresses IPv6 relève de la gageüre.

> [@mazarini](#):
>
> Comme quoi, on met plein de verrous sur une porte blindée et on laisse la fenêtre ouverte

Il ne faut rien exagérer. Le but principal de fail2ban n’est pas de protéger sshd (l’authentification forte est là pour ça) mais d’éviter de remplir les logs avec de nombreuses tentatives qui n’ont de toute façon aucune chance d’aboutir si tu utilises des mots de passes solides ou des clés.
