Carlos Eduardo de Andrade escreveu:
> Desculpe a duplicata, mas acho que me expressei mal no último mail.
> Por isso, tomei a libertade de reescrevê-lo:
> Olá pessoal,
> Preciso de um guia rápido que me diga como ligar e desligar o
> roteamento entre redes. Tenho o seguinte ambiente:
> lab1 -------- eth0 |
> servidor eth2 ---- rede externa (internet)
> lab2 -------- eth1 |
> ou seja, tenho um servidor com 3 placas de rede, onde uma placa é a
> saída p/ internete e as outras duas são sinais de laboratórios de
> informática. Quero fazer um script em PHP, tal que um usuário
> autorizado possa ligar e desligar o roteamento de um laboratório p/
> internet.
> Não posso simplesmente derrubar a interface, já que os usuários dos
> laboratórios autenticam no servidor e o usam como servidor de
> arquivos.
> Gostaria de obter também o seguinte comportamento: as redes dos labs
> em 10.xxx.xxx.xxx ou 172.xxx.xxx.xxx e o servidor fazendo um NAT p/
> rede externa (192.168.xxx.xxx). As vezes, acontece de se mudar o
> endereço IP de uma das máquinas dos labs, digamos, p/ rede
> 192.168.xxx.xxx. Existe uma maneira de impedir que este IP consiga
> fazer o NAT, e mesmo, acessar qualquer outro recurso da rede?
> Alguém pode me sugerir uma solução ou um guia onde possa fazer isso
> rapidamente? Muito obrigado.
> []s
> Carlos
>
Olá,
Execute o comando:
# iptables-save
Verá suas regras de forma um tanto quanto claras. Você deve ter
uma regra de nat/postrouting para cada rede, informada através de -s, veja:
NAT:
-A POSTROUTING -s 10.0.0.0/255.0.0.0 -o eth2 -j MASQUERADE
-A POSTROUTING -s 172.xxx.0.0/255.255.0.0 -o eth2 -j MASQUERADE
-A POSTROUTING -j REJECT
No filter/forward deve ter:
FILTER:
-A FORWARD -i eth0 -o eth2 -s 10.0.0.0/255.0.0.0 -j ACCEPT
-A FORWARD -i eth1 -o eth2 -s 172.x.0.0/255.255.0.0 -j ACCEPT
-A FORWARD -i eth2 -o eth0 -d 10.0.0.0/255.0.0.0 -j ACCEPT
-A FORWARD -i eth2 -o eth1 -d 172.x.0.0/255.255.0.0 -j ACCEPT
-A FORWARD -j REJECT
Acho que o ideal seria atacar na regra acima, onde se não quiser que
a rede 10.0.0.0/8 navegue, troque os dois ACCEPTs correspondentes por
DROP ou REJECT, ou simplesmente apague as regras. O mesmo vale para a
rede 172.x.0.0/16. Se for interessante, libere o acesso de uma rede para
outra com as regras:
FILTER:
-A FORWARD -i eth0 -o eth1 -s 10.0.0.0/255.0.0.0 -d
172.x.0.0/255.255.0.0 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -s 172.x.0.0/255.255.0.0 -d
10.0.0.0/255.0.0.0 -j ACCEPT
Leia um pouco sobre iptables e depois volte a questionar.
--
Atenciosamente,
Junior Polegato
Um peregrino de problemas; Um pergaminho de soluções!
Página Profissional: http://www.juniorpolegato.com.br
---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html