Como você vê todos os IPs proibidos para o Ubuntu 12.04 através da linha de comando?

27

Não consigo encontrar um comando rápido para visualizar todos os IPs proibidos no servidor. Ou há um arquivo que eu possa editar?

Eu estou supondo que o fail2ban é aquele que insere todos os IPs para banir. Onde eu ajusto as configurações?

Parece que só consigo fazer login no meu servidor remotamente se eu desabilitar o ufw. Eu não consigo descobrir como me desbanir. Eu nem sei porque eu fui banido em primeiro lugar. Existe algum tipo de registro para ver todas as tentativas feitas?

    
por Patoshi パトシ 24.06.2014 / 20:33

3 respostas

20

sudo iptables -L INPUT -v -n | less

Isto diz ao iptables para Listar todas as regras na cadeia INPUT, fornecendo uma saída numérica detalhada. Estamos percorrendo menos para conseguir uma página de cada vez.

    
por Elder Geek 03.07.2014 / 19:08
30

versão curta :

liste todos os ips atualmente bloqueados:

fail2ban-client status | grep "Jail list:" | sed "s/ //g" | awk '{split(,a,",");for(i in a) system("fail2ban-client status " a[i])}' | grep "Status\|IP list"

desbanque um ip:

fail2ban-client set postfix-mail unbanip 111.222.333.444

versão longa :

Se você está procurando a maneira "oficial" de fazer isso, existe um cliente de linha de comando para o link fail2ban :

~ # fail2ban-client status
Status
|- Number of jail:      8
'- Jail list:           roundcube, sshd, sogo, postfix-sasl, postfix-mail, dovecot, ssh, sshd-ddos

então você pode correr

~ # 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

ou você pode usar o meu comando, que itera sobre todas as prisões existentes:

fail2ban-client status | grep "Jail list:" | sed "s/ //g" | awk '{split(,a,",");for(i in a) system("fail2ban-client status " a[i])}' | grep "Status\|IP list"

quais saídas:

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:
    
por c33s 15.03.2017 / 00:16
19

Você pode ver todos os IPs proibidos anteriormente por meio de /var/log/fail2ban.log

sudo zgrep 'Ban' /var/log/fail2ban.log*

Algumas proibições são temporárias, então não tenho certeza de como cancelá-las (meus logs do fail2ban estão vazios, o que torna isso mais difícil de testar!). Você poderia entrar em um grande esquema de contabilidade com o comando awk , mas está ficando muito chato.

De qualquer forma, é a maneira que você quer fazer isso se você está procurando um motivo pelo qual você foi banido.

A outra maneira é examinar as tabelas de IP e ver o que está sendo descartado. Novamente, isso tem alguns problemas porque mostra rotas padrão que são substituídas, mas estou bloqueando regras com uma fonte de 0.0.0.0/0 e que parece mantê-las limpas o suficiente para uso prático:

sudo iptables -L -n | awk '=="DROP" && !="0.0.0.0/0"'

Isso não explica por que uma proibição aconteceu.

    
por Oli 27.06.2014 / 13:54