📡 Fail2Ban Discord Alert
Ein Python-basiertes Monitoring-Tool, das automatisch IP-Sperren aus der fail2ban.log
erkennt und sie mit Länderflagge und Geodaten in Echtzeit an einen Discord-Webhook sendet.
🔧 Features
- ✅ Überwachung von
/var/log/fail2ban.log
in Echtzeit - 🛡️ Versand von Discord-Embed-Nachrichten bei neuen IP-Bans
- 🌍 Geo-IP-Lookup mit Ländererkennung via ipapi.co
- 🇩🇪🇺🇸 Automatische Anzeige von Länderflaggen im Embed
- 🧠 SQLite-Datenbank zur Vermeidung doppelter Benachrichtigungen
- 📁
.env
-Konfigurationsdatei für sicheren Webhook-Zugriff - 🧰 Automatischer Systemd-Service für dauerhaftes Monitoring
📦 Voraussetzungen
- Linux mit systemd
- Python 3.6+
- Zugriff auf
/var/log/fail2ban.log
- Funktionierender Fail2Ban-Dienst
- Ein Discord-Webhook-Link
⚙️ Dateien im Projekt
Datei | Funktion |
---|---|
fail2ban_discord.py |
Hauptmonitor-Skript |
.env |
Webhook-Konfiguration (wird befüllt) |
requirements.txt |
Python-Abhängigkeiten |
install_fail2ban_discord.sh |
Installationsskript inkl. systemd-Anbindung |
bans.db |
SQLite-Datenbank für verarbeitete IPs |
🔁 Service-Verwaltung
# Status prüfen
systemctl status fail2ban_discord_alert.service
# Dienst starten/stoppen
sudo systemctl start fail2ban_discord_alert.service
sudo systemctl stop fail2ban_discord_alert.service
🧪 Test-Webhook erneut senden
curl -H "Content-Type: application/json" \
-X POST \
-d '{"content": "✅ Testnachricht vom Fail2Ban Discord Alert!"}' \
"$(grep DISCORD_WEBHOOK_URL .env | cut -d '=' -f2)"
📄 Lizenz
MIT License – frei verwendbar, auch in kommerziellen Umgebungen.
Description
📡 Fail2Ban Discord Alert
Fail2Ban Discord Alert ist ein Python-basiertes Monitoring-Tool, das automatisch IP-Sperren aus der fail2ban.log überwacht und sie in Echtzeit als strukturierte Discord-Webhook-Nachricht versendet.
🔍 Funktionen
Überwacht fail2ban.log kontinuierlich auf neue Bans
Versendet Discord-Embed-Nachrichten mit Jail, IP-Adresse und Herkunftsland
Integriert Geo-IP-Abfrage (🇩🇪🇺🇸 etc.) über ipapi.co mit Flaggen-Emoji
Speichert gebannte IPs in SQLite zur Vermeidung doppelter Meldungen
.env-Konfiguration & Python-Virtualenv
Systemd-Service zur dauerhaften Ausführung auf Linux-Systemen
🎯 Zielgruppe
Admins und Entwickler, die ihre Fail2Ban-Aktivitäten übersichtlich und sofort auf Discord erhalten möchten.
Languages
Python
54.8%
Shell
45.2%