Introdução
Quando as conexões de banda larga começaram a se tornar populares, por volta de 2000, compartilhar a conexão se tornou uma dúvida comum, já que compartilhar uma conexão ininterrupta faz muito mais sentido do que compartilhar a conexão via modem. No começo, era muito comum serem usados PCs com o Windows 98 ou 2000, compartilhando a conexão através do ICS, ou micros antigos rodando mini-distribuições Linux especializadas na tarefa, como o antigo Coyote.
Hoje em dia, compartilhar a conexão deixou de ser um problema, já que praticamente qualquer modem ADSL pode ser configurado como roteador, sem falar dos pontos de acesso com funções de roteador e da enorme variedade de servidores domésticos que temos no mercado.
Vamos então a um tutorial rápido de como compartilhar a conexão no Linux, usando um PC com duas placas de rede, aproveitando para incluir também alguns recursos adicionais no servidor, instalando também um proxy transparente e um servidor DHCP. Este mesmo servidor pode ser configurado também como um servidor de arquivos e impressoras para a rede, assumindo também o papel de NAS.
Os passos a seguir podem ser usados em praticamente qualquer distribuição, de forma que você pode usar a que tiver mais familiaridade. Também não é necessário reservar um PC só para compartilhar a conexão: você pode perfeitamente usar seu próprio micro, ou outro que fique ligado continuamente.
Se você não se importar em fazer a configuração via linha de comando, você pode utilizar um PC antigo, instalando a versão server do Ubuntu. Ela está disponível nohttp://www.ubuntu.com/getubuntu/downloadmirrors, juntamente com a versão principal, mas é um pouco menor, com cerca de 500 MB.
Ao contrário da versão desktop, que carrega o ambiente gráfico por padrão e precisa de um PC com pelo menos 256 MB de memória RAM para rodar, a versão server usa um instalador simples, em modo texto (o mesmo usado nas primeiras versões), e pode ser instalada mesmo em micros com apenas 32 MB de memória RAM:
Esta versão instala apenas os pacotes básicos, sem o ambiente gráfico, por isso o boot depois da instalação é feito em modo texto. Logue-se usando a conta criada durante a instalação e use o comando "sudo passwd" para definir a senha de root. A partir daí você pode se logar diretamente como root, como em outras distribuições:
$ sudo passwd
Inicialmente, o Ubuntu server vem apenas com o vi instalado, que não é um editor de texto particularmente amigável, mas, depois de fazer a configuração inicial da rede (editando o arquivo "/etc/network/interfaces"), você pode instalar outro editor mais amigável, como o mcedit (que faz parte do pacote "mc"), o "joe" ou o "nano". Não importa muito qual editor resolva usar, o importante é que você se sinta confortável com pelo menos um deles.
Um exemplo de arquivo "/etc/network/interfaces" configurado é:
# /etc/network/interfaces
auto lo eth0
iface lo inet loopback
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
auto lo eth0
iface lo inet loopback
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
O arquivo é dividido em duas partes. A linha "auto ..." lista as interfaces que devem ser ativadas automaticamente e as demais contém a configuração de cada uma. Para configurar uma nova placa de rede, você adicionaria a configuração relacionada a ela no final do arquivo e a adicionaria na linha "auto", como em "auto lo eth0 eth1". Se, por outro lado, você quiser desativar uma interface, precisa apenas removê-la da linha auto, não é preciso remover as demais linhas.
A interface "lo" é a interface de loopback, usada para a comunicação local entre diversos aplicativos e componentes do sistema, por isso nunca deve ser desativada. Embora o uso da interface de loopback pareça ser uma exclusividade do Linux, ela é usada também no Windows; a única diferença é que no Windows ela não aparece na configuração.
Em seguida temos a configuração de cada interface, que vai em uma seção separada. No caso da interface lo é usada uma única linha, "iface lo inet loopback", usada em qualquer instalação, seguida pelas demais interfaces.
Como você pode ver, as últimas 5 linhas na configuração da placa eth0 especificam o IP utilizado pelo PC e o restante da configuração da rede, com exceção dos endereços dos servidores DNS, que vão no arquivo "/etc/resolv.conf".
Se você quisesse que a interface fosse configurada via DHCP, poderia substituir as 6 linhas referentes a ela por:
iface eth0 inet dhcp
Ao configurar um servidor com duas placas de rede, onde a eth0 está ligada à rede local e a eth1 ao cable modem (obtendo o endereço via DHCP), por exemplo, o arquivo ficaria:
# /etc/network/interfaces
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
iface eth1 inet dhcp
Veja que nesse caso a configuração da interface eth0 não inclui o gateway, pois é a eth1 que será usada para acessar a web.
Depois de editar o arquivo, você pode aplicar as alterações reiniciando o serviço relacionado a ele:
# /etc/init.d/networking restart
Um problema comum que afeta versões do Debian, Ubuntu e distribuições baseadas neles é as interfaces mudarem de endereço a cada reset em micros com duas ou mais interfaces de rede. A placa eth0 passa então a ser a ath1 e assim por diante, o pode ser uma grande dor de cabeça ao configurar um servidor para compartilhar a conexão, já que se as duas interfaces mudam de posição, nada funciona.
A solução para o problema é um pequeno utilitário chamado "ifrename", que permite fixar os devices utilizados para as placas. Utilizá-lo é bem simples. Comece instalando o pacote via apt-get:
# apt-get install ifrename
Crie o arquivo "/etc/iftab" e, dentro dele, relacione o device de cada interface com o endereço MAC correspondente, seguindo o modelo abaixo:
#/etc/iftab
eth0 mac 00:11:D8:76:59:2E
eth1 mac 00:E0:7D:9B:F8:01
eth0 mac 00:11:D8:76:59:2E
eth1 mac 00:E0:7D:9B:F8:01
Em caso de dúvida, use o comando "ifconfig -a" para ver a configuração atual das placas e o endereço MAC de cada uma. Uma vez criado, o arquivo é verificado a cada boot e a configuração se torna persistente, resolvendo o problema. Este bug das interfaces itinerantes afeta apenas algumas distribuições, por isso você não precisa se preocupar com ele até que perceba que está usando uma das afetadas.
O Ubuntu server vem com o servidor SSH instalado por padrão, de forma que depois de configurar a rede, você pode fazer todo o resto da configuração confortavelmente a partir do seu micro. Uma dica é que ao utilizar o joe, o nano ou o vi (o mcedit não suporta o uso do clipboard), você pode usar o botão central do mouse para colar texto dentro do terminal, o que é muito útil quando você tem um modelo de configuração pronto pra usar.
» Leia mais sobre a configuração de Servidores Linux
Nenhum comentário:
Postar um comentário