Este artigo foi retirado do site Dicas-L da Unicamp. Colabora??o: Renato Torresan Pagano Instalando OpenLdap + phpLdapAdmin em um FC3 f?cil e r?pido Pacotes Utilizados ================== - cyrus-sasl-2.1.19-3.i386.rpm - BerkleyDB-2.7.7-1.i386.rpm -...

Este artigo foi retirado do site Dicas-L da Unicamp.

Colabora??o: Renato Torresan Pagano

Instalando OpenLdap + phpLdapAdmin em um FC3 f?cil e r?pido


Pacotes Utilizados
==================

- cyrus-sasl-2.1.19-3.i386.rpm
- BerkleyDB-2.7.7-1.i386.rpm
- nss_ldap-220-3.i386.rpm
- openldap-2.2.13-2.i386.rpm
- openldap-servers-2.2.13-2.i386.rpm
- phpldapadmin-0.9.6c.zip (http://phpldapadmin.sourceforge.net)
- php-4.3.9.tar
- apache_1.3.33.tar

1. Instale todos os rpms


cd /root/pacotes
rpm -Uvh *


2. Instale o Apache


cd /usr/src
tar -xzvf /root/apache_1.3.33.tar
cd apache_1.3.33
./configure --enable-module=so --enable-module=rewrite
make
make install


3. Instale o PHP


cd ..
tar -xzvf /root/php-4.3.9.tar
cd php-4.3.9
./configure --with-mysql
--with-apxs=/usr/local/apache/bin/apxs --with-gd=/usr/lib
--with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib
--with-zlib-dir=/usr/lib --with-xpm-dir=/usr/lib
--with-freetype-dir=/usr/lib --with-ldap


Obs.: Caso ele reclame da depend?ncia ldap.h, insira no
arquivo /etc/ld.so.conf o caminho /usr/lib/ e /usr/include/
e fa?a ldconfig, rode novamente o configure.


make
make install


4. Configure o Apache para que ele carregue o modulo do
php, insira as seguintes linhas no arquivo de configura??o
httpd.conf do seu apache:


LoadModule php4_module libexec/libphp4.so


Aqui procure pela palavra LoadModule e procure adicionar
na linha abaixo,para manter o arquivo organizado.


AddType application/x-httpd-php .php


Aqui procure pela palavra "AddType" e procure adicionar
na linha abaixo, para manter o arquivo organizado.

Configure o seu DocumentRoot, aqui irei utilizar o
/var/www/html e inicie o seu Apache

5. Configure agora o seu LDAP

Adicione no /etc/syslog.conf as seguinte linha:


#Save ldap messages
local.4* /var/log/ldap


Reinicie o syslog


service syslog restart


Vamos editar o arquivo slapd.conf em /etc/openldap, dentro
do arquivo procure pelo campo "ldbm and/or bdb database
definitions" e adicione as seguintes linhas:


database bdb
suffix "dc=podiumjundiai"
rootdn "cn=adm,dc=podiumjundiai,dc=intranet"


Obs.:Troque os campos podiumjundiai e intranet pelo
seu dom?nio

Ainda nesse arquivo adicione um rootpw, ? recomendado
que insira uma senha cifrada aqui para isso use o comando
slappassword


$slappassword
New password:
Re-enter new password:
{SSHA}Ij+9Nx490e7W9zAolkcOg+uRnwg


Copie e cole a ultima linha no campo rootpw ficando assim:


rootpw {SSHA}Ij+9Nx490e7W9zAolkcOg+uRnwg


Crie um arquivo chamado base.ldif e insira as seguintes configura??es:


#-------------------------inicio--------------------------
dn: dc=podiumjundiai,dc=intranet
dc: podiumjundiai
objectClass: top
objectClass: domain

dn: ou=Usuarios,dc=podiumjundiai,dc=intranet
ou: Usuarios
objectClass: top
objectClass: organizationalUnit
#-------------------------fim--------------------------


Vamos inserir essas informa??es no ldap para isso fa?a:


#ldapadd -x -D cn=adm,dc=podiumjundiai,dc=intranet -W -f base.ldif
Enter LDAP Password:
adding new entry "dc=podiumjundiai,dc=intranet"
adding new entry "ou=Usuarios,dc=podiumjundiai,dc=intranet"

Executando o comando ldapsearch deve aparecer as seguintes informa??es:


[root@constantine renato]# ldapsearch -x
# extended LDIF
#
# LDAPv3
# base with scope sub
# filter: (objectclass=*)
# requesting: ALL
#

# podiumjundiai.intranet
dn: dc=podiumjundiai,dc=intranet
dc: podiumjundiai
objectClass: top
objectClass: domain

# Usuarios, podiumjundiai.intranet
dn: ou=Usuarios,dc=podiumjundiai,dc=intranet
ou: Usuarios
objectClass: top
objectClass: organizationalUnit


Pronto sua base ldap esta pronta.

1. Vamos configurar agora o phpldapadmin

Descompacte o arquivo em /var/www/html

unzip phpldapadmin-0.9.6c.zip


Entre na pasta descompactada e fa?a:

cp config.php.example config.php


Altere as linhas do arquivo config.php:


$servers[$i]['name'] = 'My LDAP Server';

Adicione aqui o nome do seu servidor, ex.: 'Servidor LDAP Podium Jundiai'


$servers[$i]['host'] = 'ldap.example.com';

Adicione aqui o endere?o do seu servidor, ex.: '192.168.1.230'


$servers[$i]['base'] = 'dc=example,dc=com';

Adicione aqui o seu DN, ex.: 'dc=podiumjundiai,dc=intranet'


$servers[$i]['login_dn'] = 'cn=Manager,dc=example,dc=com';

Adicone aqui o seu rootdn, ex.: 'cn=adm,dc=podiumjundiai,dc=intranet';


$servers[$i]['login_pass'] = 'secret';

Adicione a senha para acesso a base ldap, ex.: 'minhasenha' Obs.:? a mesma senha inserida na slapd.conf porem sem ser criptografada.

Salve e saia, digite no seu browser o
http://IP_do_servidor_ldap/phpldapadmin, se tudo foi feito
corretamente ir? aparecer a tela do phpldapadmin junto
com a base ldap criada, agora ? s? come?ar a adicionar
os usu?rios.

Salve e saia, vamos agora editar o arquivo ldap.conf,
dentro do arquivo insira as seguintes linhas:

2. Configurar as esta??es linux FC3 para autenticar no LDAP

Edite o arquivo nsswitch.conf:


vi /etc/nsswitch.conf


Procure pelas linhas abaixo e adicione o ldap na frente

passwd: files ldap
shadow: files ldap
group: files ldap

Agora edite o arquivo ldap.conf em /etc/ldap.conf e
adicione o endere?o e a base do servidor LDAP (Procure
pelas linhas host e base)


host 192.168.1.230
base dc=podiumjundiai,dc=intranet


Troque o /ect/pam.d pelo pam.d que esta em /usr/share/doc/nss_ldap-220/pam.d


# mv /etc/pam.d /etc/pam.d.ori
# cp -R /usr/share/doc/nss_ldap-220/pam.d /etc/pam.d


Pronto sua esta??o linux com FC3 j? esta aut?nticando em uma base ldap
Seja Membro Gratuítamente

Assine a newsletter para receber em seu email as publicações atualizadas neste blog

Top