Este artigo tem por objetivo ajudar na instalação, configuração e integração dos serviços Samba e Squid a uma base de dados unificada em seu sistema (LDAP).
Nome de domínio vivaolinux
Usar Encriptação de Senhas? sim
Modificar smb.conf para.... (Wins) não
Como o Samba deve ser executado? Daemons
Gerar /var/lib/samba/passdb.tdb? sim
Criar o arquivo /etc/samba/smb.conf com o seguinte conteúdo:
[global]
workgroup = vivaolinux
security = user
netbios name = serverteste
server string = Servidor de Dominio
announce as = NT Server
local master = yes
os level = 80
domain master = yes
domain logons = yes
preferred master = yes
wins support = yes
#Scripts de Criação/deleção de usuários, maquinas.......
add user script = /usr/sbin/smbldap-useradd -am "%u"
add machine script = /usr/sbin/smbldap-useradd -w "%u"
add group script = /usr/sbin/smbldap-groupadd -p "%g"
add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g"
delete user from group script = /usr/sbin/smbldap-groupmod -x "%u" "%g"
set primary group script = /usr/sbin/smbldap-usermod -g "%g" "%u"
delete user script = /usr/sbin/smbldap-userdel "%u"
delete group script = /usr/sbin/smbldap-groupdel "%g"
#Fim Script
[homes]
comment = Diretório de %u
read only = no
create mask = 0644
directory mask = 0700
browseable = no
[netlogon]
path = /home/samba/netlogon
#colocar o arquivo .bat na pasta netlogon
guest ok = yes
browseable = no
read only = yes
[Profiles]
comment = Network User Profiles
path = /home/profiles
read only = no
create mask = 0700
directory mask = 0700
Criar a pasta onde será colocado o script inicial que roda após o logon nas máquinas Windows:
# mkdir /home/samba/
# mkdir /home/samba/netlogon
Reiniciar o Samba (demora um pouco):
# /etc/init.d/samba restart
Incluir a senha do administrador Samba:
# smbpasswd -w senha_do_root
Criar os arquivos /etc/smbldap-tools/smbldap.conf e /etc/smbldap-tools/smbldap_bind.conf, como a seguir:
slaveDN="cn=admin,dc=vivaolinux"
slavePw=senha do root em claro e entre aspas Ex slavePw="123456"
masterDN="cn=admin,dc=vivaolinux"
masterPw=senha do root em claro e entre aspas Ex masterPw="123456"
Dar direitos de modificação do arquivo ao root:
# chmod 600 /etc/smbldap-tools/smbldap_bind.conf
Popular com os grupos básicos o ldap:
# smbldap-populate
Modificar a senha do root para o LDAP (faça mesmo que tenha informado anteriormente):
[1] Comentário enviado por dcyrillo em 23/05/2007 - 09:12h
Parabéns pelo artigo, muito bem explicado e de fácil compreensão.
Para a autenticação funcionar no squid, nao pode ser feito com proxy transparente né, mesmo com a base de dados Ldap?
Abraço!
[2] Comentário enviado por removido em 23/05/2007 - 10:55h
Belo artigo.
Mas esse módulo do Squid para o suporte a autenticação LDAP em algumas versões do Squid há vulnerabilidades em que o atacante pode logar no servidor sem a autenticação. Fica a observação.
[6] Comentário enviado por koiti.ozaki em 24/05/2007 - 08:23h
Olá Bruno!
Parabéns pelo artigo, que traz uma experiência prática específica.
Você conseguiu formatar a seqüência de passos para a instalação de um ambiente em que muitos também querem.
Espero que a minha contribuição neste seu sucesso tenha lhe ajudado.
Não esqueça de citar o apoio que você teve do Joedilson Azevedo!
[9] Comentário enviado por vladijr em 03/06/2007 - 15:32h
olá estou com um problema fiz todas as configurações do ldap conforme estão no artigo mas não consigo mais fazer logon no servidor pois da falha de login quando tento entrar no sistema e acesso negado quando tento logar como root o que pode estar acontecendo??? estou usando o ubuntu 6.10
[11] Comentário enviado por bolaoutro em 27/08/2007 - 11:21h
Estou com o mesmo problema do Vladirj... apos a instalacao do LDAP ... o usuario root perde a senha, nao consigo mas usar o "sudo" .... o que pode estar acontecendo ??? Estou usando o Debian 4 !!!!
.
Abraços !!
[12] Comentário enviado por removido em 29/10/2007 - 17:14h
Ola amigo,
cmecei a seguir os passos do artigo e no ultimo comando da sessão samba, me ocorreu o seguinte erro abaixo:
server:/etc# smbpasswd -a root
failed to bind to server ldap://localhost with dn="cn=admin,dc=rrm" Error: Can't contact LDAP server
(unknown)
Connection to LDAP server failed for the 1 try!
...
Connection to LDAP server failed for the 12 try!
Connection to LDAP server failed for the 13 try!
New SMB password:
Retype new SMB password:
Connection to LDAP server failed for the 1 try!
Connection to LDAP server failed for the 2 try!
...
Connection to LDAP server failed for the 13 try!
Failed to add entry for user root.
Failed to modify password entry for user root
[15] Comentário enviado por vinehellcat em 06/03/2008 - 23:34h
ao menegazo666 ....coloque isso no seu slapd.conf
# Indexing options for database #1
index sambaSID eq
index sambaPrimaryGroupSID eq
index objectClass,uid,uidnumber,gidnumber eq
index cn,mail,surname,givenname eq,sub
depois smbldap-populate depois smbpasswd -a root "senha"
[19] Comentário enviado por katatas em 12/09/2008 - 10:51h
caro bruno, antes de tudo... muito obrigado aew pelo seu tuto.. estou fazendo um trabalho na facul, que eh basicamente isso aew... foi mao na roda pra mim, veio....
agora eis o problema... nao sei se eh burrice minha, mas logo no primeiro comando deu pau....
qndo executei:
#apt-get install slapd ldap-utils ... pelo q entendi era para aparecer um front end, pedindo domain name, organization name, admin passwd, verify passwd... mas no meu caso que estou usando ubuntu 8.04, nao apareceu isso, apareceu apenas pedindo a senha e pra confirmar, dai qndo fui editar o arquivo /etc/ldap/slapd.conf... aparece no rootd "dc=nodomain"... nao sei se eh pra mim alterar ai o dominio, ou se eh pra mim definir la no comando de cima.....
[21] Comentário enviado por paulloal em 04/01/2009 - 22:14h
o meu deu o seguinte erro.... e como posso arumalo
Use of uninitialized value in string at /usr/share/perl5/smbldap_tools.pm line 298.
entry dc=ccb already exist.
adding new entry: ou=People,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 3.
adding new entry: ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 4.
adding new entry: ou=Computer,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 5.
adding new entry: ou=Idmap,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 6.
adding new entry: uid=root,ou=People,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 7.
adding new entry: uid=nobody,ou=People,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 8.
adding new entry: cn=Domain Admins,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 9.
adding new entry: cn=Domain Users,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 10.
adding new entry: cn=Domain Guests,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 11.
adding new entry: cn=Domain Computers,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 12.
adding new entry: cn=Administrators,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 16.
adding new entry: cn=Account Operators,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 18.
adding new entry: cn=Print Operators,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 19.
adding new entry: cn=Backup Operators,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 20.
adding new entry: cn=Replicators,ou=Group,dc=ccb
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 21.
entry SambaDomainName=ccb,dc=ccb already exist. Updating it...
failed to modify entry: modifications require authentication at /usr/sbin/smbldap-populate line 488, <GEN1> line 21.
Please provide a password for the domain root:
Use of uninitialized value in string at /usr/share/perl5/smbldap_tools.pm line 298.
/usr/sbin/smbldap-passwd: user root doesn't exist
[22] Comentário enviado por kroger em 11/03/2009 - 00:29h
Estou com o mesmo problema aki !!!
Uso fedora 7
Samba 4 + LDAP
# smbldap-populate
.
.
.
aparece o seguite erro:
entry dc=domimio,dc=local already exist.
entry ou=Usuarios,dc=domimio,dc=local already exist.
entry ou=Grupos,dc=domimio,dc=local already exist.
entry ou=Computadores,dc=domimio,dc=local already exist.
adding new entry: ou=Idmap,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 27.
entry uid=root,ou=Usuarios,dc=domimio,dc=local already exist.
adding new entry: uid=nobody,ou=Usuarios,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 89.
adding new entry: cn=Domain Admins,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 101.
adding new entry: cn=Domain Users,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 112.
adding new entry: cn=Domain Guests,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 123.
adding new entry: cn=Domain Computers,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 134.
adding new entry: cn=Administrators,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 179.
adding new entry: cn=Account Operators,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 201.
adding new entry: cn=Print Operators,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 212.
adding new entry: cn=Backup Operators,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 223.
adding new entry: cn=Replicators,ou=Grupos,dc=domimio,dc=local
failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 495, <GEN1> line 234.
entry cn=NextFreeUnixId,dc=domimio,dc=local already exist. Updating it...
failed to modify entry: modifications require authentication at /usr/sbin/smbldap-populate line 488, <GEN1> line 240.
Please provide a password for the domain root:
Changing UNIX and samba passwords for root
New password:
Retype new password:
failed to modify entry: modifications require authentication at /usr/sbin/smbldap-passwd line 227, <STDIN> line 2.
Unable to change password: modifications require authentication at /usr/sbin/smbldap-passwd line 261, <STDIN> line 2.
[24] Comentário enviado por rmacedo em 29/10/2009 - 14:43h
Olá pessoal,
O meu apresentou o resultado a seguir
Populating LDAP directory for domain INTERNIT (S-1-5-21-2459854038-2108465205-128929952)
(using builtin directory structure)
entry dc=internit,dc=net,dc=br already exist.
adding new entry: ou=People,dc=internit,dc=net,dc=br
adding new entry: ou=Group,dc=internit,dc=net,dc=br
adding new entry: ou=Computer,dc=internit,dc=net,dc=br
adding new entry: ou=Idmap,dc=internit,dc=net,dc=br
adding new entry: uid=root,ou=People,dc=internit,dc=net,dc=br
adding new entry: uid=nobody,ou=People,dc=internit,dc=net,dc=br
adding new entry: cn=Domain Admins,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Domain Users,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Domain Guests,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Domain Computers,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Administrators,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Account Operators,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Print Operators,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Backup Operators,ou=Group,dc=internit,dc=net,dc=br
adding new entry: cn=Replicators,ou=Group,dc=internit,dc=net,dc=br
adding new entry: SambaDomainName=INTERNIT,dc=internit,dc=net,dc=br
failed to add entry: attribute 'sambaNextRid' not allowed at /usr/sbin/smbldap-populate line 499, <GEN1> line 239.
Please provide a password for the domain root:
Changing UNIX and samba passwords for root
New password:
Retype new password:
que erro é esse?
failed to add entry: attribute 'sambaNextRid' not allowed at /usr/sbin/smbldap-populate line 499, <GEN1> line 239.
[25] Comentário enviado por rmacedo em 29/10/2009 - 15:26h
Olá Pessoal
Mais um problema.
Quando fui reiniciar meu Linux estou ganhando a seguinte mensagem:
could not connect to any LDAP as cn=admin,dc=internit,dc=net,dc=br - Can't contact LDAP server
failed to bind LDAP Server ldapi://192.168.254.50 - Can't contact LDAP server
Alguém sabe me dizer o que é isso?
Acho que pode ser algum problema na sequência do boot, pois isso acontece antes do linux configurar a placa de rede.
[26] Comentário enviado por educlj em 13/04/2011 - 10:48h
Excelente artigo!!! Obrigado!!
A título de ajuda para aqueles que enfrentam problemas tentando usar o smbldap-tools (smbldap-populate), após a configuração correta do LDAP, use o LAM (LDAP Account Manager) para criação da estrutura básica e do domínio samba. Após isso, tudo ocorre normalmente.