Fazendo o TED (e demais programas do governo) funcionar em estações da rede interna
Dica publicada em Linux / Configuração
Fazendo o TED (e demais programas do governo) funcionar em estações da rede interna
Essa dica vai para os administradores de rede que usam um servidor proxy e as estações ligadas a ele precisam usar algum programa do governo, como por exemplo o TED.
Vamos ao problema: todos os programas do governo que as estações de minha rede usam partem do mesmo princípio, que é o seguinte, o programa só acessa a rede externa por conexão via SOCKS e eu fiquei muito tempo, mas muito tempo mesmo tentando abrir a porta do SOCKS - que é a 1080 - usando iptables, sem nenhum sucesso.
A idéia: então eu pensei "deve ter algum software que deixa a porta 1080 aberta para conexões", então comecei a busca. Enfim achei um programa que prometia fazer o que eu precisava, o ANTINAT-0.90. Para minha alegria funcionou beleza.
Vamos as configurações:
Baixe o programa em:
Com permissões de root, descompacte o arquivo no diretório desejado e dentro deste digite:
# ./configure
# make
# make install
Pronto! Para rodar o programa apenas execute:
# antinat
Agora é só ir na máquina cliente e configurar o TED (no meu caso), mas acredito que funciona com vários outros programas do tipo. O próprio programa tem uma configuração de SOCKS, é só você digitar o IP onde o antinat está rodando e a porta, que no caso é a 1080.
OBS: A porta 1080 é muito scaneada por crackers, então faça uma regra no iptables permitindo acesso à porta 1080 somente para a máquina(s) em que o TED está instalado.
Foi testado no Slackware 10.2.
E fim de papo!
Espero que ajude alguém.
Outras dicas deste autor
Nenhuma dica encontrada.Leitura recomendada
Mudando resolução de tela pelo xorg.conf
Telnet automático com LTSP 4.2
Restaurar (resetar) o ambiente gráfico (interface) do Lubuntu 14.04 LTS
Erro ao Instalar o "ttf-mscorefonts-installer" no Ubuntu [Resolvido]
Comentários
Eu nunca vi nenhum programa se comportar de tal maneira.
Mas se for o caso eu creio que só com iptables mesmo
FLW
Mas se for o caso eu creio que só com iptables mesmo
FLW
Para mim esta dizendo que não é possivel es cutar interface/port, mas ja esta liberado no firewall alguma dica?
###################
# LIBERACAO SEFAZ #
###################
iptables -t nat -A PREROUTING -p tcp -d 200.201.173.68 --dport 80 -j DNAT --to 200.201.173.68:80
iptables -I FORWARD -p tcp -s 0/0 -d 200.201.173.68/32 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 200.201.166.200 --dport 80 -j DNAT --to 200.201.166.200:80
iptables -I FORWARD -p tcp -s 0/0 -d 200.201.166.200/32 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 200.201.174.207 --dport 80 -j DNAT --to 200.201.174.207:80
iptables -I FORWARD -p tcp -s 0/0 -d 200.201.174.207/32 --dport 80 -j ACCEPT
iptables -I FORWARD -p all -s 200.201.174.0/24 -d 0/0 -j ACCEPT
iptables -I OUTPUT -p all -s 200.201.174.0/24 -d 0/0 -j ACCEPT
iptables -I INPUT -p all -s 200.201.174.0/24 -d 0/0 -j ACCEPT
iptables -A FORWARD -p tcp -m tcp --dport 2631 -s 10.20.0.0/16 -d 200.201.174.204 -j ACCEPT
iptables -A FORWARD -p tcp -m tcp --dport 2004 -s 10.20.0.0/16 -d 200.244.109.65 -j ACCEPT
#TED
iptables -t nat -A PREROUTING -i eth1 -s \! 10.20.0.0/16 -p tcp -m multiport --dport 8017,80,443 -j REDIRECT --to-port 3128
iptables -A FORWARD -p tcp --dport 8017 -j ACCEPT
iptables -A FORWARD -p udp --dport 8017 -j ACCEPT
#TED2
iptables -t nat -A PREROUTING -i eth1 -p tcp -d ! ted.sefaz.rs.gov.br --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth1 -d ted.sefaz.rs.gov.br -j ACCEPT
iptables -t filter -A FORWARD -i eth1 -d ted.sefaz.rs.gov.br -j ACCEPT
iptables -A FORWARD -p tcp --dport 8017 -j ACCEPT
iptables -A FORWARD -p udp --dport 8017 -j ACCEPT
# LIBERACAO SEFAZ #
###################
iptables -t nat -A PREROUTING -p tcp -d 200.201.173.68 --dport 80 -j DNAT --to 200.201.173.68:80
iptables -I FORWARD -p tcp -s 0/0 -d 200.201.173.68/32 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 200.201.166.200 --dport 80 -j DNAT --to 200.201.166.200:80
iptables -I FORWARD -p tcp -s 0/0 -d 200.201.166.200/32 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 200.201.174.207 --dport 80 -j DNAT --to 200.201.174.207:80
iptables -I FORWARD -p tcp -s 0/0 -d 200.201.174.207/32 --dport 80 -j ACCEPT
iptables -I FORWARD -p all -s 200.201.174.0/24 -d 0/0 -j ACCEPT
iptables -I OUTPUT -p all -s 200.201.174.0/24 -d 0/0 -j ACCEPT
iptables -I INPUT -p all -s 200.201.174.0/24 -d 0/0 -j ACCEPT
iptables -A FORWARD -p tcp -m tcp --dport 2631 -s 10.20.0.0/16 -d 200.201.174.204 -j ACCEPT
iptables -A FORWARD -p tcp -m tcp --dport 2004 -s 10.20.0.0/16 -d 200.244.109.65 -j ACCEPT
#TED
iptables -t nat -A PREROUTING -i eth1 -s \! 10.20.0.0/16 -p tcp -m multiport --dport 8017,80,443 -j REDIRECT --to-port 3128
iptables -A FORWARD -p tcp --dport 8017 -j ACCEPT
iptables -A FORWARD -p udp --dport 8017 -j ACCEPT
#TED2
iptables -t nat -A PREROUTING -i eth1 -p tcp -d ! ted.sefaz.rs.gov.br --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth1 -d ted.sefaz.rs.gov.br -j ACCEPT
iptables -t filter -A FORWARD -i eth1 -d ted.sefaz.rs.gov.br -j ACCEPT
iptables -A FORWARD -p tcp --dport 8017 -j ACCEPT
iptables -A FORWARD -p udp --dport 8017 -j ACCEPT
mass... E SE o programa em questão não tiver suporte a proxy (nem http nem socks)... o que fazer? liberar direto por iptables mesmo?
abraço!