SAMBA + DHCP + NAT - logando Windows XP

Publicado por Leandro Thowds em 31/05/2006

[ Hits: 18.586 ]

 


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

Entrar como root no modo gráfico do Ubuntu

Teclado abnt2 no Slackware 13.0

Listando Serviços e Pacotes mais Facilmente no Slackware

Como executar um script shell na inicialização do Linux

Facebook e Youtube lentos [Resolvido]

  

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