As tabelas IP permitem tudo, mas restringem o HTTP para apenas um IP

As tabelas IP permitem tudo, mas restringem o HTTP para apenas um IP

Sou solicitado a gerenciar alguns servidores web sempre que meus clientes precisarem de alguma alteração.

Tudo o que quero é restringir HTTPe HTTPStemporariamente para mim mesmo, enquanto todas as outras conexões estão abertas para todos enquanto estou testando.

Eles não conseguiram iptables, mas eu tenho acesso sudo.

Há muitos outros serviços em execução que não quero interromper. Também não quero me desconectar da minha sessão ssh, pois não tenho acesso ao console para revertê-la.

Se eu executar apenas esses 2 comandos, ele restringirá apenas HTTPe HTTPSenquanto outras portas estiverem funcionando?

iptables -I INPUT -p tcp -s 0.0.0.0/0 --match multiport --dport 80,443 -j DROP
iptables -I INPUT -p tcp -s 10.1.1.2 --match multiport --dport 80,443 -j ACCEPT

Editar: Alterada a ordem das regras.

Responder1

Sim, apenas o que está no iptables --listé processado, a menos que DROP ALLpermita todo o resto.

Mas se estivermos usando -I (Insert), a ordem das regras deverá ser Dropa primeira, o que significa que elas DROPestarão no final, enquanto ACCEPTas regras serão processadas primeiro.

[root@hostname ~]# iptables -I INPUT -p tcp -s 0.0.0.0/0 --match multiport --dport 80,443 -j DROP            
[root@hostname ~]# iptables -I INPUT -p tcp -s 10.1.1.2 --match multiport --dport 80,443 -j ACCEPT

Agora corraiptables --list

[root@hostname ~]# iptables --list
Chain INPUT (policy ACCEPT)
target     prot    opt    source               destination
ACCEPT     tcp      --    10.1.1.2         anywhere            multiport dports http,https
DROP       tcp      --    anywhere         anywhere            multiport dports http,https

informação relacionada