Compartilhar internet no Linux com 01 (uma) placa de rede

Posted by Postado por TECNOLOGIA EM APLICAÇÕES On 12:32

By Jose Renato – [phahok][arroba][gmail][ponto][com]

Bom pessoal, nessa dica irei descrever um modo fácil e rápido de como compartilhar a Internet, com um única placa de rede que está num servidor Linux, para uma estação de trabalho Linux ou Windows, Siga os passos abaixo,

(1) No servidor Linux temos:
* ethX = Essa placa conecta o servidor Linux a internet e conectar ao mesmo tempo a estação Linux ou Windows atraves de um HUB.
* ethX = Se conecta ao servidor Linux (onde X corresponde a interface que conectar a internet )
Verifique no servidor Linux qual a interface ativa pelo comando:

# ifconfig
Depois disso vamos liberar o acesso com o iptables:

# modprobe iptable_nat
Esse comando levanta os modulos necessários para fazer NAT (Compartilhar internet)

# iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE
Esse comando vai direcionar tudo que chega na ethX (a internet) para a estação conectada.

# iptables -t filter -P FORWARD ACCEPT
Esse comando aqui é bastante importante, pois é ele que autoriza o comando acima. Sem ele nada irá funcionar.

# echo > 1 /proc/sys/net/ipv4/ip_forward
Com esse comando você estará ativando o roteamento na sua máquina.

(2) Configurando a estação de trabalho Linux/Windows:

Você precisa configurar manualmente as configurações TCP/IP de sua placa de rede, segue um exemplo:

IP = 192.168.0.X ( Onde X ip da estação atribuido por você )
Subnet Mask = 255.255.255.0
Default Gateway = 192.168.0.X (esse Gateway se refere ao Servidor Linux)
Dns Primário = xxx.xxx.xxx.xxx (DNS DO SEU PROVEDOR DE INTERNET)
Dns Secundário = xxx.xxx.xxx.xxx
(DNS DO SEU PROVEDOR DE INTERNET)

Para não ser preciso digitar esses comandos toda vez que o servidor for iniciado, uma forma é rodar automaticamente colocando dentro do arquivo /etc/rc.local ou criar um script na inicialização.

(3) Código Script inicialização

Criar seu script dentro da pasta /etc/init.d
Exemplo:
# nano /etc/init.d/meuscriptinternet
-------------------------------------------------------------
#!/bin/bash

modprobe iptable_nat
iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE
iptables -t filter -P FORWARD ACCEPT
echo > 1 /proc/sys/net/ipv4/ip_forward

-------------------------------------------------------------

Agora é só dar a permissão para execução:

# chmod 755 /etc/init.d/meuscriptinternet

Quase pronto, agora é só colocar para inicializar junto com o sistema:

# update-rc.d meuscriptinternet defaults

(4) Incluindo no arquivo /etc/rc.local

#nano /etc/rc.local
modprobe iptable_nat
iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE
iptables -t filter -P FORWARD ACCEPT
echo > 1 /proc/sys/net/ipv4/ip_forward


Esta ai o compartilhamento com apenas uma única placa de rede!.