Ambiente utilizado:
Servidor AD: Windows 2008 Server R2
Domínio AD: empresa.com.br
Nome da Máquina: master.empresa.com.br
IP: 192.168.1.2
Configurar os serviços AD e DNS (o que é bastante simples)
Servidor Samba: CentOS 5
Nome da Máquina: alpha.empresa.com.br
IP: 192.168.1.10
Vamos as que interessa!!!
Edite o arquivo /etc/sysconfig/network
NETWORKING: yes
NETWORKING_IPV6: no
HOSTNAME: alpha.empresa.com.br
GATEWAY: 192.168.1.1
Edite o arquivo /etc/hosts
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain localhost6
192.168.1.10 alpha.empresa.com.br alpha
192.168.1.2 master.empresa.com.br master
192.168.1.2 empresa.com.br empresa
Faça os teste de ping nos nomes configurados.
Edite o arquivo /etc/resolv.conf
domain empresa.com.br
search empresa.com.br
nameserver 192.168.1.1
Edite o arquivo /etc/krb5.conf
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = EMPRESA.COM.BR
dns_lookup_realm = false
dns_lookup_kdc = true
[realms]
EMPRESA.COM.BR = {
admin_server = master.empresa.com.br
default_domain = empresa.com.br
kdc = 192.168.1.2
}
[domain_realm]
.empresa.com.br = EMPRESA.COM.BR
empresa.com.br = EMPRESA.COM.BR
[kdc]
profile = /var/kerberos/krb5kdc/kdc.conf
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
Edite o arquivo /etc/samba/smb.conf
[global]
workgroup = EMPRESA
server string = Samba Server
netbios name = alpha
realm = EMPRESA.COM.BR
passdb backend = tdbsam
password server = 192.168.1.2
idmap uid = 600-20000
idmap gid = 600-20000
winbind enum users = yes
winbind enum groups = yes
winbind use default domain = yes
winbind nested groups = yes
winbind cache time = 86400
max connections = 0
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
unix charset = iso-8859-1
template shell = /bin/false
template homedir = /dev/null
enhanced browsing = no
log file = /var/log/samba/%m.log
max log size = 1000
syslog = 0
encrypt passwords = true
security = ads
password server = 192.168.1.2
preferred master = no
wins server = master.empresa.com.br
dns proxy = no
load printers = no
map to guest = bad user
[geral]
comment = Compartilhamento Geral para todos os usuarios
path = /home/geral
read only = no
browseable = yes
[informatica]
path = /home/ti
read only = no
valid users = @EMPRESA\Informatica
guest ok = no
browseable = yes
force group = Informatica
- Configurando a Autenticação
Edite o arquivo /etc/nsswitch.conf (modifique somente as linha abaixo, as demais não devem ser apagadas)
passwd: files winbind
shadow: files winbind
group: files winbind
protocols: files winbind
services: files winbind
netgroup: files winbind
automount: files winbind
- Adicionando a Máquina ao Domínio
Restart o Samba e o Winbind:
/etc/init.d/smb restart
/etc/init.d/winbind restart
Acerte a hora o servidor:
ntpdate master.empresa.com.br
Adicione ao domínio:
net ads join -U Administrador
Informe a senha do Administrador do AD, o comando deve informar a seguinte saída:
Using Short domain name - EMPRESA
Joined 'ALPHA' to realm 'EMPRESA.COM.BR'
Em alguns tutorias que pesquisei na internet, na saída acima existia mais uma linha com o conteúdo 'DNS update failed'. Vi que a resolução desse problema é bastante simples, mas não sei exatamente se vai funcionar, pois no meu caso não obtive esse problema. Segue abaixo a resolução do problema.
Edite o arquivo /etc/hosts
#127.0.0.1 localhost.localdomain localhost
#::1 localhost6.localdomain localhost6
192.168.1.10 alpha.empresa.com.br alpha
192.168.1.2 master.empresa.com.br master
192.168.1.2 empresa.com.br empresa
Execute mais uma vez o comando para adicionar a máquina ao domínio.
Deixe os serviços do Samba e Winbind subindo automaticamente:
chkconfig --level 12345 smb on
chkconfig --level 12345 winbind on
Use o comando wbinfo para fazer os teste necessários.
Edite o arquivo /etc/pam.d/system-auth e deixe-o da seguinte forma:
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth sufficient pam_krb5.so use_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
account required pam_unix.so
account sufficient pam_succeed_if.so uid < 500 quiet
account sufficient pam_krb5.so
account required pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok
password sufficient pam_krb5.so use_authtok
password sufficient pam_winbind.so use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session optional pam_krb5.so
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
Reinicie a máquina.