|
Redes domésticas e ADSL com Linux
Redes
domésticas e ADSL com Linux
By Djames Suhanko
Rede Doméstica
Esta é uma maneira simples e direta de configurar uma rede,
desde a
parte física até o compartilhamento de acesso via
ADSLe
compartilhamento de disco em máquinas Windows e Linux.
PARTE FÍSICA
Se a rede for interligar apenas duas máquinas para
compartilhar acesso
ADSL, então você precisará apenas de 3
placas de rede 10/100. Na
máquina Linux, coloque duas placas, sendo que uma
será para receber o
sinal do modem ADSL ( no caso do externo) e a outra para interligar as
duas máquinas.
O CABO
O cabo que deve ser usado para interligar as duas máquinas
se chama “cross-over”, e pode ser encontrado
pronto.
No caso de se estar interligando mais de duas máquinas,
haverá a
necessidade de um hub e os cabos não serão mais
cross-over e sim
ponto-a-ponto. No caso da rede ponto a ponto, os cabos
também podem ser
encontrados prontos. Procurando por cabos pra hub. Cabos acima de 10
metros tem que ser clipados de uma maneira diferente, mas basta pedir
na loja, que também fazem desses cabos na hora.
INSTALAÇÃO DAS PLACAS
Simplesmente coloque as placas nos slots com as máquinas
desligadas. O mesmo para o hub.
No exemplo, será usada a sis900 para ilustrar as
configurações.
CONFIGURAÇÕES
Agora, dependendo da distribuição que
você estiver usando, uma das
placas será detectada aumomágicamente pelo KUDZU.
Não há realmente
necessidade de tê-lo rodando, já que a
única coisa que ele fará é subir
os módulos de apenas uma das placas.
Proceda desta maneira para ter as placas ativas:
(use o seu editor preferido. Aqui o exemplo é ilustrado com
o mcedit)
mcedit /etc/modules.conf (ou conf.modules, depdendendo da
distribuição)
Inclua essas duas linhas ao final do arquivo:
alias eth0 sis900
alias eth1 sis900
Ou use o modprobe.
Estas configurações de rede são de
autoria de Marcelo Beackmman , que
me passou a seguintes configurações para os
respectivos arquivos:
(dentro do diretório /etc/sysconfig/network-scripts)
Edite o seguinte arquivo, mesmo que ele não exista:
mcedit ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
salve e edite o seguinte arquivo:
mcedit ifcfg-eth1
DEVICE=eth1
IPADDR=192.168.0.1
NETMASK=255.255.255.0
NETWORK=192.168.0.0
BROADCAST=192.168.0.255
ONBOOT=yes
Agora, salve este arquivo e confira o arquivo seguinte:
mcedit ifcfg-lo
DEVICE=lo
IPADDR=127.0.0.1
NETMASK=255.0.0.0
NETWORK=127.0.0.0
# Haverão alguns comentários divididos em duas
linhas e:
BROADCAST=127.255.255.255
ONBOOT=yes
NAME=loopback
Desça um nível de diretório e
verifique o arquivo seguinte:
mcedit network
NETWORKING=yes
FORWARD_IPV4=true
HOSTNAME=lo calhost.localdomain ( coloque o nome de seu host no lugar
disso)
DOMAINNAME=ponha_nome_aqui
Agora, feito os scripts de acordo, verifique se há alguma
interface ativa:
ifconfig
Se houver alguma interface ativa, como eth0, desça a
interface:
ifdown eth0
Liste os módulos e veja se encontra os módulos da
sua placa:
lsmod
Encontrou o módulo da sis900? Então, remova os
módulos referentes à placa de rede:
rmmod sis900
Carregue-os assim:
modprobe sis900
Suba as interfaces agora:
ifup eth0
ifup eth1
Tente pingar algum endereço e, se falhar, então
troque a posição dos cabos nas placas de rede.
Vale lembrar que as configurações do ADSL neste
caso são de um IP fixo e carrega por DHCP.
Para habilitar o ADSL caso você ainda não o tenha
feito, instale o pacote DHCP, que se encontra no CD da sua
distribuição.
O arquivo eth0 descrito acima se refere à interface do ADSL.
Suba o DHCP:
insmod sis900
/sbin/dhcpcd
Se sua máquina não estiver iniciando o dhcp
automaticamente, coloque
esses comandos em um arquivo de inicialização
qualquer, como por
exemplo, /etc/rc.d/rc.local .
EXPLANAÇÃO SOBRE REDE
Invés de trabalhar os scripts manualmente, há
também a opção de fazê-lo
com o comando ifconfig:
ifconfig [interface] [IP] netmask [máscara] broadcast [ip do
broadcast]
IP = IP dado à máquina
máscara = 255.255.255.0
A máscara separa o IP da máquina e o da rede.
Ex.: 192.168.0.0 e abriga Ips de 1 a 254
broadcast= o broadcast é um IP que cai para todos da rede
Ex.: 192.168.0.255 --> Faz com que todas as máquinas
de 192.168.0.1 a 192.168.0.254 respondam ao ping.
255= reserva de rede
0= reservado para hosts
Então: 192.168.0.1 co m mask 255.255.255.0 permite de .0.1
à .0.254 .
Já, se fosse: 255.255.0.0 poderiamos ter máquinas
de rede de 192.168.0.1 até 192.168.255.254 .
Levante os daemons portmap e nfs .
Edite :
mcedit /etc/exports
Esse arquivo indica o que a máquina está
exportando via NFS:
Ex.: /diretorio_copmpartilhado ro, root-squash
CONFIGURAR MÁQUINAS
Configurando o arquivo hosts você pode acessar a
máquina por nome, invés de usar o
número IP dado à máquina:
192.168.0.1 user1 user1.host
192.168.0.2 user2 user2.host2
Depois, ping a máquina e veja se funciona:
ping user2
Agora, se pingar corretamente, deverá retornar algo como:
viking@kgb:[§ ~ §]$ ping aguia
PING aguia.sueco (192.168.0.2): 56 octets data
64 octets from 192.168.0.2: icmp_seq=0 ttl=255 time=1.0 ms
64 octets from 192.168.0.2: icmp_seq=1 ttl=255 time=0.5 ms
64 octets from 192.168.0.2: icmp_seq=2 ttl=255 time=0.5 ms
64 octets from 192.168.0.2: icmp_seq=3 ttl=255 time=0.5 ms
--- aguia.sueco ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 0.5/0.6/1.0 ms
Este foi um ping dado em minha rede a partir do gateway Linux,
portanto, se o ping for dado de uma máquina Windows, a
representação
será diferente, mas é importante que
não haja perdas dos pacotes.
Para que o compartilhamento seja mountado no boot, insira a linha do
mount em /etc/fstab:
(exemplo do gateway para a máquina águia)
aguia:/home/sueco /mnt/aguia nfs user,exec,dev,suid,rw 1 1
IP MASQUERADE
O IP Masquewrade transforma a máquina num roteador; a
máquina passa a
direcionar pacotes da internet para a rede interna e vice-versa.
GATEWAY
Gateway é o nome dado à máquina que
recebe a configuração do IP Masquerade.
FIREWALL
Uma boa opção é o Port-Sentry, da
Psionic, que pode ser encontrado em www.psionic.com .
ATIVAR COMPARTILHAMENTO DE ACESSO A INTERNET
Para subir o compartilhamento nas máquinas escravas (linux),
use:
/sbin/route add default gw 192.168.0.1
Esse comando pode ser incluído em um arquivo de
inicialização,.
COMPARTILHAMENTO LAN
Se você já conseguiu compartilhar o acesso, agora
é relativamente simples.
Primeiro, certifíque-se de que o portmap e o nfs
estão ativos. Depois vá ao diretório
/etc e edite o arquivo :
mcedit exports
Esse arquivo dá permissão à outra
máquina para mountá-la. Esse é o
diretório que será exportado na montagem:
/home/sueco ro,user(ro,no_root_squash) aguia(ro)
aguia é a máquina que está exportando
o diretório /home/sueco . Pode-se criar um
diretório vazio e compartilhar apenas esse diretoio, para
garantir a segurança.
Para mountar esse compartilhamento, seria usado então:
mount -t nfs aguia:/home/sueco /mnt/aguia
Se você faz qualquer tipo de
configuração no tcp_wappers, então
inclua as permissões para os respectivos arquivos:
mcedit /etc/hosts.deny
# Esse arquivo é configurado para recusar
conexões. Configure-o assim,
caso você não queira nenhum outro tipo de
conexão à sua máquina, que
não seja da rede:
ALL:except 192.168.0.X
# Onde X é o número do IP da máquina
ao qual o acesso é permitido.
Edite agora o arquivo :
mcedit hosts.allow
# Agora, esse arquivo é o que permitirá o acesso.
Especifique aqui o
acesso que é permitido em sua máquina e o IP que
será permitido. No
caso, a máquina que é permitida é a
192.168.0.2 , e a conexão é
efetuada pelo portmap. Então, a linha a ser inclusa
é unicamente essa:
portmap:192.168.0.2
Agora basta mountar com a linha de comando passada acima, onde a
montagem de compartilhamento está especificada.
SAMBA
Uma regra para compartilhamento :
Edite um arquivo chamado rc.firewall, inclua as linhas abaixo neste
arquivo, depois mova-o para /etc/rc.d/
Dê as permissões:
chmod 700 rc.firewall
#!/bin/sh
#
/sbin/depmod -a
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_raudio
/sbin/modprobe ip_masq_irc
/sbin/modprobe ip_masq_cuseeme
/sbin/modprobe ip_masq_vdolive
echo "1" >/proc/sys/net/ipv4/ip_forward
#echo "1" >/proc/sys/net/ipv4/ip_dynaddr
#MASQ timeouts /sbin/ipchains -M -S 7200 10 160
#/sbin/ipchains -A input -j ACCEPT -i bootp_clients_net_if_name -s 0/0
67 -d 0/0 68 -p udo
/sbin/ipchains -P forward DENY
/sbin/ipchains -A forward -s 192.168.0.0/24 -j MASQ
Essa parte de configuração de SAMBA foi dicertada
por André Casteliano:
Essa regra de ipchains funciona assim:
1º se nega tudo, depois se libera o acesso. Assim sendo:
/sbin/ipchains -P forward DENY
/sbin/ipchains -A forward -s 192.168.0.0/24 -j MASQ
-A = Adicionar
forward = uma regra de compartilhamento
-s = source - de onde, o que...
/24 = compartilhar com todas as máquinas da classe C
/10 = caso quisesse compartilhar com apenas 10 máquinas.
-j = jump - faz o “-s.............” cair nessa
regra, que no caso é a máscara.
CONFIGURAÇÕES DA PLACA DE REDE NO WINDOWS
Clique no ícone REDE localizado no painel de controle e,
remova o que
estiver além de protocolo MS, Protocolo TCP/IP e o driver da
placa.
Marque como protocolo padrão.
Coloque no IP, o IP dessa respectiva máquina.
Coloque a máscara 255.255.255.0
Gateway -Adicione o IP da máquina que está
servindo ( no caso, 192.168.0.1)
DNS - Coloque o DNS do provedor que fornece o acesso.
não esqueça de clicar em [adicionar] para que
sejam realmente inclusas as alterações.
Agora, depois da máquina ter sido resetada , vá
em ASSISTENTE DE
CONEXÃO e marque a última
opção do menu que surge. Na tela seguinte,
marque ACESSO A PARTIR DE REDE LOCAL.
As demais opções, basta seguir conforme aparece
na tela.
Isto é tudo para que esteja funcionando a rede de acesso
compartilhado à internet.
Agora, para compartilhar um dispositivo, por exemplo (SMB)
(no Linux)
smbd -D e nmbd -D
Depois disso, basta configurar a impressora para usar o
compartilhamento, através do control-panel, ou do DrakConf,
ou seja lá
qual a ferramenta de configuração que
você usa.
Por fim, mounte o dispositivo :
smbmount \\dispositivo\nome_do_compartilhamento
/diretorio_de_montagem_em_sua_maquina
man smbmount
Djames Suhanko
http://linuxiando.cjb.net
http://setor11d.com.br
COMANDOS USADOS NESTE PASSO-A-PASSO
modprobe - Instala módulos do dispositivo especificado,
desde que haja suporte para ele.
lsmod - Lista módulos ativos
rmmod - Remove módulos. Esse comando é usado
seguido do módulo a ser removido
insmod - Instala módulos. Esse comando é usado
seguido do módulo a ser instalado
ifconfig - Se passado sem nenhum argumento, mostra interfaces
ativas.
lspci - Lista dispositivos PCI
route -n - Mostra as rotas das placas ativas.
ifup - Seguido de uma interface de rede, a ativa.
ifdown - Seguido de uma interface de rede, a desativa.
MAN PAGES (manuais que podem ser encontrados em sua prórpia
máquina, com o comando:)
man modprobe - man ifconfig - man route - man nfs - man portmap - man
smb.conf
|