Servidor LDAP

Per aquest procés hem seguit els passos proposats en aquestes pàgines WEB:

https://help.ubuntu.com/10.10/serverguide/C/openldap-server.html

http://www.humbug.in/docs/ubuntu-server-guide-es-10.04/openldap-server.html

http://www.humbug.in/docs/ubuntu-server-guide-es-10.04/samba-ldap.html

El programari ja ha estat instal·lat prèviament.

Càrrega d'uns shcema adicionals:

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

backend

Es prepara un arxiu backend, amb les característiques principals del nostre arbre. Arxiu de backend de l'escola
Per afegir el backend al directori executem l'ordre

ldapadd -Y EXTERNAL -H ldapi:/// -f backend.intracentre.ldif

frontend

El directori ja està preparat per a ser poblat, escriurem un arxiu frontend amb les característiques principals. Arxiu de frontend de l'escola
Per incorporar el frontend executarem l'ordre

ldapadd -x -D cn=Administrator,dc=intracentre -W -f frontend.intracentre.ldif

Schema adicionals

Crear un arxiu schema_convert.conf

include /etc/ldap/schema/core.schema
include /etc/ldap/schema/collective.schema
include /etc/ldap/schema/corba.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/duaconf.schema
include /etc/ldap/schema/dyngroup.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/java.schema
include /etc/ldap/schema/misc.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/openldap.schema
include /etc/ldap/schema/ppolicy.schema

Executar les ordres

mkdir /tmp/ldif_output
slapcat -f schema_convert.conf -F /tmp/ldif_output -n0 -s "cn={5}dyngroup,cn=schema,cn=config" > /tmp/cn=dyngroup.ldif

Editar l'arxiu /tmp/cn=dyngroup.ldif

Deixar aquestes línies així:

dn: cn=dyngroup,cn=schema,cn=config
...
cn: dyngroup

Suprimir les línies del final

structuralObjectClass: olcSchemaConfig
entryUUID: 10dae0ea-0760-102d-80d3-f9366b7f7757
creatorsName: cn=config
createTimestamp: 20080826021140Z
entryCSN: 20080826021140.791425Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20080826021140Z

Afegir l'Schema

ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/cn=dyngroup.ldif

Afegir l'extensió per a SAMBA

El programari ja ha estat descarregat prèviament, però cal aconseguir l'schema per a samba

cp /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz /etc/ldap/schema/
gzip -d /etc/ldap/schema/samba.schema.gz

El procés per incorporar l'schema de SAMBA serà similar al que acabem d'efectuar.

Crear un arxiu schema_convert_samba.conf

include /etc/ldap/schema/core.schema
include /etc/ldap/schema/collective.schema
include /etc/ldap/schema/corba.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/duaconf.schema
include /etc/ldap/schema/dyngroup.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/java.schema
include /etc/ldap/schema/misc.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/openldap.schema
include /etc/ldap/schema/ppolicy.schema
include /etc/ldap/schema/samba.schema

Executar les ordres

slapcat -f schema_convert_samba.conf -F /tmp/ldif_output -n0 -s "cn={12}samba,cn=schema,cn=config" > /tmp/cn=samba.ldif

Editar l'arxiu /tmp/cn=samba.ldif

Deixar aquestes línies així:

dn: cn=samba,cn=schema,cn=config
...
cn: samba

Suprimir les línies del final

structuralObjectClass: olcSchemaConfig
entryUUID: b53b75ca-083f-102d-9fff-2f64fd123c95
creatorsName: cn=config
createTimestamp: 20080827045234Z
entryCSN: 20080827045234.341425Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20080827045234Z

Afegir l'Schema

ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/cn=samba.ldif

Creació dels indexs

Creació de l'arxiu index.ldif

dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: uidNumber eq
olcDbIndex: gidNumber eq
olcDbIndex: loginShell eq
olcDbIndex: uid eq,pres,sub
olcDbIndex: memberUid eq,pres,sub
olcDbIndex: uniqueMember eq,pres
olcDbIndex: sambaSID eq
olcDbIndex: sambaPrimaryGroupSID eq
olcDbIndex: sambaGroupType eq
olcDbIndex: sambaSIDList eq
olcDbIndex: sambaDomainName eq
olcDbIndex: default sub

Incorporació de l'index

ldapmodify -Y EXTERNAL -H ldapi:/// -f index.ldif

Càrrega dels usuaris

Es pot preparar un arxiu amb tots els usuaris que s'han d'incorporar, l'estructura de les dades per a cadascun dels usuaris a de respondre a aquest esquema:

dn: uid=argo,ou=people,dc=intracentre
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: argo
sn: Argo
givenName: Alumnat del centre
cn: Alumnat del centre
displayName: Alumnat del centre
uidNumber: 1006
gidNumber: 1003
userPassword: argo
gecos: Alumnat del centre
loginShell: /bin/bash
homeDirectory: /home/argo

uid ha de coincidir amb l'identificador que ja es fa servir uidNumber Si aquest usuaris ja existia en un servidor anterior, cal que coincideixi amb el mateix que tenia anteriorment. Si s'ha de fer servir LTSP el número ha de ser de quatre xifres gidNumber Ha de coincidir amb número de grup vàlids, definits a l'arxiu frontend.intracentre.ldif gecos no han d'haver lletres amb accents, o el procés de càrrega no funcionarà

Si al nostre arxiu amb els usuaris li hem donat el nom de carregausuaris.ldif l'ordre per fer la càrrega dels usuaris a la base de dades podria ser:

ldapadd -x -D cn=Administrator,dc=intracentre -W -f carregausuaris.ldif
o la línia, segons l'usuari administrador de la xarxa
ldapadd -x -D uid=ldapadmin,ou=people,dc=intracentre -W -f carregausuaris.ldif

Configuració de smbldap-tools

Es necessari configurar smbldap-tools, per tal que s'adapti a l'entorn.
Caldrà respondre un seguit de qüestions.
Es generen els arxius
/etc/smbldap-tools/smbldap.conf i
/etc/smbldap-tools/smbldap_bind.conf
que permeten la seva edició posterior
Executem les comandes

gzip -d /usr/share/doc/smbldap-tools/configure.pl.gz
perl /usr/share/doc/smbldap-tools/configure.pl

amb l'editor es pot veure el seu contingut i assegurar-nos que és correcte

Menú Anterior | Pas següent: Client LDAP