Você está na página 1de 16

COMPARTILHAMENTO DE INTERNET LINUX COM WINDOWS

Onde o Linux fornecer internet para as estaes de trabalho Windows. Porem se a maquina Linux estiver desligada as estaes de trabalho Windows ficariam sem internet. Antes de Comear quero mostrar uma breve explicao de como esta fazendo isto pelo virtual box. No caso de no entender como funciona esses adaptadores de rede.. De uma olhada neste neste artigo abaixo:

Rede no VirtualBox
Para comear, no VB possvel configurar at quatro adaptadores de rede diferentes em cada computador virtual. como se eu tivesse um PC com at quatro "placas de rede" disponveis, timo para testar gateways, proxies e roteadores, por exemplo.

Configurao das interfaces de rede do VirtualBox.

Indo mais alm, cada um destes adaptadores virtuais pode operar de cinco formas diferentes e independentes um do outro:

No conectado
O adaptador est instalado, mas simula que o cabo est desconectado. Veremos que o loopback e o localhost, assim como as configuraes TCP/IP estaro disponveis.

NAT
Esse o modo padro do VirtualBox, quando ele toma emprestada a conexo do host com a Internet e a entrega para o guest. Todo o restante da rede fica transparente para a VM, mas acessamos a Internet nela normalmente, inclusive com IP automtico, fornecido por um DHCP - Dynamic Host Configuration Protocol - prprio do VirtualBox.

Placa em modo bridge


Neste modo o adaptador faz uma ponte com a interface "real" do host, conectando-se diretamente rede deste. Passamos a ter mais um computador na rede do host, inclusive obtendo IP dinamicamente, caso a rede possua essa capacidade. Teremos uma rede entre host, guest e todos os equipamentos da rede como modem, switch, proxy, gateway padro, etc...

Rede interna
Aqui o VirtualBox monta uma rede totalmente virtual entre todas as mquinas virtuais que esto em funcionamento, independente da rede real ou do host. timo para estudar e testar redes sem interferir na rede "verdadeira". Lembre-se que neste modo o VirtualBox no disponibiliza o DHCP, portanto as configuraes TCP/IP devem ser feitas manualmente.

Placa de rede exclusiva do hospedeiro (host-only)


Este modo um pouco mais complexo: ele faz uma rede entre a interface "real" do host e as mquinas virtuais, mas no d acesso rede "real" em que o host est conectado, ou seja, o host se comunica com as VMs e vice-versa, mas as VMs no se comunicam com outros computadores da rede "real" do host. um hbrido entre "Placa em modo bridge" e "Rede interna".

Prrequisitos para pratica desse tutorial. Saber utilizar maquina virtual no virtual Box ou vmware. Saber instalar ubuntu ou debian na maquina virtual. Ter um XP instalado na maquina virtual com a placa de rede como interna. Ter o ubuntu 10.4 instalado como 2 placas de rede, configuradas eth0 com Nat e como interna.

eth1

Na pratica o servidor estar ligado ao PC real como se fosse um modem e a placa de rede 2 (eth1) estar ligada a rede local.

Bom Agora que j deu para da uma clareada no assunto vamos ao que interessa!!!!

COMPARTILHAMENTO DE INTERNET LINUX COM WINDOWS


Vamos Seguir alguns passos adiante : Parte 1 - Configurao das placas de rede virtuais no virtual box. Passo 2 Configurao das placas de rede. Passo 3 - Instalao do servidor dhcp. Passo 4 - Depois de instalado o dhcp precisa ser configurado Passo 5 - O prximo passo ser alterar o arquivo de configurao do dhcp. Passo 6 - Script para inicializar o firewall e criar as regras e compartilhar a Internet. Passo 7 - Em Seguida da permisso de execuo para o arquivo (Script) Passo 8 - Inserir o comando para executar o script quando o sistema iniciar

Parte 1 - Configurao das placas de rede virtuais no virtual box.


- Ter o ubuntu 10.4 instalado como 2 placas de rede, configuradas eth0 com Nat e eth1 como interna. - Ter um XP instalado na maquina virtual com a placa de rede como interna.

Passo 2 Configurao das placas de rede.


CTRL + ALT + T Abrir o Terminal

Mudar Para Super Usurio # Ifconfig - Para Ver as Placa de Rede - Agora Vamos Alterar o arquivo de Configurao das Placas de Rede # gedit /etc/network/interfaces _____________________________________________________________________ ( Observao.: #Placa de Rede Primaria eth0 # A placa de rede vai iniciar automaticamente # auto eth0 # A interface eth0 recebera ip automaticamente do modem adsl # iface eth0 inet dhcp # Placa de rede segundaria eth1 ligada a rede interna. auto eth1 # A interface eth1 vai iniciar estaticamente iface eth1 inet static )

Arquivo /etc/network/interfaces
auto lo iface lo inet loopback #placa de rede primaria (externa) auto eth0 iface eth0 inet dhcp #placa de rede segundaria (interna x rede local) auto eth1 iface eth1 inet static address 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255

Feito Estas Configurao e S Salvar e Sair do Arquivo Interfaces Pronto Ficar Assim:

-- Prximo Passo e Reiniciar a Placa de Rede # /etc/init.d/networking restart -- No Final e s Verificar como Estas As Placa de Rede Novamente Digitando # Ifconfig

Fim da Configurao da Placa de Rede

Passo 3 - Instalao do servidor dhcp.


( Obs.: Sempre Logado Como Root # ) #sudo su (para logar como root) # aptget update(verificar atualizaes disponiveis) # aptget install dhcp3server

Passo 4 - Depois de instalado o dhcp precisa ser configurado


Vamos editar o arquivo abaixo e informar a placa de rede que ser utilizada pelo servidor dhcp. # gedit /etc/default/dhcp3server O servidor dhcp sera responsvel por distribuir ip para os clientes da rede. No arquivo dhcp3server vc precisa indicar qual placa de rede ser utilizada pelo servidor dhcp para distribuir os endereos para os clientes da rede.

Arquivo /etc/default/dhcp3server

# Defaults for dhcp initscript # sourced by /etc/init.d/dhcp # installed at /etc/default/dhcp3-server by the maintainer scripts # # This is a POSIX shell fragment # # On what interfaces should the DHCP server (dhcpd) serve DHCP requests? # Separate multiple interfaces with spaces, e.g. "eth0 eth1". # Na linha abaixo VC Indica qual a placa de rede que vai ser usada pelo dhcp server INTERFACES="eth1"

Agora e s Salvar o Arquivo e Sair..

Passo 5 - O prximo passo ser alterar o arquivo de configurao do dhcp.


Esse arquivo armazena as principais configuraes do bem comentado e pr-configurado. Caminho do diretrio # Cd /etc/dhcp3 Comando para editar o arquivo com o editor pico. # gedit dhcpd.conf

Explicao dos parmetros do arquivo.


Antes de comear a alterar o arquivo vc precisa entender alguns parmetros desse arquivo que so padro em qualquer servidor dhcp mesmo os da Microsoft onde vc no precisa edit ar arquivos e configura tudo em modo grfico. Subnet(numero ip da subrede) Netmask(numero ip da mascara de subrede) Range(faixa de ip que o servidor fornecera automaticamente) Option domainname(nome dos servidores de domnio, no usar) Option domainnameserver (ip dos servidores de domnio) Option routers (ip dos roteadores) Option broadcastaddress (ip de broadcast) Defaltleasetime ( tempo que o servidor empresta as configuraes depois disso ele checa se necessrio trocar) Maxleasetime (tempo Maximo que o servidor empresta o endereo) Agora vamos alterar nosso arquivo informando o ip do nosso servidor e fazendo as alteraes necessrias. Lembrese qual o numero ip da sua placa de rede eth1 ( a minha 192.168.1.1 com mascara 255.255.255.0 e a sua?) Vamos ao arquivo. O arquivo de configurao /etc/dhcp3/dhcpd.conf pode ficar da seguinte forma Nosso prximo passo ser tornar nosso servidor autoritrio. Para fazer isso vou precisar comentar toda a linha acima de authoritative e descontentar apenas a linha citada. # descomentar essa linha torna o servidor autoritario. authoritative:

Mos na massa.
gedit /etc/dhcp3/dhcpd.conf

Arquivo /etc/dhcp3/dhcpd.conf
# # Sample configuration file for ISC dhcpd for Debian # # Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as # configuration file instead of this file. # # $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy Exp $ # # The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) #ddns-update-style none; # option definitions common to all supported networks... #option domain-name "example.org"; #option domain-name-servers ns1.example.org, ns2.example.org; default-lease-time 600; max-lease-time 7200; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; # No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology. #subnet 10.152.187.0 netmask 255.255.255.0 { #} # This is a very basic subnet declaration. #subnet 10.254.239.0 netmask 255.255.255.224 { # range 10.254.239.10 10.254.239.20; # option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org; #} # This declaration allows BOOTP clients to get dynamic addresses, # which we don't really recommend. #subnet 10.254.239.32 netmask 255.255.255.224 { # range dynamic-bootp 10.254.239.40 10.254.239.60; # option broadcast-address 10.254.239.31; # option routers rtr-239-32-1.example.org; #}

#apenas as linhas abaixo serao utilizadas (ComputerServicesCompany_Daniel) # A slightly different configuration for an internal subnet. #indique a rede e a mascara que quer utilizar subnet 192.168.1.0 netmask 255.255.255.0 { #Quantos numeros voce que distribuir na rede range 192.168.1.11 192.168.1.200; #na linha abaixo insira o ip do seu servidor e do seu provedor de internet option domain-name-servers 192.168.1.1, 200.204.0.10, 200.204.0.138; # option domain-name "internal.example.org"; #insira abaixo o ip do gateway da rede option routers 192.168.1.1; #digite o endereco de broadcast da rede option broadcast-address 192.168.1.255; default-lease-time 600; max-lease-time 7200; } # Hosts which require special configuration options can be listed in # host statements. If no address is specified, the address will be # allocated dynamically (if possible), but the host-specific information # will still come from the host declaration. #host passacaglia { # hardware ethernet 0:0:c0:5d:bd:95; # filename "vmunix.passacaglia"; # server-name "toccata.fugue.com"; #} # Fixed IP addresses can also be specified for hosts. These addresses # should not also be listed as being available for dynamic assignment. # Hosts for which fixed IP addresses have been specified can boot using # BOOTP or DHCP. Hosts for which no fixed address is specified can only # be booted with DHCP, unless there is an address range on the subnet # to which a BOOTP client is connected which has the dynamic-bootp flag # set. #host fantasia { # hardware ethernet 08:00:07:26:c0:a5; # fixed-address fantasia.fugue.com; #} # You can declare a class of clients and then do address allocation # based on that. The example below shows a case where all clients # in a certain class get addresses on the 10.17.224/24 subnet, and all # other clients get addresses on the 10.0.29/24 subnet. #class "foo" { # match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; #} #shared-network 224-29 { # subnet 10.17.224.0 netmask 255.255.255.0 { # option routers rtr-224.example.org; # } # subnet 10.0.29.0 netmask 255.255.255.0 { # option routers rtr-29.example.org; # } # pool { # allow members of "foo"; # range 10.17.224.10 10.17.224.250; # } # pool { # deny members of "foo"; # range 10.0.29.10 10.0.29.230; # } #}

-- Agora Basta Salvar o Arquivo e Sair Para reinicializar o servio, digitar o comando /dhcp3# /etc/init.d/dhcp3-server restart Vc precisa reiniciar o servidor por garantia. # init 6 ou reboot O servidor dhcp esta configurado agora vamos testar. Observao a internet ainda no esta compartilhada, apenas o dhcp esta funcionando com esses procedimentos.

Parte 6 Iniciar a o XP para testar o servidor dhcp.


Inicie o Windows XP no virtual box. Verifique se a placa de rede esta configurada como interna. Na barra inferior do virtual Box.

Inicie o Windows XP virtual. Se estiver tudo ok o Windows XP deve ter recebido o ip de acordo com o que foi configurado no servidor. No XP clique em iniciar > executar > cmd

Digite no pronpt de comando Ipconfig /all

Agora e s Criar o Script para inicializar o firewall e criar as regras e compartilhar a internet.
Vamos Criar um Arquirvo Chamado meu_firewall Voc pode salv-lo como por exemplo: /usr/local/bin/meu_firewall Primeiro Vamos entrar no diretrio # cd /usr/local/bin Dentro da Pasta BIN digite: /bin# gedit meu_firewall Quando Abrir o editor com o arquivo meu_firewall Nele Temos que Criar o Script

Arquivo meu_firewall
#!/bin/sh echo "script de compartilhamento da internet" #carregar os modulos modprobe iptables modproble iptable_nat #compartilhar a conexao modprobe iptable_nat iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forward #para proteger contra pacotes danificados iptables -A FORWARD -m unclean -j DROP #abrir algumas portas (opcional) iptables -A IMPUT -p tcp --destination-port 1080 #abrir a rede local para acessar a rede externa iptables -A IMPUT -p tcp --sys -s 192.168.1.1/255.255.255.0 -j ACCEPT

Salvando o arquivo dentro da pasta: /usr/local/bin/ Com o nome abaixo como descrito no inicio do script meu_firewall Depois de ter criado o arquivo vc precisa delegar permisses de execuo para o arquirvo ento digite: chmod +x /usr/local/bin/meu_firewall

AGORA VC PRECISA FAZER COM QUE ESSE ARQUIVO POSSA SER EXECUTADO DURANTE O BOOT Voce Precisa pegar um arquivo do Sistema que chama rc.local que fica dentro da pasta ETC # gedit /etc/rc.local

Arquivo /etc/rc.local
#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. # inserir a linha de comando para executar o script quando o sistema iniciar # essa linha chama o arquivo meu firewall durante o boot /usr/local/bin/meu_firewall exit 0

--Depois de ter colcado essa linha de comando no arquirvo e s salvar e sair. Vc precisa reiniciar o servidor por garantia. # init 6 ou reboot

Depois Acesse a Maquina Cliente XP entrem no navegador e apertem F5 para Atualizar a Pagina.....

FIM

Alguns Comando Uteis Para derrubar uma Placa de Rede # ifdown eth1 Para Subir a Placa de Rede # ifup eth1 Para Mover Algum arquirvo para outro diretrio mv exemplo.txt /var/www/exemplo.txt
Daniel Araujo

http://computerinfodicas.blogspot.com.br