Buckminster
(usa Debian)
Enviado em 01/09/2013 - 23:56h
Bom, como você está dizendo que as estações estão navegando na internet, deve ter alguma coisa errada, vejamos:
# Interface da rede INTERNA
IF_INTERNA="eth0";
# Interface da rede EXTERNA
IF_EXTERNA="eth1";
# Definição da rede interna
REDE_INTERNA="10.1.1.0"
Aí em cima você definiu 3 variáveis, porém, na regra abaixo que faz o mascaramento e o compartilhamento
# Libera a conexao para a rede interna
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
você colocou a eth0 (rede interna) para fazer o compartilhamento. Acredito que a definição da variável está errada, senão as estações não estariam navegando. O compartilhamento é feito na placa de rede que recebe a internet, ou seja, a placa de rede conectada no modem/roteador ou similar, que segundo a definição das tuas variáveis é a eth1.
Quanto às estações que não pingam IPs externos, comente as duas linhas abaixo no teu script, reinicie o Iptables e teste o ping:
echo 0 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/ip_dynaddr
Quanto à porta 7000 acrescente as linhas abaixo na tua lista de portas liberadas, reinicie o Iptables e teste:
iptables -A INPUT -p udp --dport 7000 -i $REDE_INTERNA -j ACCEPT
iptables -A INPUT -p tcp --dport 7000 -i $REDE_INTERNA -j ACCEPT
iptables -A FORWARD -p udp --dport 7000 -i $REDE_INTERNA -j ACCEPT
iptables -A FORWARD -p tcp --dport 7000 -i $REDE_INTERNA -j ACCEPT
Mas veja bem, verifique as tuas placas de rede se é isso mesmo que você colocou no script.
E veja isto:
http://www.vivaolinux.com.br/artigo/Manual-do-IPtables-Comentarios-e-sugestoes-de-regras?pagina=4