Outils pour utilisateurs

Outils du site


securite:simpleban

SimpleBan: une alternative à «fail2ban» compatible IPv6

  • Mise en place des dépendances:
apt-get install task-spooler logtail

iptables -N BANNED ; iptables -I INPUT -j BANNED
ip6tables -N BANNED ; ip6tables -I INPUT -j BANNED

iptables -N BANNED ; iptables -I OUTPUT -j BANNED
ip6tables -N BANNED ; ip6tables -I OUTPUT -j BANNED
  • Télécharger l'archive, extraire son contenu, et lancer le script d'installation:
wget -O simpleban.tgz https://dokuwicri.univ-reims.fr/wiki/lib/exe/fetch.php?media=public:projets:simpleban:simpleban.tgz
tar -xzf simpleban.tgz
cd simpleban
./install.sh
  • Configurez SimpleBan
  • Mettre en place la planification dans crontab

Exemples

  • Fichier de configuration principal:
/etc/sban.cf
#################################################################
#                                                               #
#                   !!!!! ATTENTION !!!!!                       #
#                                                               #
#   Declarez TOUTES les variables avec des 'simples quotes' !   #
#                                                               #
#################################################################
 
# Fichier de configuration principal: parametres par defaut.
# Ils peuvent etre surcharges individuellement pour chaque
# filtre.
 
#################################################################
# Commandes
 
# Netfilter
# Les appels sont serialises avec task-spooler
# => permet d'eviter les "race-condition".
IPT4='/usr/bin/tsp -nf /sbin/iptables'
IPT6='/usr/bin/tsp -nf /sbin/ip6tables'
 
# Commande de recherche (greg "PCRE", "extended", ...)
#SEARCH_CMD='/bin/grep -P'
SEARCH_CMD='/bin/grep -E'
 
# Commande d'extraction
EXTRACT_CMD='/bin/sed'
 
#################################################################
 
# Seuil de declenchement (nombre d'echecs entre chaque execution).
# Periode de recherche = periode de planification (crontab).
MAX_FAILURES='10'
 
# Duree du blocage (en minutes)
DURATION='5'
 
# Chaine netfilter (IPv4 et IPv6)
# Cette chaine devrait etre mise en place en tete des chaines
# INPUT, OUTPUT (eventuellement FORWARD), juste avant la
# regle "RELATED,ESTABLISHED".
CHAIN='BANNED'
 
# Liste blanche => ne pas bloquer ces adresses IPv4 / IPv6
WHITELIST='192.168.1.5,10.1.50.13,200a:560:3602:1200:0:a73:c1b9:1531'
 
# Listes des filtres a executer. Les fichiers de configuration doivent
# etre places dans le repertoire '/etc/sban/filters'.
# FILTERS='perdition,postfix,sshd'
FILTERS='perdition,postfix'
  • Filtre pour Perdition:
/etc/sban/filters/perdition.cf
# Perdition (authentification)
 
LOG='/var/log/perdition/perdition.log'
 
SEARCH=': Auth: .*status="failed.*'
EXTRACT='s/^.*: Auth: // ; s/->.*// ; s/:[0-9]*$//'
 
ACTION_IN='-j DROP'
ACTION_OUT='-j DROP'
  • Filtre pour Postfix:
/etc/sban/filters/postfix.cf
# Postfix (authentification)
 
LOG='/var/log/postfix/postfix.log'
 
SEARCH=': warning: .* authentication failed: '
EXTRACT='s/^.*: warning: // ; s/.*\[// ; s/\].*$//'
 
ACTION_IN='-j DROP'
ACTION_OUT='-j DROP'
securite/simpleban.txt · Dernière modification: 03/02/2016 par laurent