RT tiene la opcion de poder definirle metodo de autenticacion externa via OpenLdap
En lo personal se me hizo mas simple la instalacion manual que comentan en la liga.
Despues de la instalacion del modulo, es necesaria una configuracion en el archivo de configuracion /etc/request-tracker3.6/RT_SiteConfig.pm
Esta es la configuracion de mi sitio:
### MY_LDAP Settings
Set($AuthMethods, [ 'MY_LDAP' ]);
Set($ExternalAuthPriority,['MY_LDAP']);
Set($ExternalInfoPriority, [ 'MY_LDAP' ]);
Set($LdapAutoCreateNonLdapUsers, 1);
Set($AutoCreateNonExternalUsers, 1);
Set($ExternalSettings, {'MY_LDAP' =>{
'type' => 'ldap',
'auth' => 1,
'info' => 1,
'server' => '172.16.29.X',
'base' => 'ou=People,dc=XXX',
'filter' => '(objectclass=posixAccount)',
'd_filter' => '(objectClass=posixGroup)',
'tls' => 0,
'net_ldap_args' => [ version => 3 ],
'attr_match_list' => [ 'Name', 'EmailAddress', 'RealName', 'WorkPhone', 'Address2'],
'attr_map' => { 'Name' => 'uid',
'EmailAddress' => 'mail',
'RealName' => 'cn',
'Organization' => 'XXXXXXXXX XXXX',
'ExternalContactInfoId' => 'dn',
'Gecos' => 'cn',
'HomePhone' => ' ',
'WorkPhone' => ' ',
'MobilePhone' => ' ',
'PagerPhone' => 'pager',
'Address1' => ' ',
'Address2' => ' '
}
}
});
Mostrando entradas con la etiqueta openldap. Mostrar todas las entradas
Mostrando entradas con la etiqueta openldap. Mostrar todas las entradas
jueves, 16 de octubre de 2008
miércoles, 15 de octubre de 2008
Apache+LDAP en Debian...
Para configurar la authenticacion con ldap de un usuario para acceder a un sitio que provee un apache. Esta nota esta en el entendido de que tiene un servidor ldap funcionando y un servidor apache en Debian.
1) Habilitando modulos en configuracion de apache
cd /etc/apache2/mods-enabled/
ln -s ../mods-available/authnz_ldap.load .
ln -s ../mods-available/ldap.load .
2) Configurando la ruta
cd ../sites-enabled/
vi 000-default
Alias /Documentos/ "/var/www/Documentos/"
AuthType Basic
AuthName "Restricted Access"
AuthBasicProvider ldap
AuthLDAPURL "ldap://mi_server_ldap:389/ou=People,dc=midc?uid"
require valid-user
3) Reiniciar el sevicio de apache
/etc/init.d/apache2 restart
4) Comprobar accesando a http://misitio/Documentos
1) Habilitando modulos en configuracion de apache
cd /etc/apache2/mods-enabled/
ln -s ../mods-available/authnz_ldap.load .
ln -s ../mods-available/ldap.load .
2) Configurando la ruta
cd ../sites-enabled/
vi 000-default
Alias /Documentos/ "/var/www/Documentos/"
AuthType Basic
AuthName "Restricted Access"
AuthBasicProvider ldap
AuthLDAPURL "ldap://mi_server_ldap:389/ou=People,dc=midc?uid"
require valid-user
3) Reiniciar el sevicio de apache
/etc/init.d/apache2 restart
4) Comprobar accesando a http://misitio/Documentos
jueves, 5 de junio de 2008
Ldap commands...
Para iniciar/detener servicio:
/etc/init.d/sladp start | stop
Para crear un index:
slapindex -v -f /etc/ldap/slapd.conf
Para backup de la base:
/etc/init.d/slapd stop (Debe estar detenido el servicio)
slapcat -v -f /etc/ldap/slapd.conf -l /home/local/backup-ldap.ldif
Para recuperar la base desde un respaldo:
/etc/init.d/slapd stop
rm -rf /var/lib/ldap/*
slapadd -v -c -l /home/admin/backup-ldap.ldif -f /etc/ldap/slapd.conf
/etc/init.d/slapd start
Para agregar un registro:
ldapadd -x -D 'cn=admin,dc=example,dc=exampledomain' -w password -f rvillar.ldif
Para eliminar un registro:
ldapdelete -x -h 127.0.0.1 -D 'cn=admin,dc=example,dc=exampledomain' -w password "cn=userdel,ou=People,dc=example,dc=exampledomain"
Para busquedas:
ldapserach -x
ldapsearch -x -b 'dc=example,dc=exampledomain' cn='Marcela Alegria' uid ou
ldapsearch -x -b 'dc=example,dc=exampledomain' "(&(ou=Math)(cn=*Pig*))"
Para crear una cadena para password cifrada:
slappasswd -u -s
/etc/init.d/sladp start | stop
Para crear un index:
slapindex -v -f /etc/ldap/slapd.conf
Para backup de la base:
/etc/init.d/slapd stop (Debe estar detenido el servicio)
slapcat -v -f /etc/ldap/slapd.conf -l /home/local/backup-ldap.ldif
Para recuperar la base desde un respaldo:
/etc/init.d/slapd stop
rm -rf /var/lib/ldap/*
slapadd -v -c -l /home/admin/backup-ldap.ldif -f /etc/ldap/slapd.conf
/etc/init.d/slapd start
Para agregar un registro:
ldapadd -x -D 'cn=admin,dc=example,dc=exampledomain' -w password -f rvillar.ldif
Para eliminar un registro:
ldapdelete -x -h 127.0.0.1 -D 'cn=admin,dc=example,dc=exampledomain' -w password "cn=userdel,ou=People,dc=example,dc=exampledomain"
Para busquedas:
ldapserach -x
ldapsearch -x -b 'dc=example,dc=exampledomain' cn='Marcela Alegria' uid ou
ldapsearch -x -b 'dc=example,dc=exampledomain' "(&(ou=Math)(cn=*Pig*))"
Para crear una cadena para password cifrada:
slappasswd -u -s
Migracion del servicio Openldap a un nuevo servidor Debian...
Estos fueron los pasos que hice para migrar la informacion de un servidor ldap existente a un nuevo servidor de ldap (Debian).
* Hacer respaldo de la base ldap en el servidor actual
1) /etc/init.d/slapd stop
2) slapcat -v -f /etc/ldap/slapd.conf -l /home/local/backup-ldap.ldif
* En el nuevo servidor:
1) Instalacion de openldap
apt-get install slapd ldap-utils
2) En mi caso el apt-get no me pregunto nada y trato de configurarlo con informacion local, pero fue necesario cambiarlo a la definicion del servidor anterior.
# /etc/init.d/slapd stop
# vi /etc/ldap/ldap.conf
BASE dc=misubdom,dc=midom
URI ldap://127.0.0.1
# vi /etc/ldap/slapd.conf
suffix "dc=misubdom,dc=midom"
rootdn "cn=admin,dc=misubdom,dc=midom"
3) Probando la configuracion
# slaptest -f /etc/ldap/slapd.conf -d2
4) Iniciando el servicio
#/etc/init.d/slapd start
7) Comprobando que funciona
# ldapsearch -x
8) Ahora si, la migracion de la informacion propiamente dicho:
# /etc/init.d/slapd stop
# slapadd -v -c -l /home/admin/backup-ldap.ldif -f /etc/ldap/slapd.conf
9) Iniciando el servicio
#/etc/init.d/slapd start
10 ) Comprobando que funciona
# ldapsearch -x
* Hacer respaldo de la base ldap en el servidor actual
1) /etc/init.d/slapd stop
2) slapcat -v -f /etc/ldap/slapd.conf -l /home/local/backup-ldap.ldif
* En el nuevo servidor:
1) Instalacion de openldap
apt-get install slapd ldap-utils
2) En mi caso el apt-get no me pregunto nada y trato de configurarlo con informacion local, pero fue necesario cambiarlo a la definicion del servidor anterior.
# /etc/init.d/slapd stop
# vi /etc/ldap/ldap.conf
BASE dc=misubdom,dc=midom
URI ldap://127.0.0.1
# vi /etc/ldap/slapd.conf
suffix "dc=misubdom,dc=midom"
rootdn "cn=admin,dc=misubdom,dc=midom"
3) Probando la configuracion
# slaptest -f /etc/ldap/slapd.conf -d2
4) Iniciando el servicio
#/etc/init.d/slapd start
7) Comprobando que funciona
# ldapsearch -x
8) Ahora si, la migracion de la informacion propiamente dicho:
# /etc/init.d/slapd stop
# slapadd -v -c -l /home/admin/backup-ldap.ldif -f /etc/ldap/slapd.conf
9) Iniciando el servicio
#/etc/init.d/slapd start
10 ) Comprobando que funciona
# ldapsearch -x
sábado, 3 de mayo de 2008
Debian como cliente de autenticacion de Openldap..
1) # apt-get install libpam-ldap libnss-ldap
2) Modificar archivos de pam para definir que sea valido autenticacion via ldap.
En /etc/pam.d/common-account
account sufficient pam_ldap.so
account required pam_unix.so
En /etc/pam.d/common-auth
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure
En /etc/pam.d/common-password
password sufficient pam_ldap.so
password required pam_unix.so nullok obscure min=4 max=8 md5
En /etc/pam.d/common-session
session sufficient pam_ldap.so
session required pam_unix.so
En /etc/nsswitch.conf:
:%s/compat/ldap files/g
SOLUCION DE PROBLEMAS:
1) Cuando se trata de un usuario local, pide en 2 ocasiones el password. Eso se soluciona poniendo una opcion mas en los archivos /etc/pam.d/common-*
use_first_pass
ejemplo:
/etc/pam.d/common-auth
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure use_first_pass
2) Al reiniciar el equipo, manda durante el boot el mensaje:
udevd[374]: nss_ldap: could not connect to any LDAP server as (null) - Can't contact LDAP server
udevd[374]: nss_ldap: failed to bind to LDAP server ldap://ip.ldap: Can't contact LDAP server
Eso pasa por que se trata de conectar al servidor ldap antes de levantar la interfaz de red. Lo solucione asi:
# rm -rf /etc/rcS.d/S40networking
# ln -s /etc/init.d/networking /etc/rcS.d/S09networking
2) Modificar archivos de pam para definir que sea valido autenticacion via ldap.
En /etc/pam.d/common-account
account sufficient pam_ldap.so
account required pam_unix.so
En /etc/pam.d/common-auth
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure
En /etc/pam.d/common-password
password sufficient pam_ldap.so
password required pam_unix.so nullok obscure min=4 max=8 md5
En /etc/pam.d/common-session
session sufficient pam_ldap.so
session required pam_unix.so
En /etc/nsswitch.conf:
:%s/compat/ldap files/g
SOLUCION DE PROBLEMAS:
1) Cuando se trata de un usuario local, pide en 2 ocasiones el password. Eso se soluciona poniendo una opcion mas en los archivos /etc/pam.d/common-*
use_first_pass
ejemplo:
/etc/pam.d/common-auth
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure use_first_pass
2) Al reiniciar el equipo, manda durante el boot el mensaje:
udevd[374]: nss_ldap: could not connect to any LDAP server as (null) - Can't contact LDAP server
udevd[374]: nss_ldap: failed to bind to LDAP server ldap://ip.ldap: Can't contact LDAP server
Eso pasa por que se trata de conectar al servidor ldap antes de levantar la interfaz de red. Lo solucione asi:
# rm -rf /etc/rcS.d/S40networking
# ln -s /etc/init.d/networking /etc/rcS.d/S09networking
Suscribirse a:
Entradas (Atom)