Você está na página 1de 4

PDC com Samba no Linux

Configurando um PDC com Samba no Linux

Veja neste post como configurar um PDC (Primary Domain Controller/Controlador de


Domínio Primário) com o Servidor Samba no GNU/Linux.

Configurando o Samba
 
Primeiro modifique o smb.conf, que é o arquivo de configuração do Samba,
adicionando umas regras necessárias para transformar o Samba num controlador de
domínio:

 [global]
  netbios name = SERVIDOR
  workgroup = DOMINIO
  server string = Samba %v
  dns proxy = no
  log file = /var/log/samba/log.%m
  max log size = 1000
  syslog = 0
  panic action = /usr/share/samba/panic-action %d
  domain master = yes
  domain logons = yes
  preferred master = yes
  logon path =
  os level = 33
  wins support = yes

Sempre que houver alterações no arquivo, é bom rodar o comando testparm que ele
verifica a sintaxe e mostra erros de configuração. Se estiver tudo correto, mostrará a
mensagem: "ROLE_DOMAIN_PDC".

# testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_DOMAIN_PDC

Cadastrando Contas no Samba


 
Vamos cadastrar as contas de usuários no Samba, primeiro devemos cadastrar a conta
root no Samba:

# smbpasswd -a root

Cadastre agora os usuários, com as senhas que irão utilizar para acessar sua conta a
partir das máquinas Windows.

# useradd -m -s /bin/false usuario


# smbpasswd -a usuario
Depois de cadastrar as contas de usuário, é preciso cadastrar uma conta para cada
máquina, sem senha e com o mesmo nome utilizado na configuração de rede em cada
máquina.

# useradd -d /dev/null -s /bin/false maquina$


# smbpasswd -a -m maquina

Observe que no primeiro comando é adicionado um "$" depois do nome da máquina,


que indica que está criando uma conta de máquina.
 
NetLogon
 
O netlogon é utilizado para executar um script pelo usuário ao fazer logon.
 
Adicione essa regra na seção global do smb.conf:

logon script = netlogon.bat

Adicione também um novo compartilhamento com as seguintes regras:

 [netlogon]
  path = /var/samba/netlogon
  browseable = no

Crie a pasta "/var/samba/netlogon" e configure a permissão corretamente:

# mkdir -p /var/samba/netlogon
# chmod 775 /var/samba/netlogon

Por último, crie o arquivo "netlogon.bat" no diretório "/var/samba/netlogon" e configure


o script para ser executado quando o usuário fazer logon. Aqui vai um exemplo
funcional:

 net use h: /HOME


 net use z: \\servidor\arquivos /yes

Este script é um exemplo de como mapear um compartilhamento do servidor. Ele irá


mapear com a unidade "z:", o compartilhamento "arquivos" do servidor (que precisaria
ser configurado no smb.conf) quando o usuário fazer logon.
 
Um detalhe importante, como o arquivo netlogon.bat será executado por máquinas com
o Windows, então precisa salvar com o formato de arquivo DOS/Windows. Usando o
Vi (Editor de Texto), execute o comando "set fileformat" ou "set ff" para definir o
formato de arquivo DOS/Windows como mostra a última linha abaixo, e não esqueça de
salvar depois:

 net use h: /HOME


 net use z: \\servidor\arquivos /yes
 ~
 ~
 ~
 :set ff=dos
 Profiles
 
Se você quiser, pode fazer com que o servidor Samba armazene os arquivos e
configurações do usuário, fornecendo ao usuário à estação no momento em que ele faz
logon na máquina. Ele diminui a possibilidade de perda de dados armazenando os
arquivos de trabalho no servidor, mas também consume mais espaço de armazenamento
do servidor e aumenta o tráfego da rede, pois os arquivos são transferidos para a estação
a cada logon, e acaba sendo um problema se o usuário tiver hábito de salvar muitos
arquivos grande na área de trabalho.
 
Modifique essa regra da seção "global" do smb.conf:
 logon path = \\%L\profiles\%U

O "%L" indica o hostname do servidor e o "%U" o nome do usuário que está logando a
conta.
 
Adicione agora a seção Profiles com as seguintes regras:

 [profiles]
  path = /var/profile
  read only = no
  browseable = no

Crie a pasta "/var/profile", com permissão de escrita para todos os usuários:

# mkdir /var/profile
# chmod 1777 /var/profile

Cada usuário vai ter uma pasta pessoal na pasta onde as configurações serão salvas,
tendo acesso apenas a sua pasta profile.
 
Fedora/CentOS
 
Se estiver habilitado o SELinux, execute o seguinte comando:

# chcon -R -t samba_share_t /var/profile

Desativando o Profiles no Windows


 
Caso tenha problemas de desativar o Profiles configurando no smb.conf, se toda vez que
o usuário efetuar logoff na máquina com Windows e for criado uma pasta com o nome
profile no diretório Home do usuário, não se preocupe que tenho uma solução. Para
acabar de vez com isso, deve ativar a opção "Só permitir perfis de usuários locais" que
encontra-se no Group Policy Editor (gpedit.msc) do Windows.
 
Para ativar, adicione a seguinte linha no netlogon:
 reg add HKLM\Software\Policies\Microsoft\Windows\System /v LocalProfile /t
REG_DWORD /d 00000001 /f

Na primeira vez que fizer esses passos, ao logar na máquina irá ser adicionado o valor
no registro do Windows, e nas próximas vezes não irá mais criar a pasta profile.
 
Reiniciando o Servidor
 
Após ter terminado as configurações, reinicie os serviços do servidor Samba:
 
Debian/Ubuntu
# /etc/init.d/samba restart
# /etc/init.d/smbd restart

Fedora/CentOS
# service smb restart
# service nmb restart

Slackware
# /etc/rc.d

Você também pode gostar