Não consigo bloquear um IP

Não consigo bloquear um IP

Eu tenho uma regra de redirecionamento no meu CSF como abaixo;

17.1.1.13|80|27.5.5.22|80|tcp

17.1.1.13é meu firewall (csf) e 27.5.5.22é o endereço do meu servidor web. Então todos acessam meu site através do firewall. Bloqueando uma regra de redirecionamento no CSF ​​(iptables)

E tenho tentado bloquear 50.30.0.0/16o bloco CIDR e ele foi adicionado ao meu csf.denyarquivo.

Agora, se eu tentar visitar o site usando 44.5.6.7o endereço IP, posso. Embora 50.30.0.1esteja bloqueado, posso acessar o site usando o endereço IP. Quero bloquear 50.30.0.1em todas as circunstâncias.

Linhas relacionadas do meu iptables como abaixo. O que devo fazer?

Chain DENYIN (1 references)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 LOGDROPIN  all  --  !lo    *       50.30.0.0/16          0.0.0.0/0           

Chain DENYOUT (1 references)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 LOGDROPOUT  all  --  *      !lo     0.0.0.0/0            50.30.0.0/16 

Chain PREROUTING (policy ACCEPT 7 packets, 336 bytes)
num   pkts bytes target     prot opt in     out     source               destination   
1        0     0 REDIRECT   tcp  --  !lo    *       50.30.0.0/16          0.0.0.0/0 
2        0     0 REDIRECT   tcp  --  !lo    *       50.30.0.0/16          0.0.0.0/0      
3        0     0 DNAT       tcp  --  !lo    *       0.0.0.0/0            17.1.1.13
4        0     0 DNAT       tcp  --  !lo    *       0.0.0.0/0            17.1.1.13

Chain POSTROUTING (policy ACCEPT 6 packets, 699 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 SNAT       tcp  --  *      !lo     0.0.0.0/0            27.5.5.22 
2        0     0 SNAT       tcp  --  *      !lo     0.0.0.0/0            27.5.5.22 

Responder1

Quando você usa um comando -A (para APPEND) iptables, sua regra é adicionada no final da tabela.

A forma como as regras são avaliadas vai da primeira à última, e qualquer regra correspondente que resulte em uma decisão ( ACCEPT, REJECT, DENY) interrompe a avaliação de qualquer regra subsequente.

Então aqui o que acontece é que a sua DROPregra nunca vai importar, pois se iptablesa avaliar, ela teria ido para a DROPpolítica de qualquer maneira.

Você precisa adicionar sua regra antes de qualquer ACCEPTregra que você gostaria que o endereço IP correspondente não pudesse acessar. Eu acho que é a primeira regra no seu caso.

O que seria algo como

iptables -I INPUT -s 5.254.0.0/16 -j DROP

Ele adicionará a regra no início da tabela, considerando-a antes de mais nada e ignorando o restante de suas regras para qualquer IP correspondente, cujos pacotes serão descartados.

Observe que se você precisar ser mais preciso sobre onde inseriu sua regra, poderá especificar um número posicional logo após o -I.

informação relacionada