Compartilhamento de internet

Publicado por Paulo Camboim em 03/06/2005

[ Hits: 26.967 ]

 


Compartilhamento de internet



Bom pessoal, nessa dica irei descrever um modo fácil e rápido de como compartilhar a Internet, que está num servidor Linux, para uma estação Windows, descrevendo os passos a serem seguidos tanto no Linux quanto no Windows. Vamos lá!!

No servidor Linux temos:
  • eth0 = Essa placa conecta o servidor Linux com a estação Windows;
  • eth1 = Essa placa conecta o servidor Linux a internet;

Na estação Windows temos:
  • eth0 = Se conecta ao servidor Linux;

(1) Configurando o servidor Linux:

Primeiro vamos setar o IP da placa de rede que se conecta à estação Windows (eth0), para isso usamos o comando abaixo:

# ifconfig eth0 192.168.0.1

Feito isso o IP da placa de rede eth0 passará a ser 192.168.0.1.

Depois disso vamos liberar o acesso com o iptables:

# iptables -A POSTROUTING -t nat -s 192.168.0.2 -o eth1 -j MASQUERADE

Esse comando vai direcionar tudo que chega na eth1 (a internet) para o IP 192.168.0.2 (que no nosso caso é da máquina Windows).

# 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 Windows:

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

IP = 192.168.0.2
Subnet Mask = 255.255.255.0
Default Gateway = 192.168.0.1 (esse Gateway se refere a minha máquina Linux)
Dns Primário = xxx.xxx.xxx.xxx (DNS DO SEU PROVEDOR)
Dns Secundário = xxx.xxx.xxx.xxx (DNS DO SEU PROVEDOR)

Pronto, com isso ficou resolvido meu compartilhamento! =)

Outras dicas deste autor

Uso exagerado de CPU ao abrir pastas contendo vídeos no Dolphin/Konqueror

Pidgin - Recebendo mensagens offline

Armazenar e compartilhar códigos em diversas linguagens

nohup: abrindo mais de uma aplicação usando o mesmo terminal

VMware - Instalando no Ubuntu Linux 8.10 e resolvendo problema "Unable to build the vmmon module"

Leitura recomendada

Opera - Instalação em poucos passos no Ubuntu

Como gerenciar sua conta Twitter via linha de comando

Guia do Hardware: eBooks

Monitorando sua conexão discada

Configuração da conexão PPPOE no Linux

  

Comentários
[1] Comentário enviado por filype em 23/10/2005 - 22:34h

parabens red_alert, ótima dica!

[2] Comentário enviado por filype em 25/10/2005 - 21:21h

Apenas uma correcao, na ultima linha acredito q tenah sido um erro na digitacao, pois o correto seria:

echo 1 > /proc/sys/net/ipv4/ip_forward


att,
filype

[3] Comentário enviado por wernon em 12/04/2006 - 18:09h

Blz cara entendi!...sou novo no assunto, sei instalar o speedy e compartilhar a net no windows.
Por tanto no windows XP eu crio uma conexão e compartilho a mesma.

No caso do linux eu tbm teria que criar uma conexão e depois compartilhar? ou soh isso ai q vc passou ja resoveria?

Obrigado, sem mais Wernon

[4] Comentário enviado por priest em 21/05/2006 - 10:05h

Gostaria de saber se é uma regra ou eu posso compartilhar a internet no ubuntu 5.10 utilizando apenas a eth1 ? pq eu consigo "enxergar" outras máquinas windows através da eth1 utilizando as configurações: Ip: 192.168.0.1 e mask: 255.255.192.0 e consigo acessar a internet pelo ubuntu tb, só falta agora compartilhar com os outros, eu uso dual boot com Xp e neste consigo partilhar a internet com as outras máquinas usando como servidor proxy num modem ADSL, como devo proceder para usar o ubuntu como proxy e partilhar da forma como faço no Xp ou tem outra forma?

[5] Comentário enviado por paulocamboim em 21/05/2006 - 12:59h

priest, eu nao sei como fazer isso ae, do proxy. Malz kra

[6] Comentário enviado por priest em 24/05/2006 - 10:19h

q pena que vc nao saiba paulo, mas irei procurar e quando encontrar colocarei aqui o procedimento!

[7] Comentário enviado por satoshi em 15/06/2006 - 15:00h

Muito boa a dica!!!!
Após um tempo tentando encontrar algum artigo que realmente funcionasse, me deparei com a sua dica, digitei os comandos....e funcionou!!!!

Valew

[8] Comentário enviado por _cabelo_ em 26/06/2006 - 14:05h

cara vc salvou muito tempo de trabalho meu já fazia um dia que tava tentando rotear minha net graças a vc consegui

valew

[9] Comentário enviado por ferbass em 31/07/2006 - 20:55h

vlw cara ajudo pacas
XD

[10] Comentário enviado por rodolfoduarte em 02/09/2006 - 01:51h

eu não estou conseguindo ... ubuntu 6.06
digito tudo exatamento como vc descreveu ...
e não dá certo . =(
pq será ?
percebi que ao digitar o comando
# echo > 1 /proc/sys/net/ipv4/ip_forward

não está alterando o valor de 0 para 1 .
pode ser isso ?
como faço pra mudalo ?

[11] Comentário enviado por paulocamboim em 02/09/2006 - 04:02h

O comando na verdade eh esse, foi apenas um erro de digitacao como um amigo acima, notou
echo 1 > /proc/sys/net/ipv4/ip_forward

Tente dessa maneira, e poste o resultado =)


[12] Comentário enviado por rodolfoduarte em 03/09/2006 - 02:46h

