Samba/Winbind logando em domínio Windows

por Daniel Rosa.

Neste artigo iremos aprender como fazer uma maquina Linux logar em um dominio Windows. Vamos ao que interessa...

Antes de começarmos é sempre bom fazermos uma copia de segurança dos arquivos que iremos alterar, assim no acaso algo sair errado poderemos voltar ao inicio. OK?!?!?!

Primeiro vamos fazer o download do SAMBA, segue a página para download:

# cd /usr/local/src

# wget http://us2.samba.org/samba/ftp/stable/samba-3.0.21c.tar.gz

Após o download, descompacte os arquivos:

# tar -zxvf samba-3.0.21c.tar.gz

# cd /usr/local/src/samba-3.0.21c

Configure do Samba:

# ./configure --bindir=/bin \
--sbindir=/usr/sbin --with-winbind \
--with-winbind-auth-challenge

# make
# make install

Feito a instalação o próximo passo é, dentro de /usr/local/src/samba-3.0.21c/source/nsswitch/, copiar o arquivo abaixo para /lib:

# cp libnss_winbind.so /lib

Criar um link simbólico conforme abaixo:

# ln -s /lib/libnss_winbind.so /lib/libnss_winbind.so.2

Bem supondo que o meu dominio windows é LAB, o nome do meu PDC é SRV1 e o nome do servidor linux é SAMBA.

Configuração do smb.conf:

[global]
Dos charset = 850
Unix charset = ISO8859-1
workgroup = LAB
server string = Servidor de Arquivos
netbios name = SAMBA
log file = /var/log/samba/%m.log
max log size = 0
security = domain
password server = SRV1
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
encrypt passwords = yes
wins server = MENDES
winbind separator = +
winbind uid = 10000-20000
winbind gid = 10000-20000
template homedir = /home/windows
template shell = /bin/bash
winbind use default domain = yes

Após a configuração do smb.conf, agora tem que colocar nossa máquina no domínio:

# net rpc join LAB -U administrator
password:
Joined domain LAB

Feito isso, altere o arquivo /etc/nsswitch.conf da seguinte forma:

Atenção! somente altere essas linhas, as outra não mexa.

passwd: files winbind
group: files winbind

Inicie os serviços Samba e Winbind:

# smbd start
# nmbd start
# winbindd start

Para testar se o winbind está comunicando com o AD, basta fazer os seguintes testes:

# wbinfo -t

Irá aparecer:

checking the trust secret via RPC calls succeeded


# wbinfo -u

Irão aparecer todos os usuários do AD.

# wbinfo -g

Irão aparecer todos os grupos do AD.

Exibir todos as contas do domínio:

# getent passwd

Exibir todos os grupos do domínio:

# getent group

Pode-se criar compartilhamentos por nivel de usuário

Abra o smb.conf e adicione no final do arquivo

#== Share Definitions ===

# NOTE: If you have a BSD-style print system there is no need to
# specifically define each individual printer
[printers]
comment = All Printers
path = /usr/spool/samba
browseable = no
# Set public = yes to allow user 'guest account' to print
guest ok = no
writable = no
printable = yes

# Compartilhando diretorio para usuário daniel do dominio LAB

[Daniel]
comment = Publico
path = /arquivos/publico
writable = yes
browseable = yes
create mode = 0777
valid users = LAB+daniel

Espero que tenham gostado, ate mais...