Externo ok – Interno não

Visualizando 20 respostas da discussão
  • Autor
    Posts
    • #1564
      Ananias Guerra
      Participante

      Tenho um redirecionamento (NAT) ip externo 200.x.x.x:5230 (porta de um banco de dados) para ip interno 192.168.0.x:5230

      Não consigo acessar pela rede local 192.168.0.0 a aplicação. Erro informa que não encontrou o 200.x.x.x:5230 …

      O gateway da rede interna é o ip do firewall… Se mudo o gateway funciona.

      Parece simples… mas estou agarrado nesta.

      Podem me ajudar, por favor ?


      Wireguard_webadmin

      Sistema gratuito (Open Source) para gestão de VPN's WireGuard com uma Web interface intuitiva e fácil de usar.

      Principais funcionalidades:

      - Sistema de Firewall completo e flexível.
      - Encaminhamento de portas
      - Suporte a multi usuário com níveis diferentes de acesso
      - Múltiplas instâncias do Wireguard
      - Crypto key routing para configuração de VPN site-to-site

      O projeto é Open Source, fácil de instalar e está disponível em wireguard_webadmin

    • #10103
      Eduardo Jonck
      Participante

      Não entendi direito, o seu banco de dados fica onde? na rede 192.168.0.x:5230?

      Vc que acessar da rede interna, o ip externo 20.x.x.x.:5230?

      Explica melhor isso, ficou confuso

      No aguardo!!!!

    • #10104
      Ananias Guerra
      Participante

      ok.

      o banco fica na rede local (192.168.0.10). porta 5230

      Foi configurado um NAT no EFW: Tudo que chegar no endereço 200.200.200.200:5230 traduzir para 192.168.0.10:5230

      ao acessar ele pela rede local, o computador da local (192.168.0.100) mostra erro na conexão com o 200.200.200.200.:5230

      O acesso externo está ok.

      Só dá erro se o gateway do computador local 192.168.0.100 não estiver configurado com o ip do EFW.

    • #10105
      Eduardo Jonck
      Participante

      Cara, mas vc não pode acessar de dentro da rede interna, um ip externo, pra cair no interno novamente.

      Pra vc acessar de dentro da sua rede, vc tem que apontar direto para o ip do servidor do banco. EX: http://192.168.0.10:5230 entendeu;

      Não sei se era isso que vc queria.

      No aguardo!!!!!

    • #10106
      Ananias Guerra
      Participante

      Desculpe. Não entendí… não posso acessar da rede interna um ip externo ?

      Bom, eu não quero que caia no interno novamente, até porque o programa que acessa o banco usa o ip externo e não o interno…

      Grato pela atenção.

    • #10107
      Eduardo Silva
      Participante

      Ananias,

      A forma correta de resolver o seu problema seria utilizando DNS.

      Exemplo: Você cria uma entrada de dns apontando para o seu ip externo: meubancodedados.exemplo.com.br -> 200.200.200.200

      Depois você configura uma entrada de DNS no endian para a sua rede interna. Vá em NetworkEdit HostsAdd a host e adicione meubancodedados.exemplo.com.br -> 192.168.0.10

      Depois você pode configurar o seu cliente para usar o dominio DNS ao invés de usar diretamente o IP.

      []’s

    • #10108
      Eduardo Jonck
      Participante

      VC ja liberou a porta 5230 para saida do firewall?

    • #10109
      Ananias Guerra
      Participante

      Vamos lá,

      A porta já está liberada.

      Quanto a configurar o cliente para usar o domínio DNS ao invés de usar diretamente o IP não vai ser possível, uma vez que se trata de uma aplicação cuja não tenho o código fonte para realizar a alteração…

      Poderia utilizar o arquivo hosts em C:windowssystem32driversetchosts com a entrada:

      meubancodedados.exemplo.com.br 192.168.0.10

      O que acontece que é que o NAT que falei é um redirecionamento de uma porta tcp do acesso externo para a mesma porta para uma máquina na rede local. Acho que não caberia aqui uma entrada dns.

      Hoje vou fazer mais alguns testes e depois posto o resultado.

      Por enquanto, obrigado pela atenção.

    • #10110
      Eduardo Silva
      Participante

      Você quer dizer que não pode configurar o endereço de onde está o banco de dados?

      Se você pode colocar o seu ip externo como destino para o banco de dados, provavelmente você pode alterar este campo sim, e normalmente este campo suporta nomes de dns ao invés de IP.

    • #10111
      Ananias Guerra
      Participante

      Não posso. É uma aplicação já compilada. Não tenho acesso ao código fonte. Ela foi feita para uso externo, conectando ao ip externo.

      Meu problema é que preciso usar ela também na rede interna.

      Porquê será que quando eu mudo o gateway da rede (o gateway é o ip do endian) ela funciona ?

    • #10112
      giltronix
      Participante

      Acredito que o problema seja que o EFW sabe que o IP externo deve ser roteado, todavia ele é o destino, para tentar amenizar este problema voce pode, dependendo da aplicação, adcionar no arquivo host da maquina local o nome do servidor da aplicação seguido do ip local do servidor, sendo assim a estação de trabalho ao transformar o nome em ip vai direcionar para o ip da rede interna, não alterando quem se conecta de fora da rede. Se voce tem um servidor de DNS para a rede local (active directory) pode adcionar neste dns e assim ja definindo para toda a rede interna.

    • #10113
      Tácio Andrade
      Participante

      Ananias, posso está errado, mais eu ouvi falar em algum lugar sobre problemas de maquinas dentro do NAT acessar o seu próprio ip externo.

      Você por acaso tem um segundo link de intenet? Caso tenha minha ideia seria você criar uma rota para todo o trafego com destino a porta 5230, vá para o outro link, pelo route.

      Espero ter dado uma solução.

      Att. Tácio Andrade.

    • #10114
      Ananias Guerra
      Participante

      Giltronix, o EFW tem três redes configuradas: VERMELHA, VERDE, LARANJA. A Vermelha é um link dedicado com vários ips virtuais (um deles é usado para ela máquina do BD – Redirecionamento para uma máquina na VERDE).

      A conexão não usa nomes apenas IP. O programa se conecta pelo IP e porta.

      Já temos um servidor DNS na rede VERDE. A máquina onde está o banco tem IP 192.168.0.xx já configurado no DNS.

      Valeu…

    • #10115
      Ananias Guerra
      Participante

      Parecia ser simples. Não pensei que ia ser tão difícil.

      Vou tentar o pfsense.

    • #10116
      Eduardo Silva
      Participante

      Ananias,

      Eu gostaria de lembrar que a comunidade não recebe nenhum tipo de patrocínio do Endian e quem participa dela, faz porquê gosta do produto ou porquê gosta de ajudar e/ou compartilhar conhecimento. Ninguém tem a obrigação de ajudar e ou de resolver o seu problema.

      Caso você queira um comprometimento sério, procure um profissional do ramo que possa ajudar nas soluções dos seus problemas.

      Digo isso de uma forma meio rígida, pois eu não me agradei da sua atitude final, se o Endian não serve para os seus propósitos, acho que você está no direito de escolher e testar outras soluções até encontrar uma que agrade ou que preencha todas as suas expectativas. Mas vir para o forum com um ar de desaforo dizendo “não consegui resolver o meu problema então eu vou embora”, é um pouco desrespeitoso com o restante da comunidade e principalmente com quem dedicou um pouco do seu tempo para te ajudar.

      Agora que eu falei o que ficou entalado na minha garganta, vou comentar sobre o teu problema.

      A solução que eu apontei usando uma entrada de DNS interna, é a solução mais indicada para este tipo problema e é a solução que funciona de uma forma transparente. Se o seu aplicativo tem o endereço do servidor de dados “hardcoded”, eu preciso comentar que ele foi muito mal-escrito e que você deve ficar atento para a qualidade do software que você está usando.

      A propósito… não é recomendável fazer consultas a base de dados diretamente através da internet, pois estas podem acabar tendo um tamanho considerável e causando uma provavel lentidão na aplicação além dos riscos de segurança envolvidos.

      Se o aplicativo não tem uma forma padronizada para acesso remoto, verifique a possibilidade de executar ele remotamente através de um terminal service ou citrix metaframe. Estas soluções evitariam a necessidade de trafegar um grande volume de dados através da internet.

      Explicando o problema:

      O ideal seria você dedicar um tempinho para estudar e entender melhor sobre como funciona o protocolo tcp/ip, mas vou tentar resumir de uma forma bem simples e didática:

      Computador A (cliente com ip 192.168.0.15)

      Computador B (banco de dados com o ip 192.168.0.10)

      Endian 192.168.0.1

      Quando A tenta conectar no ip público, 200.222.222.222, o endian recebe este pacote e redireciona para B.

      B recebe o pacote de A e responde para A. Como A está na mesma rede que B, B entrega o pacote diretamente para A. A por sua vez, recebe o pacote assinado com o ip de origem de B. A pensa que B está enviando pacotes incorretos, pois este afirma ter uma conexão com A, como a desconhece tal conexão, ele descarta os pacotes recebidos.

      Resumindo, 192.168.0.15 mandou um pacote para 200.222.222.222, mas o pacote de resposta veio com o ip de origem 192.168.0.10. Como 192.168.0.15 não conhece a conexão vinda de 192.168.0.10, ele passa a descartar estes pacotes como algo inválido (este é o problema que o tacioandrade estava falando anteriormente).

      Como resolver:

      – Da forma correta – usando DNS interno

      – Da forma correta 2 – Acessos remotos usando VPN, desta forma os clientes sempre vão conectar no servidor de banco de dados 192.168.0.10 (dentro ou fora da empresa).

      – Da forma completamente incorreta (o termo certo seria: gambiarra extrema, não tentem isto em casa) – Você pode criar uma regra de SNAT (Source NAT) dizendo que todo o tráfego com origem 192.168.0.0/24 e destino 192.168.0.10 na porta tcp 5230 deve ter o ip de origem alterado para o mesmo ip da rede verde do endian (ex: 192.168.0.1)

      Depois uma nova regra dizendo que todo o tráfego com ip de origem 192.168.0.10 e porta de origem (atenção que é origem mesmo e não destino) 5230 com destino a rede 192.168.0.0/24 deve ter o ip de origem alterado para 200.222.222.222.

      Desta forma, A manda um pacote para o endereço 200.222.222.222, que o endian redireciona para B trocando o ip de origem do pacote para 192.168.0.1. B pensa que está falando apenas com 192.168.0.1 e devolve este pacote. O endian (que sabe das coisas), vai encaminhar este pacote para A trocando o ip de origem dele para 200.222.222.222.

      Moral da história:

      A pensa que está falando com 200.222.222.222

      B sempre vai pensar que é o endian que está conectando ao banco de dados, ele nunca vai ver A.

      Talvez ainda precise adicionar um forward aqui e um forward ali no resto do seu firewall, mas isso eu deixo para você descobrir “se” e “onde” colocar o forward.

      Voiala, problema resolvido.

      Devo lembrar que esta é uma forma muito “não profissional” de resolver este problema e não deve ser usada pois é suja demais.

      Não vou prestar suporte no forum para esta gambiarra, se você implementar é por sua conta e risco.

      De qualquer maneira, eu encorajo você a testar outras soluções, acho que isto só vai acrescentar ao seu crescimento pessoal, mas o problema citado vai existir em qualquer distribuição que você testar.

      Boa sorte

    • #10117
      Ananias Guerra
      Participante

      Ôpa! eu não disse isso : “não consegui resolver o meu problema então eu vou embora”

      E eu sei que : “Ninguém tem a obrigação de ajudar e ou de resolver o meu problema.”

      Mas, sinceramente, estou começando a acreditar que o melhor mesmo é fazer tudo na unha que ficar usando estas soluções “prontas”.

      Mas antes vou tentar esta última dica do Eduardo Silva.

      Desculpem qualquer coisa. E se der tudo certo eu volto para postar.

    • #10118
      Eduardo Jonck
      Participante

      Boa Eduardo Silva, gostei do seu recado, no tempo que vc ficou meio ausente do fórum, aparecerão outras pessoa com a mesma atitude, de detonar a aplicação, fico cabreiro com isso também.

      Vejo que o conhecimento dessas pessoas é muito fraco, estou 2 anos na area de TI, e todo dia vejo cada coisa, o pessoal acha que as coisas caem do céu, sem nenhum tipo de esforço, e principalmente conhecimento.

      Ai é fácil detonar os aplicativos, cambada de incompetente, desculpa o palavreado.

      Valeu Eduardo!!!!!

    • #10119
      Eduardo Silva
      Participante

      Ananias,

      Para fazer tudo na unha, você vai precisar dos mesmos conceitos que informei acima, isso vale para praticamente qualquer firewall.

      A melhor solução é aquela que você se adapta melhor. Tudo tem as suas vantagens e desvantagens. Em alguns casos, eu uso soluções prontas, em outros, eu prefiro fazer por baixo.

      A grande vantagem de uma solução pronta é que você pode delegar com muita facilidade para outra pessoa administrar… ja se fizer por baixo, a pessoa que vai administrar precisa ter um conhecimento mais elevado.

      Sr Jonck, eu não vejo mal em criticas construtivas, mas quando são sem embasamento, eu acabo ficando meio revoltado também. Quero voltar ao forum, ou ao menos começar a ficar mais perto dele, acho muito legal ver esta comunidade crescer.

      []’s

      🙂

    • #10120
      Eduardo Jonck
      Participante

      Estaremos juntos nessa Eduardo Silva se depender de mim, foi meu primeiro firewall que consegui configurar e já colocar rodar em produção, e esta tudo certinho, show de bola.

      Eu gostaria que vc que tem uma bagagem boa de experiencia, para avaliar as modificações que estou fazendo com alguns arquivos que postei no fórum, como o dansguardian.cgi, pois as vezes acho que estou fazendo o correto mais sabe como é.

      Abraço!!!!

    • #10121
      ronaldodavi
      Participante

      Para que funcione como você esta desejando e necesesario se criar no DNS interno do AD estas rotas.

      ===================================================================================

      o banco fica na rede local (192.168.0.10). porta 5230

      Foi configurado um NAT no EFW: Tudo que chegar no endereço 200.200.200.200:5230 traduzir para 192.168.0.10:5230


      Não traduzir mas emcaminhar!

      ===================================================================================

      ao acessar ele pela rede local, o computador da local (192.168.0.100) mostra erro na conexão com o 200.200.200.200.:5230


      O IP Local pergunta ao DNS da rede pela rota do ip 200.200.200.200 que retorna para um op local e isso nao funciona de forma simples

      de onde deseja acessar da um ping 200.200.200.200 o que nao vai acontecer

      ===================================================================================

      O acesso externo está ok.

      Só dá erro se o gateway do computador local 192.168.0.100 não estiver configurado com o ip do EFW.


      Isso e meio logico o ip da rede esta no firewall e o DNS consegue acessar o que nao vai correr com o DNS do AD que deve ser o provavel dns dessa rede.

      ====================================================================================

      Aqui e mais conceito de Rede do que firewall mesmo.

      Se a aplicação e WEB e roda dentro da rede interna toda configuração tem que ser feita com ip local e os acessos externos se dao pelo redirecionamento.

      ======================================================================================

      Tenho um redirecionamento (NAT) ip externo 200.x.x.x:5230 (porta de um banco de dados) para ip interno 192.168.0.x:5230

      Não consigo acessar pela rede local 192.168.0.0 a aplicação. Erro informa que não encontrou o 200.x.x.x:5230 …

      O gateway da rede interna é o ip do firewall… Se mudo o gateway funciona.

      Parece simples… mas estou agarrado nesta.

      Podem me ajudar, por favor ?


      Finalizando pode ser qualquer firewall ate mesmo feito na unha total nao vai funcionar pois os conceitos de configuração esta errados!

    • #10122
      darciost
      Participante

      Primeiramente obrigado a todos pelas contribuições…estou passando por situação similar ao do amigo Ananias, vou seguir pesquisando um pouco mais e caso precise de ajuda, solicito a comunidade..

      Bem, estou usando o endian há pouco tempo e realmente ele é fantástico.

      Sobre esta necessidade do Ananias, na distro BrazilFW (que eu usava até umas semanas atrás) bastava marcar uma opção “Permitir acesso interno” (ou algo muito parecido se não me falha a memória) ao criar uma regra portforward. Feito isso, buscando de dentro da rede o endereço xxxx.dyndns.org:9999 ele apontava para o endereço interno, sendo uso de alguns serviços da rede transparente para usuários que usam notebooks. (por exemplo, quem acessa de casa algum serviço como jabber, openfire, etc…).

      Será que alguém já viu esta opção?

      Abs,

Visualizando 20 respostas da discussão
  • O tópico ‘Externo ok – Interno não’ está fechado para novas respostas.