digitei como você falou e agora alterou o valor ...
mais mesmo assim não consigo acessar a internet do computador com windows .
eu poderia fazer mais alguma coisa ?
pq to tentando de tudo e nada :(



[13] Comentário enviado por rodolfoduarte em 03/09/2006 - 04:57h

conseguiii ... acho que estava errada a config do DNS do pc com windows .
toda vez q eu reinicio o pc com linux tem q reconfigurar tudo ???

tentei colokar os comandos no arquivo /etc/init.d/bootmisc.sh
mais quando vou salvar :

Você não tem permissão necessária para salvar este arquivo. Por favor, verifique se você digitou a localização corretamente e tente de novo.

tentei outros locais e tbm não consegui ...
tem outro jeito ?
agradeço desde já ;)

[14] Comentário enviado por Trextor em 15/01/2008 - 16:03h

Tal arquivo pode ser posto para iniciar juntamente com o sistema de forma automatica acrescentando uma chamada ao mesmo ao fim do arquivo /etc/rc.d/rc.local.

Vlw

[15] Comentário enviado por lionface em 21/07/2008 - 08:48h

Ok, mas e pra compartilhar para todas as maquinas na rede? Como faz?

[16] Comentário enviado por j4d50n1im4 em 29/11/2008 - 03:01h

caras.... vocês já ouviram falar no programa NETWORK-CONFIG ? Ele é super bacana... melhor que aquela podridão do NETWORK-MANAGER padrão do ubuntu, mint.... tenho 2 pc's aqui em casa... 1 com mint 6 recebendo a net via cabo (tenho 2 plcs de rede) e o outro com rwindows xp.... mas o chato é que não consigo salvar o compartilhamento da net, toda vez que reinicia tenho que abrir o programa e aplicar as configurações pra poder compartilhar a net.... como faço pra salvar definitivamente as configurações? compartilhar diretamente depois de iniciar o sistema?


falows!!!

[17] Comentário enviado por heathcliffz em 08/09/2009 - 14:56h

tah blz... mas se eu tiver mais de uma estação win? pq aí vc tah redirencionando tudo pra uma maquina específica... mas no meu caso seria...

modem velox -> pc linux: -> maquina win 1
-> maquina win 2

entao... dá pra fazer desse mesmo jeito? como?

[18] Comentário enviado por paulocamboim em 08/09/2009 - 17:17h

Heath,

nao sei como fazer, tenta dar um procurada em outros artigos...
t+

[19] Comentário enviado por profwilson em 12/01/2011 - 15:23h

Para funcinar corretamente crie um script para rodar no boot com as regras.

Para entrar na pasta
Digite: cd /usr/local/bin
Para criar o arquivo em branco
Digite: pico meu_firewall
As linhas de compartilhamento da conexão não conflitam com as regras de firewall que vimos anteriormente, você deve apenas ter o cuidado de colocá-las no inicio da seqüência. Neste caso nosso script completo ficaria assim:
#!/bin/sh
echo “Ativando o firewall”
# Carrega os módulos
modprobe iptables
modprobe iptable_nat

# Compartilha a conexão
modprobe iptable_nat
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

# protege contra pacotes danificados (usados em ataques DoS por exemplo) é:
iptables -A FORWARD -m unclean -j DROP

# Abre algumas portas (opcional)

iptables -A INPUT -p tcp --destination-port 22 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 1021 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 1080 -j ACCEPT

# Abre para a rede local, obs se vc estiver usando rede 192.168.0.1

iptables -A INPUT -p tcp --syn -s 192.168.0.0/255.255.255.0 -j ACCEPT

# Fecha o resto
iptables -A INPUT -p tcp --syn -j DROP

Se você quiser que o PC também não responda a pings, adicione a linha:
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

ctrl+o (salva)
ctrl+x (sai do editor)

Obs. O arquivo devera ser salvo dentro da pasta e caminho descrito:
/usr/local/bin/
Com o nome abaixo como descrito no inicio do script
meu_firewall

Parte 2 – Dar permissão de execução do arquivo de script.

Em seguida, dê permissão de execução para o arquivo
chmod +x /usr/local/bin/meu_firewall
Com isso o arquivo já tem premissão de execução.
Pata editar o arquivo para possíveis correções basta digitar:
pico /usr/local/bin/meu_firewall

Parte 3 – Usar um arquivo de inicialização do sistema para chamar o arquivo meu_firewall no boot.

Para tornar a inicialização realmente automática, você precisa apenas colocar o comando num dos arquivos de inicialização do sistema.
Lembre-ser vc precisa inserir o comando para executar o script quando o sistema iniciar.
Abra o arquivo /etc/rc.local e adicione a linha:
/usr/local/bin/meu_firewall

Digite: pico /etc/rc.local
Adicione a linha a abaixo antes do “exit 0”
/usr/local/bin/meu_firewall
Esse comando vai fazer com que o script seja executado junto com o boot.

No Debian e Kurumin você pode abrir o arquivo /etc/init.d/bootmisc.sh
E adicionar a mesma linha:
/usr/local/bin/meu_firewall

Esse ultimo passo obriga o script a ser inicializado no boot.
Referencia: http://www.guiadohardware.net/artigos/firewall-iptables/
Pdf de apoio no site HTTP://profwilson.orgfree.com
Professor_wil@yahoo.com.br.

[20] Comentário enviado por charlesfildes em 28/04/2012 - 11:13h

Muito facil! depois de tentar várias dicas eu fiz assim:

Tenho uma placa wireless e uma conexão de rede onboard que vai para a maquina ruindows.

Recebo a internet normal via dhcp pela placa wireless.
estou navegando normalmente.
Então clico em propriedades de rede e editar conexões.
Na aba com fio clico em conexoes e editar.
Na aba 1pv4 clique em metodo e selecione compatilhar com todos os computadores.
reboot
no ruindows coloque para reparar conexão e pronto.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts