torradeira.net



Milhares de dicas e tutoriais de informatica!

Flower

Compartilhando uma única conexão com vários computadores



2,548 acessos

Este documento foi escrito por Vinícius M. de Souza (irc.undernet.org #linuxbr). Revisão 0.1 de 31/08/2002

Este documento descreve como configurar os programas de firewall ipchains e iptables para compartilhar uma única conexão de internet com vários computadores. Não será abordado neste documento a utilização de firewall para o bloqueio de portas, nem o mascaramento FTP.

Conceito e uso do IP Masquerade

O IP Masquerade permite o uso de endereços IP reservados na rede interna com o Linux funcionando como gateway, traduzindo endereços IP e portas numa conexão com o mundo externo.

Por exemplo: uma máquina da rede local acredita que está se comunicando diretamente com outra localizada fora da rede, a máquina remota não tem nenhuma informação sobre a máquina local e acredita que está se comunicando diretamente com o Linux masquerade host. Por sua vez, o Linux masquerade host sabe que as duas máquinas estão conversando entre si e em quais portas e executa as traduções de portas e endereços IP necessários para a conexão entre as duas máquinas.

Num primeiro momento pode parecer meio confuso, porém a sua configuração é bem simples, não se preocupe se não entendeu todos os detalhes ainda.

Esse processo foi criado para permitir que um maior número de máquinas possam estar conectadas com a internet sem a necessidade de se designar um número maior de IPs públicos para a rede local.

Exemplo da Conexão

Configurando o Kernel

Para usar o masquerade no kernel 2.2 ele deve estar compilado com as seguintes opções:

Network options –>

  • Network firewalls
  • TCP/IP networking
  • IP: firewalling
  • IP: masquerading
    – Protocol-specific masquerading support wikk be built as modules.
  • IP: ipautofw masq support
  • IP: ICMP masquerading

    Já no kernel 2.4 o masquerade é habilitado pela opção “Network packet filtering”,
    como mostrado a seguir:

    Network options –>
    [M] Network packet filtering (replaces ipchains)

    Configuração do IP Masquerade

    Os seguintes comandos são usados para a configuração do masquerade, no primeiro temos
    para o kernel 2.2:

    [root@localhost /] # echo 1 > /roc/sys/net/ipv4/ip_forward
    [root@localhost /] # ipchains -P forward DENY
    [root@localhost /] # ipchains -A forward -s 192.168.1.0/24 -d 0/0 -j MASQ

    Já no kernel 2.4, temos como exemplo:

    [root@localhost /] # echo 1 > /roc/sys/net/ipv4/ip_forward
    [root@localhost /] # iptables -t nat -P POSTROUNTING DROP
    [root@localhost /] # iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

    Note que neste exemplo a interface de saída, isto é, a que possui a conexão com a Internet é a ppp0. Se você utiliza cable modem ou ADSL, coloque como interface de saída eth0 ou eth1, dependendo de qual delas possui a conexão direta com a Internet.

    Estou utilizando nestes exemplos a rede 192.168.1.0/24, que é o mesmo que 192.168.1.0/255.255.255.0 . Substitua esse valor pelo correspondente à sua configuração de rede.

    Configurando as Estações

    É indiferente se as estações da rede são Windows, Linux ou qualquer outro sistema operacional. Para que as estações consigam navegar na Internet através do gateway que você acabou de configurar, basta que você configure nos clientes o Default Gateway/Roteador padrão, colocado o endereço IP do teu servidor linux.

    Se você não configurou o servidor Linux para atuar também como um resolvedor de nomes (servidor DNS), você deve especificar nos clientes os endereços dos servidores primário e secundário do provedor que você utiliza.

    Testando a conexão das estações

    Você pode testar se o masquerading funcionou, indo no Prompt do DOS (se for Windows) ou na Console (se for Linux) e tentar “pingar” algum site ou até mesmo navegar pelo browser.

    Finalizando

    Pronto! Agora você já pode compartilhar a sua conexão de Internet com todos os computadores da sua rede.

    Simplificando as coisas

    Se você quiser além do roteamento, uma maior proteção ao seu servidor, faça download e instale o NetPSP. É um script em perl que fiz para automatizar uma configuração básica de firewall, com roteamento, bloqueio e redirecionamento de portas. Baixe-o aqui.

  • Compartilhe:
    • Twitter
    • del.icio.us
    • Google Bookmarks
    • email
    • Live
    • Rec6
    • Print
    • StumbleUpon

    Comente! Sua participação é importante.