viernes, 16 de diciembre de 2016

INSTALAR PHPLDAPADMIN EN CENTOS 7


Instalamos Apache server
yum -y install httpd

Habilitamos el firewall para recibir peticiones http
firewall-cmd --add-service=http --permanent
firewall-cmd --reload

Instalamos PHP
yum -y install php php-mbstring php-pear

Instalamos Repositorio EPEL

wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
rpm -ivh epel-release-7-8.noarch.rpm

Instalamos PHPLDAPADMIN
yum install phpldapadmin

Editar el archivo de configuración de ldap
nano /etc/phpldapadmin/config.php

Descomentamos la linea.

$servers->setValue('login','attr','dn');

Comentamos la linea.

// $servers->setValue('login','attr','uid');

Editamos el Archivo  de configuración /etc/httpd/conf.d/phpldapadmin.conf

nano /etc/httpd/conf.d/phpldapadmin.conf

Agregamos la linea.

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs
<Directory /usr/share/phpldapadmin/htdocs>
  <IfModule mod_authz_core.c>
    # Apache 2.4
    # line 12: add access permission
    Require local
    Require ip 192.168.8.0/24

Reiniciamos Apache
systemctl restart httpd

Accedemos desde el navegador a http://ipservidor/ldapadmin






INSTALACION OPENLDAP CENTOS 7




Instalamos los paquetes necesarios.

yum install openldap-servers openldap-clients migrationtools

Crear certificado autofirmado.

openssl req -new -x509 -nodes -out /etc/openldap/certs/ceew.com.pem -keyout /etc/openldap/certs/ceew.com.key.pem -days 720

Asegurar Certificados y permisos clave.

chown ldap:ldap /etc/openldap/certs/ceew.com.pem
chown ldap:ldap /etc/openldap/certs/ceew.com.key.pem

Crear el password de root/admin de Openldap
slappasswd



Configurar OpenLDAP cn=config / olc database with basics
Editar las lineas en negrita, y agregar las últimas  cuatro lineas.
nano /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif

# AUTO-GENERATED FILE - DO NOT EDIT!! Use ldapmodify.
# CRC32 f16ffd63
dn: olcDatabase={2}hdb
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: {2}hdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=ceew,dc=com
olcRootDN: cn=admin,dc=ceew,dc=com
olcDbIndex: objectClass eq,pres
olcDbIndex: ou,cn,mail,surname,givenname eq,pres,sub
structuralObjectClass: olcHdbConfig
entryUUID: 1fd9a22a-2412-1036-97c3-6b3ea16fa74d
creatorsName: cn=config
createTimestamp: 20161011152127Z
entryCSN: 20161011152127.974317Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20161011152127Z
olcRootPW: {SSHA}mtO4I4HXC98T1xiqAFjJlbv7mxenlehA
#olcTLSCipherSuite: HIGH
#olcTLSCertificateFile: /etc/openldap/certs/ceew.com.pem
#olcTLSCertificateKEYFile: /etc/openldap/certs/ceew.com.key.pem



cn=config / olc Cambiar  por 'Monitor' Privilegios
editar el olcAccess  entrada para reflejar su admin / root / administrador de inicio de sesión (lo que usted eligió que fuera en el último archivo cn = config hemos editado anteriormente).

olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=extern
al,cn=auth" read by dn.base="cn=admin,dc=ceew,dc=com" read by * none



nano /etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif



Comprobar la validez de LDAP

slaptest  -u

Iniciar el servicio LDAP

systemctl enable slapd
systemctl start slapd

Configurar base de datos Ldap

Copiar el archivo de configuración a un nuevo lugar y cambio de propietario:

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap:ldap /var/lib/ldap/DB_CONFIG

Añadimos los siguientes esquemas ala base de datos.

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif


Añadir el esquema LDAP a samba.
cp /usr/share/doc/samba-4.2.10/LDAP/samba.ldif /etc/openldap/schema/
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/samba.ldif

Crear archivo ldif

## Configure the 'base/root'

dn: dc=ceew,dc=com
dc: ceew
description: user directory for the domain.tld domain
objectClass: dcObject
objectClass: organization
o: domain network
##
## Configure the Directory Manager
dn: cn=admin,dc=ceew,dc=com
objectClass: organizationalRole
cn: admin
description: I am the directory manager
##
## Configure the USERS hierarchy (non-admins)
dn: ou=users, dc=ceew,dc=com
ou: users
description: all non-admin (non-root) users
objectclass: organizationalunit
##
## Configure the ADMINS hierearchy

dn: ou=admins, dc=ceew,dc=com
ou: admins
description: Admin users hierarchy
objectclass: organizationalunit

Subimos el archivo ldif a openldap
ldapadd -x -W -D "cn=root,dc=ceew,dc=com" -f

Comprobamos que funciona.
Hacemos una consulta a nuestro directorio.

ldapsearch -x cn=admin -b dc=ceew,dc=com