mirror of
https://github.com/pavel-odintsov/fastnetmon
synced 2024-11-23 13:22:36 +01:00
30 lines
960 B
Bash
Executable File
30 lines
960 B
Bash
Executable File
#!/bin/bash
|
||
|
||
# $1 client_ip_as_string
|
||
# $2 data_direction
|
||
# $3 pps_as_string
|
||
# $4 action (ban or unban)
|
||
|
||
email_notify="root,please_fix_this_email@domain.ru"
|
||
|
||
# Далее возможны два варианта:
|
||
# это первый запуск, при котором нужно банить IP (на stdin пусто)
|
||
# это второй запуск, когда скрипт уже собрал (если смог) детали об атаке (на stdin даные об атаке)
|
||
|
||
if [ "$4" = "unban" ]; then
|
||
# Unban actions if used
|
||
exit 0
|
||
fi
|
||
|
||
if [ "$4" = "ban" ]; then
|
||
cat | mail -s "FastNetMon Guard: IP $1 blocked because $2 attack with power $3 pps" $email_notify;
|
||
# You can add ban code here!
|
||
# iptables -A INPUT -s $1 -j DROP
|
||
# iptables -A INPUT -d $1 -j DROP
|
||
exit 0
|
||
fi
|
||
|
||
if [ "$4" == "attack_details" ]; then
|
||
cat | mail -s "FastNetMon Guard: IP $1 blocked because $2 attack with power $3 pps" $email_notify;
|
||
fi
|