2 votos

Demonio Slapd no se puede iniciar: TLS def init ctx error: -1

Ayer tuve que reiniciar mi Mac OS X Lion Server y después de reiniciar, he observado que no tengo ningún tipo de conexión a mi LDAPv3 en el localhost, así como de los usuarios no disponible en el Servidor de la aplicación.

Siguiente, el Servidor de aplicación tiene mostraron tres los certificados caducados. Sus nombres comienzan con "APN".

No estoy seguro de si el problema está conectado a los certificados específicamente, pero, por desgracia "slapd" se refiere a problemas con los principales certificados para mi dominio interno.

El siguiente es el registro de slapd sí mismo:

Oct 27 17:49:57 apple slapd[723]: @(#) $OpenLDAP: slapd 2.4.23 (Jun 24 2012 23:35:56) $
    root@grace.apple.com:/private/var/tmp/OpenLDAP/OpenLDAP-186.5~1/servers/slapd

Oct 27 17:49:57 apple slapd[723]: daemon: SLAP_SOCK_INIT: dtblsize=8192
Oct 27 17:49:57 apple slapd[723]: main: TLS init def ctx failed: -1 
Oct 27 17:49:57 apple slapd[723]: slapd stopped.

Sistema de registro obviamente muestra:

Oct 27 17:53:19 apple com.apple.launchd[1] (org.openldap.slapd[879]): Exited with code: 1  
Oct 27 17:53:19 apple com.apple.launchd[1] (org.openldap.slapd): Throttling respawn: Will start in 10 seconds

Al intentar iniciar slapd desde la línea de comandos (usando: /usr/libexec/slapd -d -1), recibo el siguiente mensaje antes del accidente:

TLS: attempting to read
 `/etc/certificates/domain.com.456DACFFC771F8EB2F5A8E0EBB269969B8164097.key.pem'.
execv failed 
TLS: could not use key file
 `/etc/certificates/domain.com.456DACFFC771F8EB2F5A8E0EBB269969B8164097.key.pem'.
LS: error:0D07207B:asn1 encoding routines:ASN1_get_object:header too long
/SourceCache/OpenSSL098/OpenSSL098-49/src/crypto/asn1/asn1_lib.c:150
main: TLS init def ctx failed: -1 slapd destroy: freeing system resources. slapd stopped.

Si puedo quitar TLS las opciones de configuraciones de "/etc/openldap/slapd_macosxserver.conf" entonces yo soy capaz de arrancar el demonio (usando: /usr/libexec/slapd -d -1 -f slapd_macosxserver.conf. Todos mis usuarios una vuelta, no me puede entrar en la vía de Administrador de Grupo de trabajo o un Servidor de aplicación.

Mientras tanto, el Servidor de Administración en el Open Directory entrada muestra que:

  1. Servidor LDAP es: la Ejecución de
  2. Contraseña Servidor: Detenido
  3. Kerberos es: la Ejecución de

He intentado un par de cosas, pero aún no tienen idea de cómo solucionar el problema.

1voto

Jonathan Sampson Puntos 121800

Me gustaría recomendar la creación de otro certificado autofirmado en el Servidor.aplicación que puede utilizar para garantizar la seguridad de servicios (si los demás se fueron vencidos/borrado). Por la creación del certificado de Servidor.la aplicación, automáticamente disponible para otros servicios (como el Open Directory).

Después de que hayas creado un nuevo certificado auto-firmado, siga los pasos 6 a 12 en este artículo (que describa cómo su certificado SSL puede ser configurado para su uso con Open Directory). Realizar el Open Directory -> Configuración -> LDAP -> configuración de SSL a través del Servidor de Administración de escritura el certificado correcto trazados en la slapd archivo de configuración.

Una vez que haya corregido los problemas de certificados, Open Directory (slapd) debe iniciarse normalmente (sin tener que iniciar de la mano). Si la Contraseña del Servidor todavía no show running después de eso, usted podría intentar un reinicio (o comprobar para ver si la generación de los registros de bloqueo u otros errores en la Consola).

Editar

Después de modificar la configuración de los certificados para su uso con LDAP, es probablemente vale la pena comprobar que la máquina ha proporcionado un certificado actualizado, rutas a slapd en la slapd_macosxserver.conf archivo. Es decir, la única cadena de números y caracteres de la clave/cert caminos debería haber cambiado.

Para confirmar que slapd puede acceder a la clave privada correspondiente al certificado que usted está asegurando los servicios LDAP, puede consultar el archivo en /etc/openldap/slapd_macosxserver.conf...Busque una línea mencionando certadmin...la línea Que especifica el comando que slapd se utiliza para recuperar la clave privada del Llavero. Es posible realizar ese comando (copiar y pegar) en la Terminal para ver si la contraseña de clave privada puede ser recuperada de la cookie:

/usr/sbin/certadmin --get-private-key-passphrase /etc/certificates/domain.com.456DACFFC771F8EB2F5A8E0EBB269969B8164097.key.pem

Una vez que hayas recuperado la frase de paso, ver si usted puede ver la clave privada utilizando esa frase de:

sudo openssl rsa -in /etc/certificates/domain.com.456DACFFC771F8EB2F5A8E0EBB269969B8164097.key.pem -text -noout

Cuando se le pida la contraseña, copia y pega el valor que obtuvo en el paso anterior. Usted debe ver la clave privada de salida de los datos en la pantalla. Esto confirmaría que:

1.) Su contraseña de clave privada puede ser recuperada desde el Llavero

2.) La frase de contraseña en el Llavero puede ser usado para descifrar la clave

