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.
0 comentários:
Postar um comentário