Я пытаюсь разблокировать IP-адрес без перезапуска Fail2Ban каждый раз, как лучше всего это сделать? Или вы можете указать мне на полезное руководство?
Как вы можете видеть ниже, я пытаюсь удалить IP-адрес: 89.31.259.161.
# iptables -L -n
Chain INPUT (policy DROP)
target prot opt source destination
fail2ban-apache-badbots tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443
fail2ban-httpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
fail2ban-sasl tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 25,465,143,220,993,110,995
fail2ban-SSH tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
fail2ban-httpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
fail2ban-httpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
fail2ban-vsftpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443,25,465,110,995,143,993,587,465,21,20,2855
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:54000
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain fail2ban-SSH (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-apache-badbots (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-httpd (3 references)
target prot opt source destination
DROP all -- 89.31.259.161 0.0.0.0/0
DROP all -- 89.31.259.161 0.0.0.0/0
RETURN all -- 0.0.0.0/0 0.0.0.0/0
RETURN all -- 0.0.0.0/0 0.0.0.0/0
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-sasl (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-vsftpd (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Я смог запустить: iptables -D fail2ban-httpd -s 89.31.259.161 -j DROP
хотя при этом была удалена только одна из строк.
Использовать --line-numbers
опция iptables, чтобы получить список, который показывает номера строк для правил в цепочке, например.
iptables -L fail2ban-SSH -v -n --line-numbers
Chain fail2ban-SSH (1 references)
num pkts bytes target prot opt in out source destination
1 19 2332 DROP all -- * * 193.87.172.171 0.0.0.0/0
2 16 1704 DROP all -- * * 222.58.151.68 0.0.0.0/0
3 15 980 DROP all -- * * 218.108.224.81 0.0.0.0/0
4 6 360 DROP all -- * * 91.196.170.231 0.0.0.0/0
5 8504 581K RETURN all -- * * 0.0.0.0/0 0.0.0.0/0
Затем используйте iptables -D chain rulenum
чтобы удалить те, которые вам не нужны, например
iptables -D fail2ban-SSH 1
удалит
1 19 2332 DROP all -- * * 193.87.172.171 0.0.0.0/0
строка из приведенного выше примера. Обратите внимание, что все перенумеровано, поэтому вы можете снова запустить ту же команду, чтобы удалить новое правило 1 в цепочке.
Исходя из моего опыта работы с Fail2ban, разблокирование IP-адреса напрямую через IPTABLES приведет к тому, что IP-адрес будет снова заблокирован Fail2ban, если сервис Fail2ban будет перезапущен в течение времени запрета.
При этом наиболее эффективный и чистый способ разблокировать IP-адрес, заблокированный Fail2ban, - это использовать fail2ban-client.
Шаг 1. Обратите внимание на имя тюрьмы, проверив журнал Fail2ban.
sudo zgrep 'Ban' /var/log/fail2ban.log
Пример вывода:
2017-11-03 04: 30: 14,509 fail2ban.actions [25091]: УВЕДОМЛЕНИЕ [nginx-badbots] Бан 47.15.15.49 2017-11-03 04: 37: 29,597 fail2ban.actions [27065]: УВЕДОМЛЕНИЕ [nginx-badbots] Бан 103.31.87.187 2017-11-03 04: 37: 30,124 fail2ban.actions [27065]: УВЕДОМЛЕНИЕ [nginx-badbots] Бан 201.33.170.251 2017-11-03 04: 37: 30,364 fail2ban.actions [27065]: ВНИМАНИЕ [ nginx-badbots] Бан 47.15.15.49 2017-11-03 04: 38: 06,754 fail2ban.actions [27065]: УВЕДОМЛЕНИЕ [vsftpd] Бан 128.20.12.68
Если нас интересует разблокировка IP-адреса - 128.20.12.68 - тогда имя Jail - vsftpd.
Шаг 2: Разбаньте IP-адрес с помощью fail2ban-client. Общий формат:
sudo fail2ban-client set [JAIL] unbanip [xx.xx.xx.xx]
Теперь запустите:
sudo fail2ban-client set vsftpd unbanip 128.20.12.68
Пример вывода:
128.20.12.68
Шаг 3. Подтвердите разблокировку из журнала Fail2ban
sudo tail -f /var/log/fail2ban.log
Пример вывода:
2017-11-03 04: 38: 13,332 fail2ban.actions [27065]: УВЕДОМЛЕНИЕ [vsftpd] Unban 128.20.12.68