openLDAP ssl/tls Centos 6.3

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Úterý Březen 18 11:38:38 CET 2014


On Tue, 18 Mar 2014, Katerina Bubenickova wrote:

>> (gdb)
>> tlsm_deferred_ctx_init (arg=0x7f6c70002600) at tls_m.c:2373
>> 2373 	if ( lt->lt_certfile ) {
>> (gdb)
>> 2424 	if ( lt->lt_keyfile ) {
>> (gdb)
>> 2439		if ( !ctx->tc_is_server ) {
>> (gdb)
>> 2472			if ( !ctx->tc_certificate ) {
>> (gdb)
>> 2473				Debug( LDAP_DEBUG_ANY,

Ha! Tady chce hlásit "TLS: error: no server certificate: must specify 
a certificate for the server to use". Akorát ten trotl, co to 
naprogramoval, z toho udělal ladící hlášku, takže tato zásadní informace 
skončí někde v *píp*. Kdyby se ho bývalo podařilo přesvědčit, aby toto
vysvětlení svých potíží napsal do logu, mohli jsme si ušetřit hromadu 
práce...

Chyba je tedy v tom, že slapd nějak ze své konfigurace nepochopí jaký 
certifikát (a klíč) má použít. Tato informace by měla být
v lt->lt_certfile, kde lt je zkratka pro ctx->tc_config a to nastavuje
tlsm_ctx_init, což se volá z ldap_int_tls_init_ctx.

Zřejmě ta nastavení, u kterých ta diskuse začala, slapd až tak úplně 
nebere na vědomí.

> Zkusím tedy ještě jednou (nebo několikrát dle potřeby :-) vygenerovat
> certifikáty podle ssl, [...]

Vzhledem k výše uvedenému by to asi skončilo stejně špatně.

> Ještě bych mohla mít nějaký problém v konf. souborech k openldap...

Asi ano. Hmm... když koukám na to, kde ta nastavení podle úplně prvního 
dopisu máte:

> /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif
> olcTLSCACertificatePath: /etc/pki/tls/certs
> olcTLSCertificateKeyFile: "OpenLDAP Server"
> olcTLSCertificateFile: /etc/openldap/certs/password

Je to vůbec na správném místě? Jestli to dobře chápu, tak olcTLS... mají 
být v cn=config, ale toto vypadá, jako by to bylo v souboru pro
olcDatabase={0}config,cn=config?!

Neměly by tyto direktivy být spíš v souboru
/etc/openldap/slapd.d/cn=config.ldif?

Co vypíše ldapsearch, když se zeptáte právě na cn=config?

> Moc děkuju za pomoc, debugování je prima zábava :-)

Zejména by to byla zábava v případě, kdy by to narazilo na kus kódu, který 
je nějak brutálně optimalizovaný. ;)

-- 
Pavel Kankovsky aka Peak                          / Jeremiah 9:21        \
"For death is come up into our MS Windows(tm)..." \ 21st century edition /


Další informace o konferenci Linux