Guia Servidor Linux (Fedora 9) de partilha de Internet e de Ficheiros com Windows (ou não)

xuxaki

Power Member
Boas pessoal, aqui vai o meu primeiro tutorial :)
Como diz no título, explica como configurar um servidor Linux (no meu caso Fedora 9) para partilhar Internet e ficheiros (disco externo por exemplo) na rede local aí de casa :P
Apesar de estar a funcionar muito bem, esta configuração foi "inventada" por mim, portanto podem haver algumas coisas que podiam ser feitas de outra forma, ou que não estejam totalmente correctas. Se isso acontecer, comentem que eu corrijo!
É uma configuração muito simples. O esquema é o seguinte:
Modem -> Servidor -> router wireless (de casa) -> pcs da rede de casa

O servidor tem de ter duas placas de rede:
Uma (eth0) vai ter IP fixo 192.168.1.1 para ligar ao router de casa.
A outra (eth1) obtém o IP por DHCP atribuído pelo ISP.


Vamos ao que interessa:

1 - Instalar aplicações necessárias
Executar na consola:
Código:
yum install dhcp.i386
yum install samba samba-client


2 - Configurar servidor DHCP

Na consola executar:
Código:
gedit /etc/dhcpd.conf &
O conteúdo do ficheiro é
Código:
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#   see 'man 5 dhcpd.conf'
#

authoritative;

subnet 192.168.1.0 netmask 255.255.255.0 {
    option routers 192.168.1.1;
    option subnet-mask 255.255.255.0;
    option broadcast-address 192.168.1.255;

    option domain-name-servers 83.144.129.53, 83.144.129.53;

    range 192.168.1.10 192.168.1.15;
}
Breve descrição das opções:
option routers - é o IP do servidor que vai estar à escuta para pedidos DHCP (do router de casa)
option domain-name-servers - são os IP's dos servidor DNS do ISP (que obtive nos detalhes da interface de ligação à Internet, no meu caso eth1)
range - dei uma margem de 5 IPs a atribuir, um deles será para o router, os outros ficam livres


3 - Configuração de IPs
O IP da interface eth1, que se liga ao modem, é configurado da seguinte forma:
Na consola
Código:
gedit /etc/sysconfig/network-scripts/ifcfg-eth1 &
No ficheiro que é aberto deve estar o seguinte:
Código:
DEVICE=eth1
BOOTPROTO=dhcp
HWADDR=00:19:21:d5:75:54
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet
O IP da outra interface (eth0), que se vai ligar ao router de casa, é configurado da seguinte forma:
Na consola
Código:
gedit /etc/sysconfig/network-scripts/ifcfg-eth0 &
No ficheiro deve estar
Código:
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:e0:7d:ad:ca:55
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet
IPADDR=192.168.1.1
NETMASK=255.255.255.0
As alterações neste segundo ficheiro foram:
BOOTPROTO foi alterado para static e foram adicionadas as 3 ultimas linhas (TYPE, IPADDR e NETMASK).


Depois desta configuração o servidor DHCP já pode ser iniciado:
Código:
service dhcpd restart
De forma a verificar se corre tudo bem, pode-se abrir outra consola e executar:
Código:
tail -f /var/log/messages
4 - Encaminhamento de pacotes
Na consola
Código:
gedit /etc/sysctl.conf &
alterar a linha:
Código:
net.ipv4.ip_forward = 0
para
Código:
net.ipv4.ip_forward = 1
Na consola executar os seguintes comandos:
Código:
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
service iptables save
service iptables start
A partir daqui, se o router wireless já tiver sido reiniciado e estiver tudo bem, os pcs da rede já têm net. Passemos à partilha de ficheiros.

5 - Partilhar ficheiros na rede
Editar o ficheiro de configuração do samba
Código:
gedit /etc/samba/smb.conf &
Dentro desse ficheiro:
1. Como a partilha de ficheiros é entre Linux e Windows a seguinte linha (na secção [global]) deve ser alterada de acordo com o grupo a que pertence o terminal Windows:
Código:
workgroup = <GRUPO>
2. Adicionar as pastas que queremos partilhar e as devidas permissões no final do ficheiro:
Código:
[teste]
        path = /SHARED
        public = yes
        writable = yes
[teste2]
        path = /SHARED/subfolder
        public = no
        writable = no
NOTA: Existem mais opções que se podem definir para cada partilha


Adicionar user com permissões para aceder ao conteudo das pastas partilhadas (!!! Os users devem existir no sistema !!!). Na consola
Código:
smbpasswd -a <USERNAME>
Iniciar o serviço Samba
Código:
service smb start
Garantir que o samba inicia sempre
Código:
chkconfig --level 35 smb on
service smb restart
Voila! :D
Espero que seja util para alguém!
 
Última edição:
Viva.


Excelente iniciativa, aproveito desde já para dar os parabéns.


Gostaria de te colocar uma questão:

- por que razão configuraste a rede com esta estrutura - Modem -> Servidor -> router wireless (de casa) -> pcs da rede de casa - e não esta - Modem -> router wireless (tendo em conta que faz NAT) -> Servidor + pcs da rede de casa ?


Obrigado e cumprimetos.
 
Desde já obrigado e boa questão :)
De facto essa configuração até seria muito mais simples, não havendo necessidade de configurar DHCP nem ter duas placas de rede...
Mas a razão é muito simples (e talvez não se aplique a muitas pessoas que se interessem por este tutorial é verdade :P )
Este meu servidor, alem de partilhar ficheiros, impressoras, etc., também é servidor de ftp e web! Ou seja, quis segmentar a minha rede, não havendo necessidade de estar a rede de casa activa (o router wireless) para eu aceder as minhas coisas pela net!
Outra razão é que desta forma, todo a tráfego da rede passa pelo servidor, no qual tenho total controlo e posso fazer 1001 coisas, as quais não são possíveis com o router wireless...

Espero ter respondido à questão ;)
 
...

Espero ter respondido à questão ;)

Respondeste sim!

Quer dizer então que tens o servidor a fazer firewall, filesharing para a LAN, FTP e HTTP para a WAN.

Talvez até tenhas cache server, acesso remoto via telnet ou ssh, não ?


Parece-me uma optima solução, vou pensar fazer algo semelhante :)


Cumps.
 
Alguém que tenha um servidor deste género em Windows ?

Gostava de saber que aplicações usam num servidor caseiro como estes mas em Windows ;)

Já agora, bom tutorial :D
 
Boas xuxaki,

Estou a tentar fazer uma rede como a tua e com o fedora 9 como servidor. E também tem um router wireless. Só que n sei como hei-de configurar o router para deixar passar o DHCP para os pc's da rede.

Será que e podes dizer como dizeste com o teu ou dar uma ajudinha com o meu?? eu tenho um router sitecom wl-607.

cumpz
 
Boas xuxaki,

Estou a tentar fazer uma rede como a tua e com o fedora 9 como servidor. E também tem um router wireless. Só que n sei como hei-de configurar o router para deixar passar o DHCP para os pc's da rede.

Será que e podes dizer como dizeste com o teu ou dar uma ajudinha com o meu?? eu tenho um router sitecom wl-607.

cumpz

Como assim passar o DHCP? O teu router vai adquirir um IP por DHCP, fornecido pelo servidor. Depois disso, os teus pcs de casa vão adquirir IP's dados pelo router, normalmente... Não tens de alterar nada no router...
 
Back
Topo