SAMBA + DHCP + NAT - logando Windows XP

Publicado por Leandro Thowds em 31/05/2006

[ Hits: 18.614 ]

 


SAMBA + DHCP + NAT - logando Windows XP



Vou descrever nesta dica minha experiência configurando um servidor Linux, fazendo os clientes da rede logarem no domínio, compartilhando arquivos com o SAMBA e compartilhando internet via IPTables.

Encontrei algumas dificuldades no momento da configuração do servidor, testei várias configurações e scripts que encontrei em outros artigos até conseguir fazer tudo funcionar redondo no servidor.
  • Distro usada: Debian 3.0 r1
  • Kernel: 2.6.14
  • Processador: Pentium III 500 MHz
  • Memória RAM: 512 MB
  • Rede: 2 placas (Via Rhine e Davicon 9120)
  • Modem: 3com 812 Office Connect Router
  • Hub: LG, 16 portas

Deduzindo que sua distro esteja devidamente instalada e pronta para uso, vamos aos passos. Importante lembrar que para todos os comandos abaixo é necessário executá-los com permissão total de administrador, no nosso caso, root.

Usando o apt-get (lembre-se de atualizar o repositório no arquivo /etc/apt/sources.list), digitemos:

# apt-get install samba
# apt-get install dhcpd3-server
# apt-get install iptables


Suficiente para o apt-get baixar e instalar o SAMBA e os demais servidores que iremos configurar no seu computador. Durante o processo de instalação do SAMBA e do dhcpd, o Debconf entra em ação perguntando se você gostaria de fazer a configuração dos arquivos. Selecione Não, vamos fazer toda e qualquer configuração na mão, tela preta na veia!

Tendo baixado o SAMBA e instalado, acesse o arquivo /etc/samba/smb.conf. Usando o editor de sua preferência (no caso, eu usei o vi) edite-o:

# vi /etc/samba/smb.conf

# Arquivo smb.conf Editado por Leandro Silva - leandro@ncit.com.br
# NCITs Group -- www.ncit.com.br --
#
##################### Configuração ###############################


[global]
   workgroup = NCITs
   netbios name = Intranet NCITs
   server string = Samba Server
   hosts allow = 192.168.10. 192.168.20. 127.
   load printers = yes

   log file = /var/log/samba/log.%m
   max log size = 50
   security = user
   encrypt passwords = yes

   socket options = TCP_NODELAY
   interfaces = 192.168.20.2/24

   local master = yes
   os level = 33
   domain master = yes
   preferred master = yes
   domain logons = yes

   logon script = netlogon.bat
   logon path = \home\profiles\%U
   wins support = yes
   wins proxy = yes
   dns proxy = yes

# Acrescentando os compartilhamentos para a rede.

[homes]
   comment = Home Directories
   browseable = yes
   writeable = yes

  [netlogon]
   comment = Network Logon Service
   path = /etc/samba/netlogon
   guest ok = yes
   writeable = no
   share modes = no

[Profiles]
   path = /home/profiles
   browseable = no
   guest ok = yes
   create mask = 0600
   directory mask = 0700

[public]
   comment = Public Area
   available = yes
   path = /home/public
   public = yes
   writeable = yes
   printable = no
   write list = NCITs
   share modes = yes

No nosso exemplo acima, teremos que criar alguns diretórios para que dê tudo certo com nossa configuração. São elas:
  • /etc/samba/netlogon
  • /home/profiles
  • /home/public

Não vou comentar o script pelo motivo que já existem muitos artigos falando sobre os parâmetros. Meu objetivo é ajudar a fazer o teu "trem" funcionar na rede. Lembre-se de apenas modificar o que estará se adaptando melhor à configuração de sua rede. Observe também que é muito importante manter a organização do seu script, assim você não se perderá mais pra frente. :)

# killall smbd
# killall nmbd
# nmbd
# smbd


Após reiniciar o SAMBA rode o comando:

# testparm

Uma das primeiras informações que esse comando mostrará deverá ser uma mensagem:

"Server role: ROLE_DOMAIN_PDC".

Apareceu isso? Ok. Não apareceu? Comente, para descobrirmos juntos o que pode estar acontecendo!

Apresentou a informação, perfeito, seu servidor SAMBA está configurado!

Vamos agora à parte onde encontrei mais problemas, devido às informações diversas referentes a inclusão de usuários e máquinas Windows XP no domínio do SAMBA. Primeiramente, você precisa criar um grupo para os usuários da rede:

# groupadd NCITs

Adicione também o usuário root no domínio do SAMBA:

# smbpasswd root:root123

Na senha eu usei a mesma senha que uso para logar no sistema, até porque não sou muito bom para ficar guardando senhas... >:-)

Criado o grupo NCITs, vamos adicionar os usuários e as máquinas dos usuários no grupo. É... no SAMBA é realmente preciso criar um usuário para cada máquina da sua rede... Seguem abaixo os comandos detalhados:

Obs.: essa conta, apesar de cadastrada, não pode ter senha!

# useradd -g NCITs -s /dev/null -d /dev/null maquinaxp1$
# passwd -l maquinaxp1$
# smbpasswd -a -m maquinaxp1$


Importante não deixar de colocar o cifrão no final do nome da máquina, pois é exatamente isso que identifica que o usuário é uma máquina. Agora adicionaremos no sistema o usuário da máquina maquinaxp1$ no grupo NCITs:

# useradd leandro

Agora, incluiremos o usuário criado no domínio do SAMBA.

# smbpasswd -a leandro

Vá para a máquina microsoftxp$, logue normalmente, acesse o registro, clicando em Iniciar / Executar, e digite: regedit.

