Кажется, я не могу найти краткую команду, чтобы просто просмотреть все заблокированные IP-адреса на сервере. Или есть файл, который я могу просто отредактировать?
Я предполагаю, что fail2ban - это тот, который вводит все IP-адреса для запрета. Где я могу отрегулировать настройки для этого?
Кажется, я могу удаленно подключиться к моему серверу только в том случае, если отключить ufw. Кажется, я не могу понять, как себя унибить. Я даже не знаю, почему меня вообще запретили. Есть ли какой-либо журнал для просмотра всех сделанных попыток?
короткая версия:
список всех заблокированных в настоящее время ips:
fail2ban-client status | grep "Jail list:" | sed "s/ //g" | awk '{split($2,a,",");for(i in a) system("fail2ban-client status " a[i])}' | grep "Status\|IP list"
unban a ip:
fail2ban-client set postfix-mail unbanip 111.222.333.444
короткая версия :
, если вы ищете «официальный» способ сделать это, есть клиент командной строки для fail2ban https://www.fail2ban.org/wiki/index.php/Commands:
~ # fail2ban-client status
Status
|- Number of jail: 8
`- Jail list: roundcube, sshd, sogo, postfix-sasl, postfix-mail, dovecot, ssh, sshd-ddos
, то вы можете запустить
~ # fail2ban-client status roundcube
Status for the jail: roundcube
|- filter
| |- File list: /var/log/mail.log
| |- Currently failed: 0
| `- Total failed: 12
`- action
|- Currently banned: 1
| `- IP list: 111.222.333.444
`- Total banned: 1
, или вы можете использовать мою команду, которая выполняет итерацию по всем существующим тюрьмам:
fail2ban-client status | grep "Jail list:" | sed "s/ //g" | awk '{split($2,a,",");for(i in a) system("fail2ban-client status " a[i])}' | grep "Status\|IP list"
, который выводит :
Status for the jail: roundcube
| `- IP list:
Status for the jail: sshd
| `- IP list:
Status for the jail: sogo
| `- IP list:
Status for the jail: postfix-sasl
| `- IP list:
Status for the jail: postfix-mail
| `- IP list:
Status for the jail: dovecot
| `- IP list:
Status for the jail: ssh
| `- IP list:
Status for the jail: sshd-ddos
| `- IP list:
Вы можете видеть все ранее заблокированные IP-адреса через /var/log/fail2ban.log
sudo zgrep 'Ban' /var/log/fail2ban.log*
Некоторые запреты являются временными, поэтому я не уверен, как их лучше всего отменить (мои журналы fail2ban пусты, делает это труднее проверить!). Вы можете войти в большую схему учета с помощью команды awk, но она становится довольно скучной.
В любом случае, так вы хотите это сделать, если вы ищете причину, по которой вы были заблокированы .
Другой способ - посмотреть на таблицы IP и посмотреть, что происходит. Опять же, у этого есть некоторые проблемы, потому что он показывает маршруты по умолчанию, которые переопределяются, но я блокирую правила с источником 0.0.0.0/0, и, похоже, он достаточно чист для практического использования:
sudo iptables -L -n | awk '$1=="DROP" && $4!="0.0.0.0/0"'
[d5 ] Это не объяснит, почему был запрет.