IPtables redirecionar e bloquear porta MySQL

1. IPtables redirecionar e bloquear porta MySQL

Evandro
evandrosantos

(usa Debian)

Enviado em 28/01/2009 - 14:57h

Saudações a todos, sou novato em IPtables e também no fórum, portanto se estiver postando em fórum errado por favor me corrijam...

Tenho um server de banco de dados onde roda o MySQL.
Pois bem, gostaria de saber se existe uma forma de redirecionar as solicitações de uma porta, 12345 por exemplo, para a porta padrão do MySQL mas ao mesmo bloquear as solicitações feitas diretamente na porta 3306.

Estava tentando da seguinte maneira:

iptables -A INPUT -p tcp --dport 3306 -j REJECT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 12345 -j REDIRECT --to-port 3306

Desta forma ele está bloqueando as solicitacoes nas duas portas.

Estou procurando uma solução desde as 8 da manhã de hoje e até agora nada, se alguém tiver alguma sujestão agradeço muito.

PS: sei que se eu quero rodar o MySQL devo alterar os arquivos de configuração do mesmo, mas no meu caso se torna inviável.

Abraços a todos.


  


2. >>>

William Forti Bueno
ventrue.w

(usa Debian)

Enviado em 28/01/2009 - 15:26h

Amigo, com esse comando

iptables -A INPUT -p tcp --dport 3306 -j REJECT

Voce bloqueou a porta 3306 geral.. Sendo assim uma vez bloqueada, o comando de baixo nao surtira efeito.. Pois ele tentara redirecionar e chagara na porta 3306 estara fechada...

O pq de vc bloquear a porta 3306... Se vc redirecionar a porta 12345 para a 3306 esta resolvido.. ou não??
Se vc tem de ter tal porta ouvindo mesmo...!!! O pessoal ira acessar de qualquer maneira pois o iptables estra redirecinando...











3. Re: IPtables redirecionar e bloquear porta MySQL

Evandro
evandrosantos

(usa Debian)

Enviado em 28/01/2009 - 15:40h

Amigo, agradeço a resposta.

Na real, a minha intesão era redirecionar as solicitações da porta e bloquear a 3306 por questões de segurança mesmo. Sei que as solicitações poderão ser feitas na porta 12345 mas somente os desenvolvedores da empresa que teriam acesso a isso.

Se tiver alguma outra maneira de ser feito tb agradeço.


4. Re: IPtables redirecionar e bloquear porta MySQL

Rafael
rrafael

(usa Debian)

Enviado em 28/01/2009 - 15:46h

Fala cara blz..

Nao tem como.. por que voce nao coloca um firewall na frente e faz um nat?!!


5. Re: IPtables redirecionar e bloquear porta MySQL

Evandro
evandrosantos

(usa Debian)

Enviado em 28/01/2009 - 15:54h

me desculpe a ignorância mas não sei como fazer isso


6. Re: IPtables redirecionar e bloquear porta MySQL

Rafael
rrafael

(usa Debian)

Enviado em 28/01/2009 - 19:47h

Olha so.. a maquina que tem o SQL esta junto com o firewall? Como esta sua rede?

Tipo voce tem um servidor de inteenet?


7. Re: IPtables redirecionar e bloquear porta MySQL

Elgio Schlemer
elgio

(usa OpenSuSE)

Enviado em 28/01/2009 - 20:44h

O problema é que um fluxo de dados passa primeiro pelo nat/PREROUTING e só depois passa pelo INPUT. Logo, teu INPUT pegará o pacote já alterado.

Tem algumas gambiarras para contornar isto:

1) Usando DROP no PREROUTING (ele não aceita REJECT)

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 3306 -j DROP
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 12345 -j REDIRECT --to-port 3306

Assim pacotes que vierem para a porta 3306 serão DROPADOS. Se vier para a 12356 terão a porta trocada para 3306 mas ai já passou pela regra que bloquearia, captou? (e NÃO use e regra que bloqueia no INPUT)

2) usando um REDIRECT para uma porta inválida:
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 3306 -j REDIRECT --to-port 0
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 12345 -j REDIRECT --to-port 3306

porta 0 é inválida. Nem precisa bloquear a porta 0 no INPUT, pois a própria pilha irá responder com erro.







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts