Fail2ban ist ein Tool zum Blocken von bestimmten IP Adressen, die sich Zugang zu Ihrem Root Server oder virtuellen Server verschaffen wollen. Nach einer vom Administrator bestimmten Anzahl an Fehlversuchen wird die IP automatisch für eine gewissen Zeit gesperrt. Die Sperrzeit kann der Administrator selbst festlegen. Der unberechtigte Zugriff und das Sperren von IP wird per Email, wenn eingerichtet, dem Administrator gemeldet. Zur Installation von Fail2ban sollte unter CentOS 5 EPEL installiert sein.
# rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
Danach beginnt das eigentliche Installieren von fail2ban:
# yum install fail2ban
zum Konfigurieren:
# nano /etc/fail2ban/jail.conf
Unter: ignoreip = 127.0.0.1 sollte man seine IP Adresse, von der aus man mit SSH zugreift, eintragen. So wird verhindert, dass man sich selber aussperrt. (nur durch Leerzeichen getrennt)
[DEFAULT]
# "ignoreip" can be an IP address, a CIDR mask or a DNS host. Fail2ban will not
# ban a host which matches an address in this list. Several addresses can be
# defined using space separator.
ignoreip = 127.0.0.1 xxx.xxx.xx.xx/24
Unter: bantime = 600bestimmt man die Zeit wie lange eine IP gesperrt werden soll. ( Zeit sind Min )
# "bantime" is the number of seconds that a host is banned.
bantime = 600
Unter: sendmail-whois[name=SSH, dest=Ihre@emailadresse.de, sender=fail2ban@mail.com] setzt man die Emailadresse ein, an die man bei einem eventuellen Ban informiert werden möchte
Unter: maxretry = 3 setzt man mit der Zahl die max. Versuche sich anzumelden bevor die IP Adresse geblockt werden soll.
[ssh-iptables]
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
sendmail-whois[name=SSH, dest=Ihre@emailadresse.de, sender=fail2ban@mail.com]
logpath = /var/log/secure
maxretry = 3
Wichtig:
will man weitere Service aktiveren muss bei jedem Service das false in true ändern
enabled = false auf true
Ausserdem ist bei:
[proftpd-iptables]
auf die Pfadeingabe /var/log/messages zu achten, falls [proftpd-iptables] protokolliert werden soll.
Nun muss der Dienst noch gestartet werden, bei einem Neustart des Root Server wird der Dienst dann automatisch mit gestartet:
# chkconfig --add fail2ban
# chkconfig fail2ban on
# service fail2ban start
Die Installation ist nun abgeschlossen.
Wenn Fail2ban nun eine IP Adresse bannt erhalten Sie eine Email mit ähnlichem Inhalt:
Hi,
The IP 221.7.xx.xx2 has just been banned by Fail2Ban after
3 attempts against SSH.
Here are more information about 221.7.11.112:
[Querying whois.apnic.net]
[whois.apnic.net]
% [whois.apnic.net node-1]
% Whois data copyright terms ……
Für Schäden übernehmen wir keine Haftung. Weitere Erklärungen finden Sie auf der offiziellen Seite von fail2ban.