tcforum1
(usa CentOS)
Enviado em 25/06/2014 - 13:36h
Boa Tarde amigos, estou com uma batata quente não não, e a ainda não consegui descobrir o que fazer com ela. rsrsrs
É o seguinte, tenho um programa na minha empresa e ele faz comunicação tcp com um IP externo "200.234.196.163". Para que o programa funcione precisa dessa comunicação.
A saída esta ok, porem tem alguma entrada através desse ip que não esta conseguindo chegar até o programa.
Consegui resolver com o seguinte comando no firewall:
iptables -t nat -A PREROUTING -p tcp -s 200.234.196.163 -j DNAT --to-destination 192.168.1.237
Porem com esse comando, resolve o problema de apenas 1 micro da rede, o com o ip 192.168.1.237, porem os demais continuam com o mesmo problema.
Alguém tem uma solução?
Segue abaixo o meu firewall:
#!/bin/bash
# Interface da Internet:
ifinternet="eth0"
# Interface da rede local
iflocal="eth1"
iniciar(){
echo "Ativando o Firewall e compartilhamento..."
# Carrega os modulos
modprobe ip_tables
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_MARK
modprobe ipt_limit
modprobe ipt_tcpmss
modprobe ip_conntrack_irc
modprobe ipt_state
modprobe ipt_multiport
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $ifinternet -j MASQUERADE
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
#iptables -t nat -A PREROUTING -p tcp -s 200.234.196.163 -j DNAT --to-destination 192.168.1.237
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i $iflocal -j ACCEPT
#Fecha a porta 80, liberando apenas para acesso ao servidor
#iptables -A FORWARD -p tcp --dport 80 -j REJECT # REGRA PARA PROXY AUTENTICADO
#iptables -t nat -A PREROUTING -i $iflocal -p tcp --dport 80 -j REDIRECT --to 3128 #REGRA PARA PROXY TRANSPARENTE
#SSH LOCAL
iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 2100 -j ACCEPT
#WTS VIRTUAL
iptables -A INPUT -p tcp --dport 33893 -j ACCEPT
iptables -t nat -A PREROUTING -i $ifinternet -p tcp --dport 33893 -j DNAT --to 192.168.1.11:3389
#WTS-local
iptables -A INPUT -p tcp --dport 33892 -j ACCEPT
iptables -t nat -A PREROUTING -i $ifinternet -p tcp --dport 33892 -j DNAT --to 192.168.1.10:3389
#acesso externo unico
#iiptables -A INPUT -p tcp --dport 5432 -j ACCEPT
#iptables -t nat -A PREROUTING -i $ifinternet -p tcp --dport 5432 -j DNAT --to 192.168.1.11:5432
iptables -A INPUT -p tcp --dport 1100 -j ACCEPT
iptables -t nat -A PREROUTING -i $ifinternet -p tcp --dport 1100 -j DNAT --to 192.168.1.50
iptables -A INPUT -p tcp --dport 6036 -j ACCEPT
iptables -t nat -A PREROUTING -i $ifinternet -p tcp --dport 6036 -j DNAT --to 192.168.1.50
##### PORTAS E REDIRECIONAMENTOS #####
# Fecha o resto
iptables -A FORWARD -p tcp -i $ifinternet -j LOG
iptables -A INPUT -p tcp --syn -j DROP
echo "Firewall ativado"
#### ACIONAMENTO DE OUTROS PROGRAMAS
}
parar(){
iptables -F
iptables -F -t nat
}
case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
*) echo "Use os parâtros start ou stop"
esac