Fail2ban ntfy.sh update
I use the following script to get a daily update about my fail2ban jails.
#!/bin/bash
NTFY_ENDPOINT="https://ntfy.sh/<YOUR-ENDPOINT-HERE>"
TITLE="Fail2ban daily stats"
JAILS=$(fail2ban-client status | grep "Jail list" | sed -E 's/`- Jail list://g' | cut -d ',' --output-delimiter=' ' -f1-)
JAILS_STATUS=""
for jail in ${JAILS[@]}
do
banned_ips=($(fail2ban-client status ${jail} | grep 'Banned IP list' | cut -d ' ' --output-delimiter=' ' -f8-))
JAILS_STATUS+="${jail} (${#banned_ips[@]})
"
done
MESSAGE_BODY="${JAILS_STATUS}"
curl -H "t: ${TITLE}" -d "${JAILS_STATUS}" ${NTFY_ENDPOINT}