
Estou tentando permitir o acesso SSH a um determinado intervalo de IPs (de 192.168.1.1
a 192.168.1.24
) e bloquear todo o resto, mas como sou novo no iptables, não consigo entender. Eu tenho :
iptables -A INPUT -s 192.168.1.0/24 -p udp --dport ssh -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -p tcp --dport ssh -j REJECT
iptables -A INPUT -p udp --dport ssh -j REJECT
Mas isso não funciona, com uma VM configurada 192.168.1.89
ainda posso acessar via SSH. Alguém pode ajudar?
Responder1
192.168.1.0/24
não é de 1 a 24, mas usa 24 bits (= os 3 primeiros blocos), portanto aceitará qualquer coisa começando com 192.168.1. O caminho certo é /27 mas permitirá até 192.168.1.31.
O próximo intervalo menor será /28, que permitirá até 192.168.1.15.
Responder2
/24 é o comprimento do CIDR, não um intervalo.
Para usar um intervalo, faça o seguinte:
iptables -A INPUT -m iprange --src-range 192.168.1.1-192.168.1.24 -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -p tcp --dport ssh -j REJECT
Responder3
O primeiro DROP all INPUT Rullse (para mais segurança) O segundo: iptables -A INPUT -p tcp -i eth0 --dport 22 -m iprange --src-range 192.168.1.1-192.168.1.24 -j ACEITAR Divirta-se