Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
Instalando OpenLdap + phpLdapAdmin em um FC3 fácil e rápido
Colaboração: Renato Torresan Pagano
Data de Publicação: 16 de Junho de 2005
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
- Instale todos os rpms
cd /root/pacotes rpm -Uvh *
- 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
- 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
- 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 - Configure agora o seu LDAP
Adicione no /etc/syslog.conf as seguinte linha:
#Save ldap messages local.4* /var/log/ldap
Reinicie o syslogservice 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+uRnwgCopie 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.
- 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: - 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 frentepasswd: 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 Renato e. Pagano, Podium Tecnologia em Redes, www.podium.com.br
Referências Adicionais
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.





