Wie richte ich die Überwachung von MySQL mit Fail2ban ein?

13

Das Durchsuchen des Internets mit Suchmaschinen auf MySQL und fail2ban führt zu zahlreichen Ergebnissen beim Einfügen Ihrer fail2ban-Protokolle in MySQL. Ich möchte jedoch fehlgeschlagene MySQL-Anmeldeversuche überwachen und diese IPs sperren.

Meine Anwendung erfordert, dass ich einen Port für MySQL offen halte, obwohl ich den Standardport aus Sicherheitsgründen geändert habe. Aus Sicherheitsgründen möchte ich die MySQL-Protokolle mit fail2ban überwachen.

Hat jemand eine Kurzanleitung zur Konfiguration von fail2ban für MySQL? Ich habe es bereits installiert und arbeite an einigen anderen Diensten, so dass Sie den Installationsteil überspringen und direkt zur Konfiguration der Konfigurationsdatei oder was auch immer notwendig ist, springen können.

InvisibleFrisbee
quelle

Antworten:

6

Diesem Typ zufolge ( http://forums.mysql.com/read.php?30,205612,205612 ) ist das, was Sie versuchen, nicht möglich.

Außerdem: «Die Verwendung von mysql.log wird als Leistungsmörder beschrieben, und ich habe gehört, dass es in den nächsten Mysql-Versionen überholt sein sollte. »

Ich habe dasselbe gesucht. Es wird empfohlen, den 3306-Port Ihrer Firewall zu blockieren. Wenn es keine Option ist, dann viel Glück.

moebius_eye
quelle
4

Sie können die MySQL-Protokollierung aktivieren:

[mysqld]
log = /var/log/mysql/access.log
log_error = /var/log/mysql/error.log
log_warnings = 2

so dass Kommunikationsfehler im Protokoll auftauchen und diese Datei dann mit fail2ban überwachen.

http://dev.mysql.com/doc/refman/5.1/en/communication-errors.html

Jure1873
quelle
Wichtiges Detail: Wenn Sie MySQL 5.6 oder höher verwenden, müssen Sie Fail2ban 0.9.4 oder höher verwenden. Im Moment ist es in der EPEL-Test-Repo:yum install fail2ban --enablerepo=epel-testing
Maliayas
1

Dies ist meine Konfiguration in Debian 8 und sie funktioniert einwandfrei. Außerdem möchte ich, dass Sie sich ein Skript ansehen, das ich erstellt habe, um diese Anmeldefehler in der MySQL-Datenbank mit dem Speicherort der IPs zu registrieren.

https://elayo.mx/registrar-ataques-fail2ban-con-geolocalizacion-en-mysql/

[mysqld-auth]

enabled = true
filter   = mysqld-auth
port     = 3306
logpath  = /var/log/mysql/error.log
elayo
quelle