Redirecionar Porta 80 para um micro ?

1. Redirecionar Porta 80 para um micro ?

Fernando
ferdead

(usa Ubuntu)

Enviado em 13/04/2011 - 13:50h

Olá !

estava querendo fazer uma regra para redirecionar todo o trafego da porta 80 de um determinado IP, para o meu servidor com APACHE, em uma página específica. por exemplo:


192.168.1.20 (micro da rede) vai acessar a internet...
192.168.1.254 (meu servidor gateway) vai pegar essa conexão e redirecionar para uma página "http://192.168.1.254/acesso_negado.htm"

como ficaria essa regra no IPTABLES ?
ai precisaria habilitar essa regra quando eu quiser, e desabilitá-la depois...


  


2. Re: Redirecionar Porta 80 para um micro ?

brunotec
brunotec

(usa Debian)

Enviado em 13/04/2011 - 16:15h

estou tentando fazer algo parecido como o que vc quer fazer cara,

http://www.vivaolinux.com.br/topico/Squid-Iptables/Redirecionar-trafego-externo-para-9080

a principio a regra seria essa:


iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 9080


onde 9080 seria a sua porta do apache.


3. Re: Redirecionar Porta 80 para um micro ?

Fernando
ferdead

(usa Ubuntu)

Enviado em 13/04/2011 - 22:42h

pelo jeito essa regra redireciona todas as conexão para a porta...

eu quero que apenas 1 IP (192.168.1.20) seja redirecionado para 192.168.1.254, na porta 80.

e depois eu quero saber também, como tira essa regra....


4. Simples

Wilker Azevedo
cytron

(usa Slackware)

Enviado em 14/04/2011 - 10:09h

É bem simples...

iptables -t nat -I PREROUTING -s 192.168.1.20 -p tcp --dport 80 -j REDIRECT --to-port 3128

Tudo que vier do IP indicado como "source" (-s) chegando na porta 80 será redirecionado para 3128.

Para retirar essa regra basta substituir -I (insert) por -D (delete)


5. Re: Redirecionar Porta 80 para um micro ?

Fernando
ferdead

(usa Ubuntu)

Enviado em 14/04/2011 - 14:27h

Cytron,

é quase isso... fiz os testes aqui não deu muito certo...

vou explicar melhor o que eu estou precisando para vcs poderem ajudar...

essa parte do "acesso negado" até deu certo, mas estou precisando de montar um script melhor...

usando essa mesma função gostaria de fazer assim:

tenho um pequeno provedor de internet, no meu gateway (192.168.1.254), tenho instalado o apache, com a porta 8090 servindo uma página assim "estamos com problemas técnicos".

fiz um script que verifica a conexão com a internet, e quando ela cair, gostaria que todo o acesso da rede fosse redirecionado para o site que está no gateway (192.168.1.254:8090).

pelo teste que eu fiz aqui, só funcionou quando o cabo da rede estava ligado, quando eu desliguei o cabo de rede do servidor, ele não aparece o site "estamos com problemas..." e o browser fica tentando conexão até dar "a página não pode ser exibida"

o que vocês sugerem pra mim fazer nesse caso ?


6. Re: Redirecionar Porta 80 para um micro ?

Ricardo Lino Olonca
ricardoolonca

(usa Debian)

Enviado em 14/04/2011 - 14:57h

Cara, não dá prá fazer isso de forma automática somente com iptables.

Uma solução seira roda um script no teu gateway que ficasse tentando acessar a porta 80 do teu server. Você poderia usar o httping para isso:

httping -h 172.20.16.60 -p80 -c 1

Após o comando, teste a variável $?. Se for 0, o site está no ar. Se for diferente de 0, então o teu script deve ativar a regra direcionando o tráfego para a porta 8090, que já foi explicado como fazer.




7. Re: Redirecionar Porta 80 para um micro ?

brunotec
brunotec

(usa Debian)

Enviado em 14/04/2011 - 15:02h

iptables -t nat -I PREROUTING -s 192.168.1.20 -p tcp --dport 80 -j REDIRECT --to-destination 192.168.1.254:8090

acho que seria isso



8. Re: Redirecionar Porta 80 para um micro ?

Fernando
ferdead

(usa Ubuntu)

Enviado em 14/04/2011 - 15:20h

Bruno, o comando que você postou, deu erro:
# iptables -t nat -I PREROUTING -s 192.168.1.20 -p tcp --dport 80 -j REDIRT --to-destination 192.168.1.254:8090
iptables v1.4.4: unknown option `--to-destination'
Try `iptables -h' or 'iptables --help' for more information.

Maionese, achei legal esse httping, não conhecia... mas eu já tenho um script que verifica se a conexão está ativa ou não...

eu preciso apenas da regra do iptables para quando cair a conexão, todo o trafego gerado na rede interna e NAO APENAS em 1 micro mais, seja transferido para o apache no endereço 192.168.1.254:8090.

obrigado!


9. Re: Redirecionar Porta 80 para um micro ?

brunotec
brunotec

(usa Debian)

Enviado em 14/04/2011 - 15:26h

Bruno, o comando que você postou, deu erro:
# iptables -t nat -I PREROUTING -s 192.168.1.20 -p tcp --dport 80 -j REDIRT --to-destination 192.168.1.254:8090
iptables v1.4.4: unknown option `--to-destination'
Try `iptables -h' or 'iptables --help' for more information.


veja que vc digitou errado "REDIRT"


é REDIRECT


10. Re: Redirecionar Porta 80 para um micro ?

Fernando
ferdead

(usa Ubuntu)

Enviado em 14/04/2011 - 15:39h

# iptables -t nat -I PREROUTING -s 192.168.1.101 -p tcp --dport 80 -j REDIRECT --to-destination 192.168.1.254:8090
iptables v1.4.4: unknown option `--to-destination'
Try `iptables -h' or 'iptables --help' for more information.

mesmo erro...


11. Re: Redirecionar Porta 80 para um micro ?

brunotec
brunotec

(usa Debian)

Enviado em 14/04/2011 - 15:50h

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.1.254:8090


foi mal, acho que seria isso


12. Re: Redirecionar Porta 80 para um micro ?

Wilker Azevedo
cytron

(usa Slackware)

Enviado em 14/04/2011 - 22:21h

Uma vez passei por um problema semelhante:

Minha intenção era redirecionar para o aviso quando o usuário tentasse abrir qualquer url
O navegador ficara aguardando resposta até retornar um erro.

Descobri que o servidor primeiro tentava resolver o domínio (dns), mas como não tinha net, não resolvia kkkkk.

A solução foi colocar um servidor dns local.



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts