Hoy estaba configurando un servidor OpenLDAP y me ha pasado algo bastante curioso: para la administración del árbol LDAP (gestión de usuarios y grupos) estaba utilizando el paquete ldapscripts, una serie de scripts para gestionar de forma mas sencilla las tareas de administración de usuarios y grupos.
La configuración de ldapscripts es bastante sencilla, en el directorio /etc/ldapscripts/ únicamente hay un par de ficheros que hay que parametrizar: ldapscripts.conf almacena los parámetros de conexión a tu servidor OpenLDAP, y ldapscripts.passwd almacena la contraseña para poder conectarse al servidor con autenticación.
Total, que edito con Vim este último fichero y meto la contraseña correspondiente y me dirijo a hacer algunas pruebas, pero ¡oh sorpresa!, las pruebas fallan y el log de ldapscripts (por defecto /var/log/ldapscripts.log) empieza a soltar errores tipo «ldap_bind: Invalid credentials (49)». Tras revisar un par de veces de forma conciencuda algún error en el fichero de configuración y los permisos (y ver que todo estaba bien), he empezado a tirarme un poco de los pelos. Una rápida búsqueda por Internet me ha facilitado la solución, concretamente en ServerFault: resulta que no se puede editar con Vim, porque por defecto, Vim añade un retorno de carro a la última línea, que hace precisamente que la autenticación desde ldapscripts falle, ¡eureka! 🙂
Para añadir la contraseña lo mas recomendable es utilizar el comando echo:
echo -n "contraseña" > /etc/ldapscripts/ldapscripts.passwd
Salud 😉