Abrindo a tela do registro do Windows XP, você vai procurar pela seguinte chave:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\netlogon\parameters
"RequireSignOrSeal"=dword:00000001

Essa opção estará com valor "1". Altere para "0" e ficará:

"RequireSignOrSeal"=dword:00000000

Vá ao painel de controle, clique em Sistemas / Identificação da Rede / Propriedades / Domínio (ao invés de Grupo de trabalho). Ele vai pedir nome de usuário e senha, é muito importante neste momento você logar primeiro com o usuário root do Linux!!!

Vamos agora apenas configurar rapidamente o servidor DHCP para que suas estações de trabalho possam receber um endereço IP à partir de seu servidor Linux.

Digite os comandos abaixo:

# vi /etc/dhcp3/hdcp3-server.conf

# Script DHCPD para distribuição de endereços IPs na rede interna

   ddns-update-style none;
   default-lease-time 600;
   max-lease-time 7200;
   authoritative;
   subnet 192.168.20.0 netmask 255.255.255.0 {
range 192.168.20.2 192.168.20.15;
option routers 192.168.20.1;
option domain-name "NCITs";
option domain-name-servers 192.168.20.1;
option broadcast-address 192.168.20.255;
}

Feita as alterações reinicie o serviço:

# dhcpd restart

Mermão, estamos quase com o objetivo concluído!

Agora fica assim, para os iniciantes, as conexões são simples, você vai conectar o cabo de rede do modem direto no computador na placa eth0. Recebeu o IP do modem, ok. Conecte o segundo cabo na eth1 e conect no Hub. Ok. Para desativar e ativar novamente as placas de rede faça assim:

# if-down eth0
# if-up eth0
# if-down eth1
# if-up eth1


Digite o comando ifconfig no Shell para ver se as duas placas estão ok, recebendo os determinados IP´s.

Bom, agora, para as configurações abaixo, você precisa de um diploma da universidade de Berkeley, onde foi desenvolvido o FreeBSD, para poder fazer funcionar corretamente o NAT.

# modprobe iptable_nat
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
# echo 1 > /proc/sys/net/ipv4/ip_forward


Putz, como foi difícil não? >:)

Galerinha, não deixem de postar não, qualquer dúvida faça como eu, pergunte! >:)

Um abraço.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Cor de fundo no editor de textos leafpad (ou mousepad também)

Servidor Yum público para Oracle Linux 6.1

Logitech Marble Mouse

Sabayon Linux - Gerenciador de Login (SDDM) não loga mais [Resolvido]

Upgrade do Slackware de uma versão X para atual (14.2)

  

Comentários
[1] Comentário enviado por faroffiuts em 31/05/2006 - 18:48h

Kra este seu tutorial tah show!!
finalmente consegui fazer o winxp logar em um dominio linux!! coisa que não conseguir fazer nem quando tinha o 2003 server instalado!!

Tive algumas dificuldades em alguns comandos, mas deu tudo certo!!
Tenho o ubuntu 5.10 injstalado o servidor DHCP e DNS rodando perfeitamente, e todos os clientes logando no dominio!!

Vlw kra!!! muito obrigado!

[2] Comentário enviado por thowds em 16/06/2006 - 15:42h

Fico contente em poder ter contribuido!
Qualquer dúvida ou sujestão estou por aqui!
Forte abraço.

Leandro Thowds.

[3] Comentário enviado por better em 25/06/2006 - 23:07h

po cara fico show demias esse seu artigo comfigurei o samba aki sem piscar hiauhaiua brigadao pela ajuda ;)
forte abraco

BeTTer aka Lucas

[4] Comentário enviado por marciocoresp em 20/07/2006 - 01:18h

e ai kra blz?
ta muito bom o tutorial...
uso linux a um tempinho já e venho me virando pra fazer as coisas funcionarem...mas dessa vez da zica..peguei um pentium 100 aqui instalei o DanSmallLinux fico joinha até...queria fazer tipo um servidorzinho.
Segui as dicas ae e tal mas tive um probleminha pior...quando digito#/etc/init.d/samba start
Starting Samba daemons: nmbd.
depois digito ps ax e o raio do serviço smbd nao sobe...estranho.
até o swat ja instalado mas nao roda porque o serviço samba nao sobe.
Agradeço desde já.
E quando esse pentium 100 fica zerado, passo as dica pra frente pra quem futuramente interesar...
e isso ae valeus..
Abraço.

[5] Comentário enviado por maninhx em 25/10/2007 - 13:41h

?comentario=

show de bola, parabens.

[6] Comentário enviado por Kakarroto em 27/10/2007 - 10:28h

Olá, tudo bom, estou passando por dificuldades aqui, fiz tudo que seu artigo mandou, finalizou tudo com ok, mas na hora de colocar no dominio, da a seguinte mensagem.
"Identificação na rede

O erro a seguir ocorreu durante a sua tentativa de ingresso no dominio

O dominio especificado não existe ou não pode ser identificado."

Mas aparece a maquina em "computadores proximo a mim" e se clico nele, solicita a senha, coloco a de root e conecta, mas no dominio não entro.

O que fiz de errado ???

[7] Comentário enviado por lipecys em 28/01/2008 - 08:52h

cara, muito boa a dica, parabéns.......

[8] Comentário enviado por als_182 em 24/03/2008 - 11:30h

?comentario= Otimo cara, gostei da dica pois era tudo que eu precisa em meu novo serviço..abraços

[9] Comentário enviado por thowds em 25/04/2008 - 16:54h

valewww Galerinha... :D:D:D:D



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts