[OpenLDAP] Forzare il meccanismo di autenticazione

Pierangelo Masarati ando a sys-net.it
Ven 12 Maggio 2006 10:35:22 CEST


On Wed, 2006-05-03 at 13:37 +0200, Marco wrote:
> Salve a tutti,
> Scusate la domanda, potrebbe essere scontata (sono ancora un newbie in ldap)...
> Ho installato il pacchetto cyrus-sasl (con meccanismi di
> autenticazione sasl digest-md5, sasl cram-md5, ...) su openldap
> (versone 2.2-7)

^^^ Questa versione non esiste, oppure e' una codifica interna di Ubuntu
che pero' non aiuta a capire di che versione di software si tratti.

> su una distro kubuntu, e volevo sapere se c'era un
> modo per poter forzare tutte le connessioni da e verso slapd con il
> meccanismo SASL DIGEST-MD5, dato che di default (a meno che non lo si
> indichi esplicitamente, ad esempio facendo un ldapsearch...), la
> connessione da/verso il server, ha un meccanismo di autenticazione
> SIMPLE.
> Per attivare cyrus-sasl ho aggiunto in slapd.conf le seguenti linee
> 
> passwd-hash {MD5}

^^^ Questo comando serve solo per le password GENERATE da slapd quando
si usa la Password Modify Extended Operation (RFC3062), come indicato in
slapd.conf(5), e quindi non ha niente a che fare con l'autenticazione

> sasl-regexp uid=(.*),cn=DIGEST-MD5,cn=auth uid=$1,dc=mysso,dc=com

^^^ Questo comando consente di mappare utenze autenticate con SASL su
utenze effettivamente presenti nel database.  Se usi saslpasswd2, come
indicato sotto, e quindi (immagino, non sono un esperto Cyrus SASL)
metti le password nel sasldb, questa linea serve a poco durante
l'autenticazione.

> ovviamente ho creato utenze con password con il comando
> 
> saslpasswd2 -c <username>

^^^ Se (come credo, ma potrei sbagliare) questo indica che intendi
mettere le credenziali nel sasldb, allora OpenLDAP c'entra pochissimo;
si comporta come tutti gli altri software che usano SASL.  I tuoi
problemi vanno risolti dal lato SASL e non OpenLDAP; immagino che questa
non sia la lista piu' adatta.

> Quello che vorrei avere, quindi, in poche parole,  che ogni
> connessione tra il client e il server, avvenga con il meccanismo MD5.
> Ho visto che forse dovrei fare un sasl proxy ma non sono sicuro....
> Qualcuno saprebbe indicarmi come fare?

Non e' chiaro chi si autentichi usando simple bind.

Di default, se compilati con supporto per SASL, i tools OpenLDAP usano
SASL e quindi negoziano con il server il meccanismo piu' adatto.  Per
forzarne uno, ad esempio DIGEST-MD5, si puo' agire sullo slapd.conf di
Cyrus (quello, per intendersi, che sta in $SASL_PATH e che viene letto
dalla libreria SASL lato server).  Non ricordo la sintassi esatta,
immagino che sia nella documentazione Cyrus SASL, sono istruzioni
standard.

Altri client, magari meno ben fatti, usano simple bind perche' non
supportano SASL.  In quel caso, non vedo che altra soluzione usare.  Se
vuoi che loro non possano autenticarsi, allora metti

disallow bind_simple

in slapd.conf(5).

Un sasl proxy (che cos'e'?) che trasformi il loro simple bind in un bind
SASL non mi sembra una grande soluzione: e' come riverniciare una
macchina scassata, sembra magari nuova ma resta scassata.

Ciao, p.




Ing. Pierangelo Masarati
Responsabile Open Solution
OpenLDAP Core Team

SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
------------------------------------------
Office:   +39.02.23998309          
Mobile:   +39.333.4963172
Email:    pierangelo.masarati at sys-net.it
------------------------------------------



Maggiori informazioni sulla lista OpenLDAP