Acessar http da rede interna
Pessoal, já postei dois tópicos sobre isto, e qualquer um deles resolveria o meu problema:
https://under-linux.org/modules.php?...wtopic&t=38428
O meu problema é o seguinte...
Tenho um servidor http, de cameras de vigilância rodando em uma máquina com WinXP.
Fazendo a minha interface com a web, eu tenho um Debian, rodando apache e tudo legal.
Mas agora eu preciso disponibilizar este servidor http na web, seja isto feito pelo iptables, seja isto feito pelo Apache.
Nota:
Pelo Apache eu consegui, mas infelizente o programa instala algumas aplicações pelo navegador e isto eu não consegui fazer pelo apache. Nem em máquinas que já possuem o plugin instalado, ele roda. Ele começa a instalação mas retorna erro.
O software das cameras é o GeoVision 7.
Acessar http da rede interna
Seguinte cara tem como por pra ele rodar em alguma porta sem ser a 80?? que se desse era so fazer o redirecionamento dessa porta pro servidor interno e quando fosse acessar via browser digitar www.seusite.com.br:portainterna
falows
Acessar http da rede interna
Citação:
Postado originalmente por ruyneto
Seguinte cara tem como por pra ele rodar em alguma porta sem ser a 80?? que se desse era so fazer o redirecionamento dessa porta pro servidor interno e quando fosse acessar via browser digitar
www.seusite.com.br:portainterna
falows
Este não seria o problema, pois eu posso redirecionar a conexão por exemplo da 8081 para a 80 dele.
Eu não vou por ele direto na web (um WinXP direto na web??? Tenho medo!).
Eu vou passá-lo pelo meu firewall (iptables ai fico tranquilo), e re-enviar para ele.
Mas o mardito usas outras portas que ainda não consegui descobrir quais são.
Acessar http da rede interna
Citação:
Postado originalmente por edmafer
Citação:
Postado originalmente por ruyneto
Seguinte cara tem como por pra ele rodar em alguma porta sem ser a 80?? que se desse era so fazer o redirecionamento dessa porta pro servidor interno e quando fosse acessar via browser digitar
www.seusite.com.br:portainterna
falows
Este não seria o problema, pois eu posso redirecionar a conexão por exemplo da 8081 para a 80 dele.
Eu não vou por ele direto na web (um WinXP direto na web??? Tenho medo!).
Eu vou passá-lo pelo meu firewall (iptables ai fico tranquilo), e re-enviar para ele.
Mas o mardito usas outras portas que ainda não consegui descobrir quais são.
Cara mas mesmo que voce ponha na 8081 e redirecione pra 80 pelo apache ele em tese não vai fazer teste nenhum, so vai redirecionar e cabou, tava tendo uma outra discussão sobre isso em outro post e o que um cara falou que so colocando um snort ou algo assim pra analisar e depois bloquear o que fosse suspeito que funcionaria tranquilo ou restringir os ips de acesso.
falows
Acessar http da rede interna
E para descobrir as portas sugiro fazer uma conexão interna pra ele e por um ethereal monitorando, ae da de ver tudo que passa, entre portas e protocolos.
falows
Acessar http da rede interna
Uma pergunta:
Para eu fazer o redirecionamento, é somente necessário eu fazer o DNAT de ida e depois fazer um MASQUERADE dele para volta.
Correto?
Acessar http da rede interna
Citação:
Postado originalmente por ruyneto
Cara mas mesmo que voce ponha na 8081 e redirecione pra 80 pelo apache ele em tese não vai fazer teste nenhum, so vai redirecionar e cabou, tava tendo uma outra discussão sobre isso em outro post e o que um cara falou que so colocando um snort ou algo assim pra analisar e depois bloquear o que fosse suspeito que funcionaria tranquilo ou restringir os ips de acesso.
falows
Ops... Não vi um post.
Mas acontece o seguinte... redirecionando pelo apache, eu não preciso me preocupar com portas, pois o apache faz um proxy para mim até a máquina interna.
O meu problema é que pelo apache eu não consigo instalar o plugin necessário para a visualização dos videos.
Pelo iptables eu consegui acessar também (não testei externo ainda, mas interno funcionou), ele nem pediu para instalar programa (reconheceu o que eu já tinha aqui instalado), abriu a tela de login, mas depois ele fala que não conseguiu se conectar ao servidor.
Buscando na documentação e no site da GeoVision, eu vi que ele usa também as portas 4550 e 5550, fiz um dnat delas também, mas infelizmente ainda num deu.
Acesso externo ao http interno
Continuando...
Eu consegui fazer o redirecionamento pelo meu iptables. Mas acontece que o host tenta acessar o ip interno do servidor HTTP, desta forma só funciona se for dentro da rede.
E as máquinas externas?
Ai está a configuração que eu fiz:
camera=10.1.57.58
#Liberando acesso ao servidor HTTP Geovision
iptables -t nat -A PREROUTING -p tcp --dport 8081 -j DNAT --to $camera:80
iptables -A FORWARD -s $camera -p tcp --sport 80 -j ACCEPT
p2=4550
p3=5550
for i in
do
iptables -t nat -A PREROUTING -p tcp --dport $i -j DNAT --to $camera:$i
iptables -t nat -A POSTROUTING -p tcp -d $camera --dport $i -j MASQUERADE
iptables -A FORWARD -d $camera -p tcp --dport $i -j ACCEPT
iptables -A FORWARD -s $camera -p tcp --sport $i -j ACCEPT
done
Minhas regras padrões são DROP, com excessão dos outputs.
Acessar http da rede interna
ex:seu servidor linux é ip 200.200.200.200
sua maquina windows 192.168.0.1
a porta que a camera usa é 8080 pode ser qualquer porta
faz assim
iptables -t nat -A PREROUTING -d 200.200.200.200 -p tcp --dport 8080 -j DNAT --to 192.168.0.1:8080