Si usted no puede obtener la contraseña y desbloquear la clave, es posible que slapd no es capaz de tanto. Yo creo que el software que está usando un llavero elemento en el Sistema de llavero con el nombre "Mac OS X certificado del Servidor de administración" con una especie de "solicitud de contraseña". La "Cuenta" para que keychain elemento debe ser fijado a la misma cadena de caracteres y números (456DACFFC771F8EB2F5A8E0EBB269969B8164097 en este ejemplo) que se ven en el cert/clave rutas en /etc/certificates. Si usted no ve uno de estos correspondientes contraseñas de aplicación en el Sistema de llavero, puede ser tu problema.

1voto

sweetfa Puntos 120

El siguiente ha sido probado en la nieve leopard 10.6 y lion 10.7 versiones del sistema operativo cuando OpenDirectory servidor LDAP no se iniciará y la Contraseña del Servidor se está ejecutando.

Si usted tiene un vistazo a la cola del archivo sudo tail /etc/openldap/slapd.d/cn=config.ldif verá un conjunto de Certificado TLS entradas similares a la cuadra de abajo:

olcTLSCertificateFile: /etc/certificates/[myservername].ECA88C7518AEDE947AAC94D9A259D1B2E5621169.cert.pem

olcTLSCACertificateFile: /etc/certificates/[myservername].ECA88C7518AEDE947AAC94D9A259D1B2E5621169.chain.pem

olcTLSCertificateKeyFile: /etc/certificates/[myservername].ECA88C7518AEDE947AAC94D9A259D1B2E5621169.key.pem

olcTLSCertificatePassphraseTool: /usr/sbin/certadmin --get-private-key-passphrase /etc/certificates/[myservername].ECA88C7518AEDE947AAC94D9A259D1B2E5621169.key.pem

entryCSN: 20120628190714.643255Z#000000#001#000000

Si se comparan estas entradas a los valores que se muestran en /etc/certificados lo más probable es encontrar que el número mágico es diferente a la de su certificado para el valor que se muestra en el /etc/directorio de certificados para los certificados.

Si ejecuta el comando

sudo /usr/libexec/slapd -d 1

usted verá hacia el final de la traza de una línea de aproximación

TLS: could not load verify locations (file:`/etc/certificates…

Para superar este problema, quite los últimos cinco líneas de la /etc/openldap/slapd.d/cn=config.ldif archivo manualmente usando tu editor favorito y sudo.

A continuación, reiniciar ldap emita los siguientes comandos

sudo /usr/bin/db_recover -h /var/db/openldap/openldap-data
sudo launchctl load /System/Library/LaunchDaemons/org.openldap.slapd.plist

Todos deben entonces ser fijo.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X