« Protéger son serveur des attaques par brute force avec fail2ban » : différence entre les versions

Aller à la navigation Aller à la recherche
aucun résumé des modifications
Aucun résumé des modifications
 
(9 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
[[Category:serveur]]
[[Category:serveur]]
[[Category:debian]]
[[Category:debian]]
[[Category:security]]
Fail2ban est un petit outil qui permet de surveiller les erreurs d'authentification répétée dans les fichiers logs de plusieurs services. Après un nombre défini d'authentification ratée, fail2ban banni temporairement l'ip ayant essayé de se loguer.
Fail2ban est un petit outil qui permet de surveiller les erreurs d'authentification répétée dans les fichiers logs de plusieurs services. Après un nombre défini d'authentification ratée, fail2ban banni temporairement l'ip ayant essayé de se loguer.


Ligne 24 : Ligne 25 :
maxretry = 3
maxretry = 3


destemail = CSNU-security@list.csnu.org
destemail = security@list.domain.tld


action = %(action_mwl)s
action = %(action_mwl)s
Ligne 33 : Ligne 34 :
=Faire tourner fail2ban en tant qu'utilisateur plutot que root=
=Faire tourner fail2ban en tant qu'utilisateur plutot que root=


Pour cela il faut avoir au moins la version <code>0.8.6-3wheezy</code> de fail2ban.
<pre>aptitude install fail2ban sudo</pre>


<pre>aptitude install fail2ban sudo</pre>
==Si vous êtes sous debian squeeze==
Modifiez le fichier <code>/etc/init.d/fail2ban</code> : localisez la ligne contenant <code>start-stop-daemon</code> et modifiez comme suit (on ajoute 3 lignes et on modifie l'option du --chuid de la ligne start-stop-daemon) :
<pre>
        chown fail2ban /var/run/fail2ban
        touch /var/log/fail2ban.log
        chown fail2ban /var/log/fail2ban.log


Créez l'utilisateur :
        start-stop-daemon --start --quiet --chuid fail2ban --exec $DAEMON -- \
<pre>useradd --system --no-create-home --home-dir / --groups adm fail2ban</pre>
</pre>


==Si vous êtes sous debian wheezy ou jessie==
Modifiez <code>/etc/default/fail2ban</code> :
Modifiez <code>/etc/default/fail2ban</code> :
<pre>FAIL2BAN_USER="fail2ban"</pre>
<pre>FAIL2BAN_USER="fail2ban"</pre>
==Suite quelque soit votre distribution==
Créez l'utilisateur :
<pre>useradd --system --no-create-home --home-dir / --groups adm fail2ban
chown fail2ban /var/log/fail2ban.log
</pre>


Modifiez <code>/etc/logrotate.d/fail2ban</code> :
Modifiez <code>/etc/logrotate.d/fail2ban</code> :
Ligne 58 : Ligne 72 :
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -n -L INPUT
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -n -L INPUT


#debian wheezy/squeeze
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -I fail2ban-[A-Za-z0-9]* 1 -s * -j DROP
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -I fail2ban-[A-Za-z0-9]* 1 -s * -j DROP
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -D fail2ban-[A-Za-z0-9]* -s * -j DROP
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -D fail2ban-[A-Za-z0-9]* -s * -j DROP
#debian jessie
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -I fail2ban-[A-Za-z0-9]* 1 -s * -j REJECT --reject-with icmp-port-unreachable
fail2ban ALL=(root) NOPASSWD:/sbin/iptables -I fail2ban-[A-Za-z0-9]* 1 -s * -j REJECT --reject-with icmp-port-unreachable
</pre>
</pre>
<pre>chmod 0440 /etc/sudoers.d/fail2ban</pre>


Enfin, modifiez le fichier <code>/etc/fail2ban/action.d/iptables-multiport.conf</code> en remplaçant toutes les occurences à <code>iptables</code> par <code>sudo iptables</code>
Enfin, modifiez le fichier <code>/etc/fail2ban/action.d/iptables-multiport.conf</code> en remplaçant toutes les occurences à <code>iptables</code> par <code>sudo iptables</code>
Ligne 66 : Ligne 87 :
Ajoutez un alias pour l'utilisateur iptables :
Ajoutez un alias pour l'utilisateur iptables :
<pre>
<pre>
echo fail2ban: root >> /etc/aliases
echo fail2ban:root >> /etc/aliases
postalias /etc/aliases</pre>
postalias /etc/aliases</pre>
4 203

modifications

Menu de navigation