4) Vamos agora instalar os pacotes necessários para utilizacão do
LDAP com Samba.
a) Utilize o seguinte comando:
# pacman -Sy perl perl-authen-sasl perl-class-errorhandler perl-convert-asn1 perl-crypt-smbhash perl-crypt-ssleay perl-digest-sha1 perl-html-parser perl-html-tagset perl-io-socket-ssl perl-jcode perl-ldap perl-libwww perl-net-ssleay perl-unicode-map perl-unicode-map8 perl-unicode-maputf8 perl-unicode-string perl-uri perl-uri-fetch perl-xml-namespacesupport perl-xml-sax perl-xml-sax-expat perl-xml-simple perlxml libldap nss_ldap openldap openldap-clients pam_ldap perl-ldap smbldap-tools apache php openldap-migrationtools
Caso o pacman não localize algum pacote na lista, procurar no AUR, confirme item anterior.
b) Agora vamos resolver um probleminha, o pacote do Samba não possui o arquivo samba.schema (pelo menos eu não encontrei), então precisamos baixar o código fonte do Samba, pegar esse arquivo e copiá-lo para o diretório /etc/openldap/schema.
Acesse o site do
Samba baixe-o na versão que o pacman instalou (pacman -Q samba), descompacte-o e copie o arquivo
samba.schema para o diretório /etc/openldap/schema.
c) Vamos instalar também uma aplicação que nos ajudará a visualizar nossa configuração do LDAP o "phpldapadmin":
Baixe o arquivo ultimaVersao.tar.gz do site do
phpldapadmin, descompacte-o dentro da pasta do seu servidor Apache, pode ser /home/httpd/html ou /srv/httpd/html, depende da instalação e versão que você utiliza.
d) Configurando phpldapadmin:
Edite o arquivo /servidorApache/html/phpldapadmin/config/config.php. Altere as seguintes linhas do arquivo:
De:
$ldapservers->SetValue($i,'server','name','My LDAP Server');
Para:
$ldapservers->SetValue($i,'server','port','389');
$ldapservers->SetValue($i,'login','dn','cn=administrador,dc=viva,dc=edu,dc=br');
Essa alteração indica ao phpldapadmin qual é a porta que o ldap utiliza e o usuário.
e) Configurando
/etc/php/php.ini. Altere as as seguintes linhas:
zend.ze1_compatibility_mode = Off
; available extensions
extension=curl.so
extension=gd.so
extension=gettext.so
extension=iconv.so
extension=ldap.so
extension=mcrypt.so
extension=mysql.so
extension=openssl.so
extension=session.so
extension=xmlrpc.so
extension=zlib.so
Essa configuração é necessária para que o phpldapadmin funcione corretamente.