Samba LDAP · 4 min read · Dec 12, 2025
Controlador de Domínio Samba CentOS 5.x Com Backend LDAP - Página 2
Configurando a administração remota do diretório ldap
Edite /etc/php.ini e certifique-se de que memory_limit está definido para pelo menos 32 MB:
memory_limit = 32MNa última vez que verifiquei, a versão do phpldapadmin disponível via yum está quebrada, então vamos obter a mais recente e extrair: Vá para http://sourceforge.net/project/showfiles.php?group_id=61828&package_id=177751 e baixe a versão mais recente. No meu caso, isso resultou nos seguintes comandos, seu pacote pode ser mais novo:
mkdir /var/www/html/samba && cd /var/www/html/samba
wget http://softlayer.dl.sourceforge.net/sourceforge/phpldapadmin/phpldapadmin-1.1.0.7.tar.gz
tar zxf phpldapadmin-1.1.0.7.tar.gz
ln -s phpldapadmin-1.1.0.7 pla
cp pla/config/config.php.example pla/config/config.phpAgora edite ./pla/config/config.php e descomente a seguinte linha:
$config->custom->jpeg['tmpdir'] = "/tmp";Disponibilizando o software recém-configurado
service httpd restart
chkconfig httpd onEdite /etc/sysconfig/iptables e copie & modifique a linha sobre ssh (–dport 22 -j ACCEPT), e logo após, adicione (assumindo que sua instalação do CentOS produziu o arquivo iptables padrão):
#Permitir Https://
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
#Permitir samba:
-A RH-Firewall-1-INPUT -m multiport -p udp --dport 137,138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m multiport -p tcp --dport 139,445 -j ACCEPT
Agora abra seu navegador e visite https://192.168.0.5/samba/pla/ e faça login com Nome de Usuário cn=root,dc=DOMAINNAME e sua senha. Você deve ser capaz de olhar ao redor e ver algumas coisas.
Integrar ldap e Samba
mv /etc/samba/smb.conf /etc/samba/smb.conf.dist
cp /usr/share/doc/smbldap-tools-0.9.5/smb.conf /etc/samba/smb.confEdite /etc/samba/smb.conf ao seu gosto, a parte ldap padrão deve estar boa.
Sob [global], você precisará adicionar essas três configurações que não estão lá por padrão:
ldap ssl = off
nt acl support = yes
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 SO_KEEPALIVE
cp /usr/share/doc/smbldap-tools-0.9.5/smbldap.conf /etc/smbldap-tools/smbldap.conf
net getlocalsidObserve que net getlocalsid irá gerar muitos erros até o final, porque você ainda não configurou completamente o samba – mas irá produzir o sid que você precisa para o próximo passo.
Edite /etc/smbldap-tools/smbldap.conf e insira sid, domínio, etc, por todo o arquivo até o final.
Edite /etc/smbldap-tools/smbldap_bind.conf e mude ambas as linhas aplicáveis, troque “secret” pela sua senha.
chmod 644 /etc/smbldap-tools/smbldap.conf
chmod 600 /etc/smbldap-tools/smbldap_bind.conf
authconfig-tuiVerifique se a saída do authconfig-tui contém:
[ ] A autorização local é suficienteAgora teste sua configuração do samba:
testparmsmbpasswd -w SUA_SENHA_ROOT_LDAP_AQUI
smbldap-populatesmbldap-populate irá pedir a senha, insira-a.
Iniciar a instalação do LDAP Samba
/etc/init.d/smb start
chkconfig smb onAdicione usuários/grupos, correlacione entre unix e ldap:
useradd user1
smbldap-useradd -a -G 'Domain Users' -m -s /bin/bash -d /home/user2 -F "" -P user1Obtenha uma visão dos grupos UNIX que ainda não estão lá que o LDAP assume:
net groupmap listA saída é algo como:
Domain Admins (S-1-5-21-990788473-1556064292-4137819756-512) -> domain_admins
Domain Users (S-1-5-21-990788473-1556064292-4137819756-513) -> domain_users
Domain Guests (S-1-5-21-990788473-1556064292-4137819756-514) -> 514
Domain Computers (S-1-5-21-990788473-1556064292-4137819756-515) -> 515
Administrators (S-1-5-32-544) -> 544
Account Operators (S-1-5-32-548) -> 548
Print Operators (S-1-5-32-550) -> 550
Backup Operators (S-1-5-32-551) -> 551
Replicators (S-1-5-32-552) -> 552
Adicione grupos correlacionados ao unix, usando os GIDs sugeridos:
groupadd -g 514 samba_domain_guests
groupadd -g 515 samba_domain_computers
groupadd -g 544 samba_administrator
groupadd -g 548 samba_account_operators
groupadd -g 550 samba_print_operators
groupadd -g 551 samba_backup_operators
groupadd -g 552 samba_replicatorsSe você quiser adicionar um grupo não embutido ao LDAP/Samba, digamos para controlar quais usuários podem ler/escrever arquivos em um compartilhamento, e ter isso determinado por grupos:
smbldap-groupadd -a "Pessoas Em Nosso Escritório"Então obtenha a saída de net groupmap list novamente e correlacione o novo grupo criado # assim como da última vez, adicionando o grupo ao sistema unix:
groupadd -g 1001 samba_people_in_our_officeAdicione usuários aos grupos LDAP via a interface web, depois correlacione no unix:
usermod -a -G NOME_DO_GRUPO_UNIX NOME_DE_USUÁRIO_UNIXAdicione também contas de computador ao unix, usando o grupo “samba_domain_computers” de cima, e onde os nomes dos computadores permitidos terminam com um “$”:
useradd -M -g 515 -s /bin/false officecomp1$Por último, mas certamente não menos importante, você pode querer desligar os serviços desnecessários que o CentOS executa por padrão. Eu determinei que eu, especificamente, não preciso de nenhum dos seguintes. Você pode ser diferente, então pesquise antes de desligá-los:
chkconfig ntpd off
chkconfig bluetooth off
chkconfig xinetd off
chkconfig smartd off
chkconfig yum-updatesd off
chkconfig rpcidmapd off
chkconfig rpcgssd off
chkconfig restorecond off
chkconfig portmap off
chkconfig pcscd off
chkconfig nfslock off
chkconfig mcstrans off
chkconfig mdmonitor off
chkconfig irqbalance off
chkconfig kudzu off
chkconfig ip6tables off
chkconfig hidd off
chkconfig gpm off
chkconfig haldaemon off
chkconfig autofs off
chkconfig avahi-daemon off
service ntpd stop
service bluetooth stop
service xinetd stop
service smartd stop
service yum-updatesd stop
service rpcidmapd stop
service rpcgssd stop
service restorecond stop
service portmap stop
service pcscd stop
service nfslock stop
service mcstrans stop
service mdmonitor stop
service irqbalance stop
service kudzu stop
service ip6tables stop
service hidd stop
service gpm stop
service haldaemon stop
service autofs stop
service avahi-daemon stop(Opcional) Atualizar Samba para que computadores Windows 7 possam ingressar no domínio
Certifique-se de que ldap ssl = off está definido em /etc/samba/smb.conf, pois isso não era necessário para a versão do Samba da distribuição CentOS funcionar corretamente, mas será necessário uma vez que atualizarmos (3.0.x vs 3.3.x, que suporta Windows 7).
Vamos obter os RPMs mais novos do samba construídos para CentOS da Sernet:
cd /etc/yum.repos.d/
wget http://ftp.sernet.de/pub/samba/3.3/centos/5/sernet-samba.repo
yum updateSeus pacotes samba serão atualizados do repositório Sernet.
Desde a atualização, nosso serviço CentOS para samba desapareceu; vamos re-adicioná-lo:
chkconfig --add smb
chkconfig smb onAgora adicione o computador Windows 7 ao Unix (assumindo que o nome do grupo de computadores do seu domínio é “samba_domain_computers”):
useradd -M -g `cat /etc/group|grep samba_domain_computers|cut -d: -f3` -s /bin/false win7-computername$
usermod -a -G samba_domain_computers win7-computername$Agora junte seu PC Windows 7 ao domínio usando este guia oficial do Samba:
http://wiki.samba.org/index.php/Windows7
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.