[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Problema en la validación de usuarios en Roundcube utilizando Postfix+Dovecot+LDAP sobre Debian 7



Buenas...
Consulto sobre el tema luego de buscar "bastante" y probar varias configs.
Estuve mirando por esDebian, http://trac.roundcube.net/wiki/,
www.howtoforge.com y no se cuantos sitios mas :p

Este es el escenarios: Distintas maquinas virtuales de Debian 7 en
OpenVZ sobre Debian 7 :)
1 contenedor con Postfix+Dovecot
1 contenedor con Apache2+PhpMyAdmin+PhpLdapAdmin+Roundcube
1 contenedor con MySQL
1 contenedor con OpenLDAP

Ya tengo configurado correctamente Postfix/Dovecot validando contra
OpenLDAP. Usando Telnet o configurando un cliente de correos
(Thunderbird) puedo utilizar el servicio de correo sin problemas.
Desde el server con Apache puedo acceder tanto a MySQL como a OpenLDAP
utilizando las interfaces web de PHP y tambien loguearme al IMAP
utilizando telnet 143.

Llego la hora de instalar un webmail (no todos usan un cliente de
correos) y elegí Roundcube.
Lo instale en el server con Apache2 y ya puede acceder mediante
http://mi_dominio/webmail
El tema es que no doy con la tecla en la configuración de Roundcube
para que valide usuario y contraseña utilizando mis usuarios del árbol
LDAP del otro server.

Estas son las lineas que modifiqué en mí /etc/roundcube/main.inc.php:

// ----------------------------------
// IMAP
// ---------------------------------
$rcmail_config['default_host'] = '192.168.0.247'; #IP server Postfix/Dovecot
$rcmail_config['default_port'] = 143;
$rcmail_config['imap_auth_type'] = "PLAIN";
// ----------------------------------
// SMTP
// ----------------------------------
$rcmail_config['smtp_server'] = '192.168.0.247';
$rcmail_config['smtp_port'] = 25;
$rcmail_config['smtp_user'] = '%u';
$rcmail_config['smtp_pass'] = '%p';
$rcmail_config['smtp_helo_host'] = '192.168.0.247';

En el /etc/roundcube/debian-db.php tengo:
<?php
$dbuser='roundcube_user';
$dbpass='PASS';
$basepath='';
$dbname='roundcube';
$dbserver='192.168.0.243'; #IP server MySQL
$dbport='3306';
$dbtype='mysql';

Estos son los logs de error en /var/log/roundcube/error al tratar de
loguearme en la interfaz web con un us:email y pass de un usuario
cargado en LDAP:

[root@lamp1 roundcube]# tail -f /var/log/roundcube/errors -n0
[22-Sep-2014 20:20:16 UTC] MDB2 Error: no such field (-19): _doQuery:
[Error message: Could not execute statement]
[Last executed query: PREPARE
mdb2_statement_mysql_4969fa39d513ad3b81dc7368c1bceec720de4ec4a FROM
'SELECT * FROM users WHERE mail_host = ? AND alias = ?']
[Native code: 1054]
[Native message: Unknown column 'alias' in 'where clause']
[22-Sep-2014 17:20:16 -0300]: DB Error: _doQuery: [Error message:
Could not execute statement]
[Last executed query: PREPARE
mdb2_statement_mysql_4969fa39d513ad3b81dc7368c1bceec720de4ec4a FROM
'SELECT * FROM users WHERE mail_host = ? AND alias = ?']
[Native code: 1054]
[Native message: Unknown column 'alias' in 'where clause']
 in /usr/share/roundcube/program/include/rcube_mdb2.php on line 293
(POST /webmail/?_task=login&_action=login)
[22-Sep-2014 20:20:16 UTC] MDB2 Error: no such field (-19): _doQuery:
[Error message: Could not execute statement]
[Last executed query: PREPARE
mdb2_statement_mysql_591b06a1d8483dac1124179734d128d76dd852f6b FROM
'INSERT INTO users (created, last_login, username, mail_host, alias,
language) VALUES (now(), now(), ?, ?, ?, ?)']
[Native code: 1054]
[Native message: Unknown column 'alias' in 'field list']
[22-Sep-2014 17:20:16 -0300]: DB Error: _doQuery: [Error message:
Could not execute statement]
[Last executed query: PREPARE
mdb2_statement_mysql_591b06a1d8483dac1124179734d128d76dd852f6b FROM
'INSERT INTO users (created, last_login, username, mail_host, alias,
language) VALUES (now(), now(), ?, ?, ?, ?)']
[Native code: 1054]
[Native message: Unknown column 'alias' in 'field list']
 in /usr/share/roundcube/program/include/rcube_mdb2.php on line 293
(POST /webmail/?_task=login&_action=login)
[22-Sep-2014 17:20:16 -0300]: PHP Error: Failed to create new user in
/usr/share/roundcube/program/include/rcube_user.php on line 510 (POST
/webmail/?_task=login&_action=login)
[22-Sep-2014 17:20:16 -0300]: PHP Error: Failed to create a user
record. Maybe aborted by a plugin? in
/usr/share/roundcube/program/include/rcmail.php on line 860 (POST
/webmail/?_task=login&_action=login)

He encontrado muy poco info en cuanto a Roundcube con LDAP y la
mayoría es sobre el manejo de las libretas de direcciones.
En los log se observa la busqueda del usuario mediante una sentencia
SELECT por lo que nunca se logra conectar y muestra "Us o Pass
incorrecto".
Por lo que tengo entendido la validación ldap es transparente para
Roundcube por lo que los datos de mi árbol LDAP no los configuro en
ningún lado, él debe validar por IMAP contra el server
Dovecot/Postfix, no contra el ldap, pero esto no ocurre.
Les agradecería que me orientaran por donde buscar porque se me queman
los papeles.
Muchas gracias.

Saludos.
Diego.

=======================================================
"Diego H. Cancelo" diego[at]cancelo[dot]com[dot]ar
*GNU/Linux User # 491743* | Huella digital:
03CA 8BAC 823A 80A1 D2FD  E74F 50AB 79D7 8F1A 0DF7
GnuPG: 2048D/8F1A0DF7 | Clave GPG: solicitar por mail
http://www.bootsector.com.ar | http://www.lugro.org.ar
=======================================================
Usá Software Libre.


Reply to: