Compartilhando a Internet e mascarando IPs no Debian
Dica publicada em Linux / Internet
Compartilhando a Internet e mascarando IPs no Debian
Vamos considerar que você tenha um link ADSL com o modem roteado ligado no firewall pela eth0 e do firewall a rede interna pela eth1.
eth0 - Internet
eth1 - Rede interna
ADSL ROUTER - 192.168.254.1 - eth0 - FIREWALL - eth1 - rede interna - 10.1.100.254
Pra quem usa o Debian, para ativar o compartilhamento é só entrar em "/etc/network/" e editar o arquivo "options". Eu uso o editor "joe":
# joe /etc/network/options
Altere a primeira linha, que é "ip_forward=no" para "ip_forward=yes", salve o arquivo.
Depois crie um diretório "firewall" em etc e entre nele:
# mkdir /etc/firewall
# cd /etc/firewall
Agora vamos criar um script de mascaramento de IPs para que possam acessar a internet.
Dentro do diretório "firewall", crie o script com o nome "masq":
# joe masq
E digite:
eth0 - Internet
eth1 - Rede interna
ADSL ROUTER - 192.168.254.1 - eth0 - FIREWALL - eth1 - rede interna - 10.1.100.254
Pra quem usa o Debian, para ativar o compartilhamento é só entrar em "/etc/network/" e editar o arquivo "options". Eu uso o editor "joe":
# joe /etc/network/options
Altere a primeira linha, que é "ip_forward=no" para "ip_forward=yes", salve o arquivo.
Depois crie um diretório "firewall" em etc e entre nele:
# mkdir /etc/firewall
# cd /etc/firewall
Agora vamos criar um script de mascaramento de IPs para que possam acessar a internet.
Dentro do diretório "firewall", crie o script com o nome "masq":
# joe masq
E digite:
#!/bin/bash
iptables -F
iptables -F -t nat
base_dir="/etc/firewall"
# Mascaramento Obs - Editar o arquivo "ips"
i=0
for IP in $(cat $base_dir/ips|grep -xv '^#.*'); do
iptables -t nat -A POSTROUTING -s $IP -j MASQUERADE
echo "Mascarando: $IP"
i=$(($i + 1))
done
echo "============="
echo "IPs Mascarados: $i "
echo "============="
iptables -F
iptables -F -t nat
base_dir="/etc/firewall"
# Mascaramento Obs - Editar o arquivo "ips"
i=0
for IP in $(cat $base_dir/ips|grep -xv '^#.*'); do
iptables -t nat -A POSTROUTING -s $IP -j MASQUERADE
echo "Mascarando: $IP"
i=$(($i + 1))
done
echo "============="
echo "IPs Mascarados: $i "
echo "============="
Salve o script e dê a permissão pra executar.
# chmod +x masq
Agora e só criar dentro do diretório "firewall" um arquivo que vai conter os IPs que devem ser mascarados:
# joe ips
E digite:
#ips liberados
10.1.100.2
10.1.100.3
10.1.100.2
10.1.100.3
Salve e rode o masq:
# ./masq
Aparecerá algo assim:
Mascarando: 10.1.100.2
Mascarando: 10.1.100.3
============
IPs Mascarados: 2
============
Primeira dica que funcionou aqui..
Eu uso Debian e não existia aquele arquivo /etc/network/options
Criei ele só com a linha "ip_forward=yes" e funcionou legal!
Agora só preciso de uma forma de controle de acesso por MAC
[ ]'s