dbbrito
(usa CentOS)
Enviado em 18/07/2010 - 14:59h
Amigos, já procurei e testei de tudo que tinha na internet sobre icmp mas não consegui nada, preciso bloquear todo tráfego icmp e liberar para alguns ips, até aí tudo bem, mas acaba que quando aplico as regras ele também bloqueia o ping de dentro pra fora, é isso que não consigo resolver. Então peço a ajuda de voçês pra esse caso, essa é pra vocês que são especialistas mesmo, segue abaixo o script que tenho, TAMBÉM GOSTARIA DE UMA REGRA PRA LIMITAR A QUANTIDADE USUÁRIOS NA PORTA 80,
Desde já muito obrigado a todos.
#!/bin/bash
/sbin/iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 0 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
/sbin/iptables -A INPUT -m state --state INVALID -j DROP
# Abre para a interface de loopback:
/sbin/iptables -A INPUT -p tcp -i lo -j ACCEPT
#LIBERA ICMP PARA DOIS IPS (onde ta XX é só por questão de privacidade)
/sbin/iptables -A INPUT -s 201.XX.XX.XX.XXX/28 -p icmp -j ACCEPT
/sbin/iptables -A FORWARD -d 201.XX.XX.XX.XXX/28 -p icmp -j ACCEPT
/sbin/iptables -A FORWARD -s 201.XX.XX.XX.XXX/28 -p icmp -j ACCEPT
/sbin/iptables -A INPUT -s 200.XX.XX.XX.XXX/28 -p icmp -j ACCEPT
/sbin/iptables -A FORWARD -d 200.XX.XX.XX.XXX/28 -p icmp -j ACCEPT
/sbin/iptables -A FORWARD -s 200.XX.XX.XX.XXX/28 -p icmp -j ACCEPT
#Bloqueia ICMP PARA O RESTANTE:
/sbin/iptables -A INPUT -p icmp --icmp-type 0 -j DROP
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j DROP
# Abre as portas referentes aos serviços usados:
# DNS:
/sbin/iptables -A INPUT -p tcp --dport 53 -j ACCEPT
/sbin/iptables -A INPUT -p udp --dport 53 -j ACCEPT
# HTTP e HTTPS:
/sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# SSH:
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Bloqueia conexões nas demais portas:
/sbin/iptables -A INPUT -p tcp --syn -j DROP
# Garante que o firewall permitirá pacotes de conexões já iniciadas:
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Bloqueia as portas UDP de 0 a 1023 (com exceção das abertas acima):
/sbin/iptables -A INPUT -p udp --dport 0:1023 -j DROP
#echo FIREWALL INICIADO COM SUCESSO!!!