Compartilhamento de internet

Publicado por Paulo Camboim em 03/06/2005

[ Hits: 24.990 ]

 


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

Montando partição Windows automaticamente

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

Ao instalar KDE4 no Debian Lenny startx não funciona [solução]

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

Armazenar e compartilhar códigos em diversas linguagens

Leitura recomendada

Letras pequenas em sites WEB com Mozilla

Firefox em português no Ubuntu

Como proteger arquivos enviados ao RapidShare ou MegaUpload contra expiração

Achando MP3, e-books e muito mais no Google

Obra de arte: Tux em ASCII

  

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
[email protected]

[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
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts