bueno este esta espectacular….
para que los usuarios que utilizan el webmail roundcube puedan cambiar sus contraseñas que se setearon en el postfixadmin
en este caso tenemos todo instalado el webmail roundcube (ver post anteriores) y el postfixadmin desde donde creamos nuestro buzones de correo.
bueno para habilitar el cambio de contraseñas tenemos que cambiar un par de lineas en unos archivos que les voy a decir ahora…
en el archivo de configuracion del roundcube (main.inc.php)
cambiamos esta linea

$rcmail_config['plugins'] = array('');

por

$rcmail_config['plugins'] = array('password');

despues ingresamos a la consolita en el rootpath del roundcube (en el post anterior estaba en /srv/www/htdocs/webmail/) y hacemos esto

# cd plugins/password/
# cp config.inc.php.dist config.inc.php

y despues editamos el archivo de configuracion del plugin password (o sea config.inc.php)
las lineas

$rcmail_config['password_db_dsn'] = '';

por

$rcmail_config['password_db_dsn'] = 'mysql://usuario:password@hostbd/basededatospostfixadmin';

(esta parte tienen que completar con sus propios datos no con estos que paso :s )

y

$rcmail_config['password_query'] = 'SELECT update_passwd(%c, %u)';

por

$rcmail_config['password_query'] = 'UPDATE `mailbox` SET password=%c WHERE `username` = %u LIMIT 1;';

y listo el posho… en la parte de configuracion del webmail les va a aparecer una nueva pestaña en la que se va a poder cambiar el password.
para que salgan los mensajes en español hay que editar el archivo

 ./localization/en_US.inc

Escrito el 28 / enero / 2010 y trata sobre: dovecot, mysql, postfix, roundcube, servidor de correo

Bueno…
me doy cuenta que no habia puesto todavia el tema webmail aca….
instalamos todo el postfix con autenticacion mysql, creamos la cuenta con el postfixadmin…
pero no tenemos webmail jejejeje.
bueno comencemos a instalar en el opensuse siempre….
vamos a usar el webmail roundcube
primero que nada tenemos que crear una base de datos para el webmail (no tengo ganas de explicar como)
a esta base de datos le vamos a llamar roundcubemail…
entramos en nuestro html root path o sea en el suse /srv/www/htdocs/

# cd /srv/www/htdocs/
# wget http://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.3.1/roundcubemail-0.3.1.tar.gz?use_mirror=ufpr
# tar -zxvf roundcubemail-0.3.1.tar.gz
# mv roundcubemail-0.3.1 webmail
# chown wwwrun.www -R webmail/
# cd webmail/config/
# cp main.inc.php.dist main.inc.php
# cp db.inc.php.dist db.inc.php

editamos los valores del archivo main.inc.php

$rcmail_config['username_domain'] = '';

por

$rcmail_config['username_domain'] = 'midominio.com';

(midominio.com es el nombre del dominio que queremos usar para el webmail)

$rcmail_config['default_host'] = '';

por

$rcmail_config['default_host'] = 'localhost';
$rcmail_config['smtp_server'] = '';

por

$rcmail_config['smtp_server'] = 'localhost';
$rcmail_config['create_default_folders'] = FALSE;

por

$rcmail_config['create_default_folders'] = TRUE;
$rcmail_config['enable_installer'] = false;

por

$rcmail_config['enable_installer'] = true;1

despues editamos el archivo db.inc.php
la linea
1$rcmail_config['db_dsnw'] = 'mysql://roundcube:pass@localhost/roundcubemail';

por nuestra configuracion, o sea el user, el pass el host y la base de datos que vamos a usar

y en un navegador abrimos la pagina web del instalador del webmail

http://ip.o.host.del.webserver/webmail/installer/

en el paso tres tenemos que inicializar la base de datos haciendo click en initialize database
y despues como nos dice el instalador tenemos que eliminar la carpeta installer del servidor
y listo!!!
podemos ingresar al webmail desde http://ip.o.host.del.webserver/webmail/

Escrito el 28 / enero / 2010 y trata sobre: dovecot, linux, mysql, postfix, roundcube, servidor de correo

Bueno en la entrada anterior les puse como configurar el postfix como para que reciba correo de varios dominios.
Ahora les voy a mostrar como hacer para que la autenticacion del imap lo haga por el pass de cada user en la base de datos postfix del mysql.
bueno no es mucho quilombo este…
les paso mi archivo de configuracion para que puedan ver, pero acuerdence que tienen que tener instalado el dovecot para que esto funcione jua jua jua

cat /etc/dovecot/dovecot.conf |grep -v '#'
protocols = imap imaps pop3 pop3s
   protocol imap {
     listen = *:143
     ssl_listen = *:993
   }
   protocol pop3 {
     listen = *:110
     ssl_listen = *:995
   }
log_path = /var/log/dovecot.log
log_timestamp = "%b %d %H:%M:%S "
ssl_disable = no
ssl_cert_file = /etc/ssl/certs/dovecot.pem
ssl_key_file = /etc/ssl/private/dovecot.pem
verbose_ssl = yes
login_dir = /var/run/dovecot/login
login_greeting = Dovecot ready.
login_log_format_elements = user=< %u> method=%m rip=%r lip=%l %c
login_log_format = %$: %s
mail_location = maildir:/home/vmail/%d/%n
mail_access_groups = vmail
mail_debug = no
mail_log_prefix = "%Us(%u): "
mail_log_max_lines_per_sec = 20
verbose_proctitle = yes
first_valid_uid = 2
last_valid_uid = 5000
first_valid_gid = 2
last_valid_gid = 5000
maildir_stat_dirs = yes
protocol imap {
  mail_plugin_dir = /usr/lib64/dovecot/modules/imap
}
  protocol pop3 {
  pop3_uidl_format = %08Xu%08Xv
  mail_plugin_dir = /usr/lib64/dovecot/modules/pop3
}
protocol lda {
  postmaster_address = postmaster@mydomain.com
  hostname = mail.uplinkzero.com
  mail_plugin_dir = /usr/lib64/dovecot/modules/lda
  sendmail_path = /usr/lib/sendmail
  auth_socket_path = /var/run/dovecot/auth-master
}
auth_executable = /usr/lib/dovecot/dovecot-auth
auth_verbose = no
auth_debug = no
auth_debug_passwords = no
auth default {
  mechanisms = plain
  passdb sql {
    args = /etc/dovecot/dovecot-sql.conf
  }
  userdb sql {
    args = /etc/dovecot/dovecot-sql.conf
  }
  user = root
  socket listen {
    master {
      path = /var/run/dovecot/auth-master
      mode = 0660
      user = vmail
      group = vmail
    }
    client {
      path = /var/run/dovecot/auth-client
      mode = 0660
    }
  }
}
dict {
}
plugin {
}

despues de colocar este archivo (los certificados les mostre en un post anterior como se creaban)
tienen que crear y modificar el sigte archivo:

# touch  /etc/dovecot/dovecot-sql.conf
# cat /etc/dovecot/dovecot-sql.conf
driver = mysql
connect = host=localhost dbname=postfix user=postfix password=postfixadmin
# this needs to be the same as what's used in postfixadmin
default_pass_scheme = md5-crypt
password_query = SELECT password FROM mailbox WHERE username = '%u'
user_query = SELECT maildir, 5000 AS uid, 5000 AS gid FROM mailbox WHERE username = '%u'

Modificamos el archivo de autenticacion SASL para que quede de esta manera

# cat /etc/sysconfig/saslauthd
## Path:           System/Security/SASL
## Type:           list(getpwent,kerberos5,pam,rimap,shadow,ldap)
## Default:        pam
## ServiceRestart: saslauthd
#
# Authentication mechanism to use by saslauthd.
# See man 8 saslauthd for available mechanisms.
#
# SASLAUTHD_AUTHMECH=pam
SASLAUTHD_AUTHMECH="rimap -r -O localhost"
## Path:           System/Security/SASL
## Type:           integer(1:)
## Default:        5
## ServiceRestart: saslauthd
#
# Authentication mechanism to use by saslauthd.
# See man 8 saslauthd for available mechanisms.
#
SASLAUTHD_THREADS=5

Creamos un script para crear los Maildir

# touch /usr/bin/maildirmake.dovecot
# cat  /usr/bin/maildirmake.dovecot

#!/bin/sh
#
# maildirmake.dovecot -- create maildirs
# Copyright (c) 2003, Jaldhar H. Vyas
# "Do what thou wilt" shall be the whole of the license.
#
dir=$1
if [ -z "$dir" ]; then
  echo "Must supply a directory path"
  exit 1
fi

if [ "$dir" = "-h" ]; then
  echo "usage: $0 directory"
  exit 0
fi

umask 077
mkdir -p $dir/{cur,new,tmp} || echo "$!" && exit 1
chmod u+rwxg-a- $dir $dir/{cur,new,tmp} || echo "$!" && exit 1

exit 0

Y por ultimo le hacemos ejecutable y el link

# chmod 777 /usr/bin/maildirmake.dovecot
# ln -s /usr/bin/maildirmake.dovecot /usr/bin/maildirmake
Escrito el 29 / diciembre / 2008 y trata sobre: dovecot, linux, mysql, postfix, servidor de correo

Mas facil que pedar parado.
Porsupuesto primero hay que instalar el paquete dovecot desde el yast o con el zypper

# zypper in dovecot

luego edita el archivo de setting del ssl

# vim /usr/share/doc/packages/dovecot/dovecot-openssl.cnf

en la parte de abajo de [ req_dn ]
y despues ejecutar el script para crear los certificados

# cd /usr/share/doc/packages/dovecot/
# ./mkcert.sh

y por ultimo editar en el dovecot.conf la linea “ssl_disable” a “no”
junto con el postfix de hace rato ya tenemos un super servidor pop3 o imap + postfix todo sobre ssl.
aqui les paso mi archivo de configuracion:
(yo solamente uso imap e imaps, no me copa el pop3)

# cat /etc/dovecot/dovecot.conf|grep -v '#'

protocols = imap imaps
listen = *
syslog_facility = mail
ssl_disable = no
ssl_cert_file = /etc/ssl/certs/dovecot.pem
ssl_key_file = /etc/ssl/private/dovecot.pem
ssl_parameters_regenerate = 68
login_dir = /var/run/dovecot/login
login_chroot = yes
login_user = dovecot
login_greeting = Dovecot ready.
mail_location = mbox:~/mail/:INBOX=/var/mail/%u
protocol imap {
mail_plugin_dir = /usr/lib/dovecot/modules/imap
}
protocol lda {
postmaster_address = postmaster@dominio.com.py
mail_plugin_dir = /usr/lib/dovecot/modules/lda
}
auth default {
mechanisms = plain
passdb pam {
}
userdb passwd {
}
user = root
}
dict {
}
plugin {
}

Despues para que inicie e inicie automaticamente on boot

# rcdovecot start
# chkconfig --add dovecot

oicoite ;)

Escrito el 6 / octubre / 2008 y trata sobre: dovecot, postfix, servidor de correo