Bonjour,
J'ai mis à jour un serveur de Debian Lenny (32 bits) vers Squeeze et je n'arrive plus à faire fonctionner managesieve avec Dovecot (imap).
Parmi les bizarreries :
- Au démarrage du service il y a un message avec un caractère non affichable : "Restarting IMAP/POP3 mail server: dovecotIEffective uid=65534, gid=65534, home=/tmp"
- Il y a bien des processus "managesieve-login" mais ils écoutent sur le port 2000 alors qu'ils devraient écouter sur le port 4190 (nouveauté Squeeze)
- Dans le fichier /etc/dovecot/dovecot.conf, la directive "protocol managesieve { listen = *:4190 }" est ignorée (les processus continuent à écouter sur le port 2000).
- Et le fond du problème : il ne se passe rien quand on se connecte au port 2000.
J'ai utilisé "pysieved" à la place qui fonctionne très bien mais j'aimerais savoir si c'est mon installation qui a un problème ou si c'est un bug connu (je n'ai trouvé aucune info).
Précision : indépendamment de managesieve, le filtrage des messages fonctionne très bien, c'est juste la *gestion* des filtres qui ne fonctionne pas.
Nicolas
Bonsoir.
On Saturday 19 February 2011 à 04:57:18PM, sub@nryc.fr wrote: [snip]
Parmi les bizarreries :
- Au démarrage du service il y a un message avec un caractère non
affichable : "Restarting IMAP/POP3 mail server: dovecotIEffective uid=65534, gid=65534, home=/tmp"
Euh, dovecot devrait être lancé avec l'identité dovecot/dovecot, pas nobody/nobody.
- Il y a bien des processus "managesieve-login" mais ils écoutent
sur le port 2000 alors qu'ils devraient écouter sur le port 4190 (nouveauté Squeeze)
Je peux me tromper mais il me semble que c'était bien sur le port 2000 par défaut (bien que grep sieve /etc/services renvoie bien 4190).
- Dans le fichier /etc/dovecot/dovecot.conf, la directive "protocol
managesieve { listen = *:4190 }" est ignorée (les processus continuent à écouter sur le port 2000).
Fais un restart et non un reload.
- Et le fond du problème : il ne se passe rien quand on se connecte
au port 2000.
$ nc localhost 2000 "IMPLEMENTATION" "dovecot" "SIEVE" "fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date" "SASL" "PLAIN GSSAPI" "STARTTLS" "NOTIFY" "mailto" "VERSION" "1.0" OK "IMAP server alive." ^C $ /usr/sbin/dovecot --version 1.2.15 $
J'ai utilisé "pysieved" à la place qui fonctionne très bien mais j'aimerais savoir si c'est mon installation qui a un problème ou si c'est un bug connu (je n'ai trouvé aucune info).
Précision : indépendamment de managesieve, le filtrage des messages fonctionne très bien, c'est juste la *gestion* des filtres qui ne fonctionne pas.
Nicolas
-- "Free software, free society." Jérémie Courrèges-Anglas GPG key : 06A11494
Bonsoir,
Le 19/02/2011 20:56, Jeremie COURREGES-ANGLAS a écrit :
Bonsoir.
On Saturday 19 February 2011 à 04:57:18PM, sub@nryc.fr wrote: [snip]
Parmi les bizarreries :
- Au démarrage du service il y a un message avec un caractère non
affichable : "Restarting IMAP/POP3 mail server: dovecotIEffective uid=65534, gid=65534, home=/tmp"
Euh, dovecot devrait être lancé avec l'identité dovecot/dovecot, pas nobody/nobody.
- Il y a bien des processus "managesieve-login" mais ils écoutent
sur le port 2000 alors qu'ils devraient écouter sur le port 4190 (nouveauté Squeeze)
Je peux me tromper mais il me semble que c'était bien sur le port 2000 par défaut (bien que grep sieve /etc/services renvoie bien 4190).
Squeeze introduit un changement pour le port d'écoute de Sieve.
À partir de cette release, Sieve utilise le port officiel attribué par l'IANA: http://www.debian.org/releases/stable/i386/release-notes/ch-information.fr.h...
Donc, si la config utilise le numéro de port, pas de changement. En revanche, si la config précise "sieve", alors la valeur de /etc/services (soit 4190) sera utilisée.
Cordialement, JB
Le 19/02/2011 20:56, Jeremie COURREGES-ANGLAS a écrit :
Bonsoir.
On Saturday 19 February 2011 à 04:57:18PM, sub@nryc.fr wrote: [snip]
Parmi les bizarreries :
- Au démarrage du service il y a un message avec un caractère non
affichable : "Restarting IMAP/POP3 mail server: dovecotIEffective uid=65534, gid=65534, home=/tmp"
Euh, dovecot devrait être lancé avec l'identité dovecot/dovecot, pas nobody/nobody.
Dovecot tourne bien avec l'utilisateur "dovecot", le message qui s'affiche après le caractère non-affichable concerne managesieve.
- Dans le fichier /etc/dovecot/dovecot.conf, la directive "protocol
managesieve { listen = *:4190 }" est ignorée (les processus continuent à écouter sur le port 2000).
Fais un restart et non un reload.
J'ai "restarté" à tout va!
- Et le fond du problème : il ne se passe rien quand on se connecte
au port 2000.
$ nc localhost 2000 "IMPLEMENTATION" "dovecot"
Moi je n'allais même pas jusque là : "connexion refusée". En fait je ne cherche plus trop à résoudre le problème puisque je l'ai contourné avec pysieved, je recherche plutôt (par curiosité) à savoir si des gens en "Squeeze" ont eu la même chose.
Ci-dessous le fichier /etc/dovecot/dovecot.conf qui fonctionnait bien sous Lenny, pour Squeeze il faut faire quelques modifications : le plugin s'appelle maintenant "sieve" et non "cmusieve" et les variables "sieve" et "sieve_dir" (je crois que "sieve_storage" n'est plus reconnu) doivent se mettre dans la partie "plugin { }".
protocols = imap imaps managesieve disable_plaintext_auth = yes log_path = /var/log/dovecot.log log_timestamp = "%Y-%m-%d %H:%M:%S "
ssl_cert_file = /etc/ssl/certs/dovecot.pem ssl_key_file = /etc/ssl/private/dovecot.pem
mail_location = maildir:~/Maildir mail_privileged_group = mail mail_debug = yes
protocol imap { }
protocol managesieve { sieve=~/.dovecot.sieve sieve_storage=~/sieve }
protocol lda { postmaster_address = postmaster@localhost mail_plugins = cmusieve }
auth_verbose = yes auth_debug = yes
auth default { mechanisms = plain login
passdb pam { }
userdb passwd { }
user = root
socket listen { client { path = /var/spool/postfix/private/auth mode = 0660 user = postfix group = postfix } } }
dict { }
plugin { }
Le Sun, 20 Feb 2011 10:36:41 +0100, sub@nryc.fr a écrit :
protocol lda { postmaster_address = postmaster@localhost mail_plugins = cmusieve
^sieve
Le plugin a changé dans la 1.2.x.
a +.
Le 20/02/2011 23:30, Jerome Benoit a écrit :
Le Sun, 20 Feb 2011 10:36:41 +0100, sub@nryc.fr a écrit :
protocol lda { postmaster_address = postmaster@localhost mail_plugins = cmusieve
^sieve
Le plugin a changé dans la 1.2.x.
J'avais listé les différences Lenny/Squeeze dans mon message précédent :)
"[...] pour Squeeze il faut faire quelques modifications : le plugin s'appelle maintenant "sieve" et non "cmusieve" [...]"
Il y a eu pas mal de modifs dans Dovecot entre la version 1.0 dans Lenny et la version 1.2 dans Squeeze :
http://wiki1.dovecot.org/action/show/Upgrading?action=show&redirect=Upgr...
-----Message d'origine----- De : frsag-bounces@frsag.org [mailto:frsag-bounces@frsag.org] De la part de sub@nryc.fr Envoyé : lundi 21 février 2011 11:28 À : French SysAdmin Group Objet : Re: [FRsAG] Debian Squeeze et managesieve (Dovecot)
Le 20/02/2011 23:30, Jerome Benoit a écrit :
Le Sun, 20 Feb 2011 10:36:41 +0100, sub@nryc.fr a écrit :
protocol lda { postmaster_address = postmaster@localhost mail_plugins = cmusieve
^sieve
Le plugin a changé dans la 1.2.x.
J'avais listé les différences Lenny/Squeeze dans mon message précédent :)
"[...] pour Squeeze il faut faire quelques modifications : le plugin s'appelle maintenant "sieve" et non "cmusieve" [...]" _______________________________________________ Liste de diffusion du FRsAG http://www.frsag.org/
Le Mon, 21 Feb 2011 11:28:01 +0100, sub@nryc.fr a écrit :
J'avais listé les différences Lenny/Squeeze dans mon message précédent :)
Le fichier dovecot.conf dans ton mail est rempli de conneries pour un dovecot 1.2.X. Si tu nous montres le fichier qui marche pour un dovecot 1.1.X, çà nous avance pas des masses pour ton pb.
En voici un qui marche sur une squeeze (les comptes sont dans un MySQL ici avec domaines virtuels):
protocols = imap imaps pop3 pop3s managesieve log_timestamp = "%Y-%m-%d %H:%M:%S " mail_location = maildir:/home/virtual/mail/%d/%n/Maildir mail_privileged_group = vmail login_greeting = Hi buddy, have an account ?
# certificat du "vieux" mail.grenouille.com ssl_cert_file = /etc/postfix/ssl/servercert.pem ssl_key_file = /etc/postfix/ssl/servercert.pem
protocol imap { }
protocol pop3 { # Migration from courrier, useless otherwise pop3_uidl_format = %v-%u }
protocol managesieve { # Specify an alternative address:port the daemon must listen on # (default: *:2000) listen = localhost:4190
managesieve_logout_format = bytes ( in=%i : out=%o ) }
protocol lda { postmaster_address = postmaster@grenouille.com hostname = laposte.grenouille.com mail_plugin_dir = /usr/lib/dovecot/modules/lda sendmail_path = /usr/lib/sendmail auth_socket_path = /var/run/dovecot/auth-master mail_plugins = sieve }
auth default { mechanisms = plain login passdb sql { args = /etc/dovecot/dovecot-sql.conf } userdb static { args = uid=500 gid=500 home=/home/virtual/mail/%d/%n } user = root socket listen { master { path = /var/run/dovecot/auth-master mode = 0600 user = vmail group = vmail } client { path = /var/spool/postfix/private/auth mode = 0660 user = postfix group = vmail } } }
dict { }
plugin { sieve=~/.dovecot.sieve sieve_dir=~/sieve }
# Hardlinks speed things up : maildir_copy_with_hardlinks = yes maildir_copy_preserve_filename = yes
On Mon, 21 Feb 2011 14:43:11 +0100, Jerome Benoit jerome.benoit@grenouille.com wrote:
Le Mon, 21 Feb 2011 11:28:01 +0100, sub@nryc.fr a écrit :
J'avais listé les différences Lenny/Squeeze dans mon message précédent :)
Le fichier dovecot.conf dans ton mail est rempli de conneries pour un dovecot 1.2.X. Si tu nous montres le fichier qui marche pour un dovecot 1.1.X, çà nous avance pas des masses pour ton pb.
Voici un tuto rapide que j'avais fait pour debian lenny en utilisant les backports afin d'avoir la branche 2.0 de dovecot.
Si cela peut aider : http://wiki.queret.net/docs/mail/howto/postfix_dovecot
Yoann