LDAP/ca: Diferència entre les revisions
De Guifi.net - Wiki Català
| Línia 8: | Línia 8: | ||
apt-get install slapd ldap-utils | apt-get install slapd ldap-utils | ||
| − | He usat estes configs, una per al dimoni, l'altra per fer les càrregues | + | He usat estes configs, una per al dimoni, l'altra per fer les càrregues. |
/etc/ldap/slapd.conf: | /etc/ldap/slapd.conf: | ||
<pre> | <pre> | ||
Revisió de 22:21, 25 març 2011
Aquest article està en desenvolupament. Pràcticament totes les pàgines del Wiki de Guifi.net són editables, però en aquesta falta informació essencial. Ampliant-ho ajudaràs a millorar Guifi.net.
Potser puguis ajudar-te amb els wikis castellà i anglès si tenen una pàgina equivalent.
LDAP al Drupal
Les intencions: disposar d'una infraestructura que permeta autenticar una base única d'usuaris (drupal, wiki, trac...). Es tria LDAP per ser el backend més comú en el sentit que moltes eines (web i no web com ara radius) disposen de complements per autenticar/autoritzar els usuaris.
- Instal.lacio slapd i configuració inicial. Dos usuaris de ldap un per a consultes i un d'altre administrador.
- Per les càrregues, he deixat uns scripts de carrega per donar l'espenta inicial. Encara queda molt per fer:
- comprovació de la coherencia de la bdd generada.
- carrega des de /var/lib/ldap/bulk_load al slapd en produccio.
- mes comprovacions
- no es pot fer un bind per usuari tal cual estan les contrasenyes amb md5 des de drupal, investigar mes.
- usar repositoris per al desenvolupament
- documentació
- Per usar-los s'ha de configurar les credencials del mysql a export_drupal_users.sh i llançar ./ldiff_to_hdb.sh. Això deixa una bdd que ja pot ser usada per un ldap en producció copiant-les des de /var/lib/ldap/bulk_load/* cap a /var/lib/ldap i reiniciant slapd.
- Exemple de recerca:
ldapsearch -x -W -D "cn=admin,dc=guifi,dc=net" -b "dc=guifi,dc=net" -h localhost "(cn=rotobator)"
- Creació de certificats per al directori. Configuració d'ldap i drupal. Tenim alguna entitat de certificacio??
Mol bàsicament:
apt-get install slapd ldap-utils
He usat estes configs, una per al dimoni, l'altra per fer les càrregues.
/etc/ldap/slapd.conf:
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
loglevel none
modulepath /usr/lib/ldap
moduleload back_hdb
sizelimit 500
tool-threads 1
backend hdb
database hdb
suffix "dc=guifi,dc=net"
rootdn "cn=admin,dc=guifi,dc=net"
rootpw "{SSHA}eLiioMnhTcfq/4GIWXK82HkG5UTBm4d3"
directory "/var/lib/ldap"
dbconfig set_cachesize 0 2097152 0
dbconfig set_lk_max_objects 1500
dbconfig set_lk_max_locks 1500
dbconfig set_lk_max_lockers 1500
index objectClass eq
lastmod on
checkpoint 512 30
access to dn.base="" by * read
access to *
by dn="cn=rotobator,dc=guifi,dc=net" write
by anonymous auth
by * none
/etc/ldap/slapd_bulk_load.conf (bàsicament el mateix excepte directory:
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
loglevel none
modulepath /usr/lib/ldap
moduleload back_hdb
sizelimit 500
tool-threads 1
backend hdb
database hdb
suffix "dc=guifi,dc=net"
rootdn "cn=admin,dc=guifi,dc=net"
rootpw "{SSHA}eLiioMnhTcfq/4GIWXK82HkG5UTBm4d3"
directory "/var/lib/ldap/bulk_load"
dbconfig set_cachesize 0 2097152 0
dbconfig set_lk_max_objects 1500
dbconfig set_lk_max_locks 1500
dbconfig set_lk_max_lockers 1500
index objectClass eq
lastmod on
checkpoint 512 30
access to dn.base="" by * read
access to *
by dn="cn=admin,dc=guifi,dc=net" write
by anonymous auth
by * none
La rootpw es genera així:
slappasswd -h {MD5}
LDAP al Mediawiki
Es passen les dades per omplir aquesta configuració. Simplement nom de domini i LDAPBaseDN. Per a $wgLDAPEncryptionType pot ser "clear" o "ssl".
## LDAP_Authentication
## http://www.mediawiki.org/wiki/Extension:LDAP_Authentication
## svn co http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/LdapAuthentication/
require_once( "$IP/extensions/LdapAuthentication/LdapAuthentication.php" );
$wgAuth = new LdapAuthenticationPlugin();
//Nombres de los dominios que utilizarás.
$wgLDAPDomainNames = array("LDAP");
//Asociación entre nombre de dominio y nombre DNS de la máquina donde se va a validar.
$wgLDAPServerNames = array("LDAP"=>"domini.net");
//Podemos permitir la convivencia de autenticación local del wiki con LDAP.
$wgLDAPUseLocal = true;
//Encriptación en las solicitudes LDAP.
$wgLDAPEncryptionType = array("LDAP"=>"ssl");
//Le decimos cual es la base de la consulta
$wgLDAPBaseDNs = array("LDAP"=>"dc=domini,dc=net");
$wgLDAPSearchAttributes = array("LDAP"=>"uid");
//Utilizamos los grupos LDAP para las directivas de grupo:
$wgLDAPGroupsPrevail = array("LDAP"=>true);
$wgLDAPGroupNameAttribute = array("LDAP"=>"cn");
Proves de balanceig/distribució
Ben mirat potser més el segon que no pas el primer per tal d'implementar-ho en un futur pròxim/necessari
- segona instancia d'ldap, pot ser remota o a la mateixa maquina virtual amb diferents ports.
- haproxy i configuració.
- configuració ldap-drupal per que apunte a haproxy.
- proves de replicació.
- Qué passa si una instancia te problemes?
- s'acumulen transaccions no realitzades?
- avaluar despres de les proves si ens interessa replicació en línia o simplement es sincronitzen les bdd del directori ppal cap a les instancies secundaries.