Restringindo o acesso à Internet de alguns clientes da LAN a alguns sites usando um gateway do Ubuntu

4

Como devo limitar o acesso à Internet da maioria dos sistemas da minha LAN a alguns sites e bloquear todos os outros sites? Eu também gostaria de ignorar essas restrições para alguns sistemas. Todos os sistemas possuem endereços IP estáticos.

Eu testei o Dansguardian + squid em um sistema independente, mas como os usuários podem alterar os proxies em seus navegadores, essa solução não pode ser implementada. Enquanto navega, descobri que isso pode ser feito usando um sistema de gateway do Ubuntu entre o roteador e a LAN.

  

Equipe o sistema de gateway com duas placas de rede: uma para o roteador e outra para a LAN local.

Como devo fazer isso?

Por favor, forneça detalhes suficientes.

    
por ATR 04.12.2014 / 08:46

2 respostas

3

Eu configurei um sistema Ubuntu como um gateway entre uma LAN e um roteador ADSL. Das duas placas de rede eth0 está conectado ao roteador ADSL com o endereço IP 192.168.0.240 .

A interface eth0 (WAN) é configurada com as seguintes entradas:

IP - 192.168.0.239
Gateway - 192.168.0.240
DNS - 192.168.0.225
A interface

eth1 (LAN) é configurada com as seguintes entradas:

IP - 192.168.0.238
Gateway - 192.168.0.239
DNS - 192.168.0.225 

Por favor, note o endereço IP de eth0 é dado como o gateway para a outra interface eth1 . IP 192.168.0.225 é o nosso servidor DNS local interno que está configurado como servidor DNS em cache.

Edite o arquivo /etc/sysctl.conf para descomentar a linha net.ipv4.ip_forward=1 .

Faça o download do pacote webmin usando o seguinte comando:

wget http://prdownloads.sourceforge.net/webadmin/webmin_1.720_all.deb

Instale o pacote:

dpkg -i webmin_1.720_all.deb

Faça login no Webmin usando https://server-ip:10000 no seu navegador da Web.

Faça NAT em eth0 e clique em Setup firewall .

Você pode escrever um script de shell para criar acesso personalizado para sistemas na LAN.

vim /root/iptables.sh

#!/bin/bash
iptables -F
IP="3 6 7 13 14 17"
for i in 'echo $IP'
do
  # FTP server
  iptables -A FORWARD -s 192.168.0.$i -d 85.46.5.230 -j ACCEPT
  # Mail server
  iptables -A FORWARD -s 192.168.0.$i -d 93.34.3.220 -j ACCEPT
  iptables -A FORWARD -s 192.168.0.$i -j DROP
done
exit 0

Edite o /etc/rc.local para executar o script durante a inicialização

 /bin/bash /root/iptables.sh 

Ou então, você pode copiar o script para /etc/init.d/ e adicioná-lo aos scripts de inicialização:

sudo update-rc.d keys defaults

iptables -L listará as regras atuais do iptables.

Fontes:

por ATR 12.12.2014 / 13:54
3

A coisa básica a fazer é tornar o servidor do squid o gateway padrão em vez do seu roteador de Internet .

Basta adicionar uma placa de rede adicional ao squid do Ubuntu, trazendo-a para 2 placas de rede: 1 em sua LAN e 1 em seu roteador de rede. O lado da LAN agora obtém o endereço IP do gateway padrão (provavelmente 192.168.1.1) e o lado da WAN obtém um endereço IP automático do ISP.

Dessa forma, todo o seu tráfego de rede passa pelo servidor de squid antes de sair e pode bloquear qualquer coisa. Basta tratá-lo como uma máquina Ubuntu normal com um firewall e aconselho a não usar a lista negra, mas apenas coisas whitelist.

A única diferença é que você pode precisa adicionar algumas rotas manuais para dentro da sua rede, mas o padrão vai para o squid, que simplesmente descarta tudo que não está na lista branca ...

É tão simples assim!

    
por Fabby 08.12.2014 / 20:03