Andesi - forum

Forum francophone pour Debian

Vous n'êtes pas identifié(e).

#1 10/07/2008 10:53:23

hastan
Membre
Inscription : 10/07/2008
Messages : 5

problème sur Cyrus2.2 et sieve -- please help

Bonjour,

j'ai un gros problème : j'ai mon serveur cyrus-imap2.2 qui fonctionne parfaitement sur ma debian etch
mais par contre, impossible de faire fonctionner les filtres sieves  sad

lorsque je test la connexion à sieve voici ce que j'ai comme erreur...

DEBIAN:/usr/lib/cyrus/bin# sieveshell --user=cyrus localhost
connecting to localhost
unable to connect to server at /usr/bin/sieveshell line 179.

j'ai vérifié dans mes services  et sieve sy trouve bien...

DEBIAN:/usr/lib/cyrus/bin# cat /etc/services | grep sieve
sieve  2000/tcp   # Sieve mail filter daemon

j'ai aussi essayé de me connecter au sieveshell en spécifiant le port mais rien n'y fait...

DEBIAN:/usr/lib/cyrus/bin# sieveshell --user=cyrus localhost:sieve
connecting to localhost:sieve
connect: Connexion refusée
unable to connect to server at /usr/bin/sieveshell line 179.

Ps : mon authentification avec saslauth fonctionne parfaitement...

DEBIAN:/usr/lib/cyrus/bin# testsaslauthd -u cyrus -p password
0: OK "Success."

j'avoue ne plus comprendre grand chose...


voici la conf de mon /etc/imapd.conf  ...

configdirectory: /var/lib/cyrus
defaultpartition: default
partition-default: /var/spool/cyrus/mail
partition-news: /var/spool/cyrus/mail
newsspool: /var/spool/news
virtdomains: yes
defaultdomain: domaine.fr
altnamespace: no
unixhierarchysep: yes
lmtp_downcase_rcpt: yes
admins: cyrus
lmtp_admins: cyrus
imap_admins: cyrus
sieve_admins: cyrus
allowanonymouslogin: no
popminpoll: 0
autocreatequota: 1002400
umask: 077
sieveusehomedir: no
sievedir: /var/spool/sieve
hashimapspool: true
allowplaintext: yes
sasl_mech_list: LOGIN PLAIN
sasl_pwcheck_method: saslauthd
sasl_auto_transition: no
tls_ca_path: /etc/ssl/certs
tls_session_timeout: 1440
tls_cipher_list: TLSv1:SSLv3:SSLv2:!NULL:!EXPORT:!DES:!LOW:@STRENGTH
lmtpsocket: /var/run/cyrus/socket/lmtp
idlesocket: /var/run/cyrus/socket/idle
notifysocket: /var/run/cyrus/socket/notify
quotawarn: 90

et le /etc/cyrus.conf ...

SERVICES {
imap  cmd="imapd -U 30" listen="10.100.0.202:imap" prefork=0 maxchild=100
pop3  cmd="pop3d -U 30" listen="10.100.0.202:pop3" prefork=0 maxchild=50
lmtpunix cmd="lmtpd" listen="/var/run/cyrus/socket/lmtp" prefork=0 maxchild=20
sieve  cmd="timsieved" listen="localhost:sieve" prefork=0
notify  cmd="notifyd" listen="/var/run/cyrus/socket/notify" proto="udp" prefork=1"
}
EVENTS {
checkpoint cmd="/usr/sbin/ctl_cyrusdb -c" period=30
delprune cmd="/usr/sbin/ctl_deliver -E 3" at=0401
tlsprune cmd="/usr/sbin/tls_prune" at=0401
}

Si quelqu'un peut m'aider ce serait génial !!

merci d'avance

Hors ligne

#2 10/07/2008 12:23:46

TeKa
Membre
Inscription : 08/11/2007
Messages : 43

Re : problème sur Cyrus2.2 et sieve -- please help

Question : sieveshell se trouve dans /usr/lib/cyrus/bin ?
Parce que si c'est le cas, tu le lances via ./sieveshell (qui lance le programme dans le dossier courant), et non sieveshell (qui va chercher dans le PATH).

Hors ligne

#3 10/07/2008 13:43:56

hastan
Membre
Inscription : 10/07/2008
Messages : 5

Re : problème sur Cyrus2.2 et sieve -- please help

Effectivement, mon sieveshell ne se trouve pas dans /usr/lib/cyrus/bin/

Il se trouve dans /usr/bin/

J'ai donc fait une copie du fichier /usr/bin/sieveshell vers /usr/lib/cyrus/bin/

mais j'ai toujours le même résultat :

DEBIAN:/usr/lib/cyrus/bin# ./sieveshell localhost
connecting to localhost
unable to connect to server at ./sieveshell line 179.

et même en spécifiant le port...

DEBIAN:/usr/lib/cyrus/bin# ./sieveshell localhost:2000
connecting to localhost:2000
unable to connect to server at ./sieveshell line 179.

y aurait il autre chose a faire?

merci pour les conseils.

Dernière modification par hastan (10/07/2008 13:44:22)

Hors ligne

#4 10/07/2008 14:09:01

ledub
Membre
Lieu : Creil (60)
Inscription : 22/04/2003
Messages : 4 545

Re : problème sur Cyrus2.2 et sieve -- please help

hastan a écrit :

Effectivement, mon sieveshell ne se trouve pas dans /usr/lib/cyrus/bin/

Il se trouve dans /usr/bin/

J'ai donc fait une copie du fichier /usr/bin/sieveshell vers /usr/lib/cyrus/bin/

mais pourquoi avoir fait cela ? C'était inutile !!

As-tu un pare-feu ?
Dans ce cas as-tu testé sans lui ?

LeDub qui ne sait pas ce qu'est un filtre sieves !!


« Ne doutez pas qu'un petit nombre de personnes déterminées puisse changer le monde. En fait, ça a même toujours marché comme ça.»
Margaret Mead
---
VeoSearch est un moteur de recherche solidaire qui permet de financer des projets associatifs de développement durable par vos recherches Internet. Utilisez-le !!!

Hors ligne

#5 10/07/2008 14:10:27

TeKa
Membre
Inscription : 08/11/2007
Messages : 43

Re : problème sur Cyrus2.2 et sieve -- please help

Non non, ce n'est pas ce que je disais de faire. Je trouvais juste étrange que ton répertoire de travail soit /usr/lib/cyrus/bin. Personnellement, /usr est un répertoire ou je ne mets jamais les pieds, parce que ce n'est, justement, pas un espace de travail. wink
Que te retournent les logs lors de l'échec de connexion ?
Je suis tombé sur ce thread, pas beaucoup d'aide, mais on ne sait jamais :
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=441612

+1 ledub pour le firewall.

Dernière modification par TeKa (10/07/2008 14:11:57)

Hors ligne

#6 10/07/2008 14:41:25

hastan
Membre
Inscription : 10/07/2008
Messages : 5

Re : problème sur Cyrus2.2 et sieve -- please help

j'était aussi tombé sur ce post mais malheureusement d'aucune aide :s
j'ai effectivement

SGW:/var/log# netstat -ntap | grep 2000
tcp        0      0 127.0.0.1:2000          0.0.0.0:*               LISTEN     31558/cyrmaster

mais rien de plus sad

J'ai vérifié et aucun firewall à l'horizon ...

concernant les logs voici ce que j'ai de nouveau dans mon /etc/log/syslog :

DEBIAN:/var/log# sieveshell --user=cyrus localhost:2000
connecting to localhost:2000
unable to connect to server at /usr/bin/sieveshell line 179.
DEBIAN:/var/log# cat syslog
Jul 10 14:30:07 localhost last message repeated 5 times
Jul 10 14:30:07 localhost master[32084]: about to exec /usr/lib/cyrus/bin/timsieved
Jul 10 14:30:07 localhost cyrus/sieve[32084]: executed
Jul 10 14:30:07 localhost cyrus/sieve[32084]: accepted connection
Jul 10 14:30:07 localhost master[31558]: process 32084 exited, status 0
Jul 10 14:30:09 localhost kernel: VFS: busy inodes on changed media.
DEBIAN:/var/log#

et pas beaucoup plus dans mon /etc/log/mail/log :

DEBIAN:/var/log# sieveshell --user=cyrus localhost:2000
connecting to localhost:2000
unable to connect to server at /usr/bin/sieveshell line 179.
DEBIAN:/var/log# cat mail.log
Jul 10 14:35:28 localhost master[32098]: about to exec /usr/lib/cyrus/bin/timsieved
Jul 10 14:35:28 localhost cyrus/sieve[32098]: executed
Jul 10 14:35:28 localhost cyrus/sieve[32098]: accepted connection
Jul 10 14:35:28 localhost master[31558]: process 32098 exited, status 0
DEBIAN:/var/log#

pour info, voici ce qu'il existe à la fameuse ligne 179 du fichier /usr/bin/sieveshell

if (!defined $obj) {
    die "unable to connect to server";
}

Si vous avez d'autres idées je suis preneur big_smile

merci de votre aide en tout cas!

Hors ligne

#7 10/07/2008 15:10:04

TeKa
Membre
Inscription : 08/11/2007
Messages : 43

Re : problème sur Cyrus2.2 et sieve -- please help

J'osais pas te dire de passer a ta dernière étape, mais comme tu t'es lancé, tu ferais bien de continuer... big_smile
Tu ouvres ton fichier avec vim, et tu cherches toutes les occurrences de $obj pour voir ou il est défini et ce qu'il faut y mettre. wink (/truc pour chercher truc, p pour la précédente occurrence, n pour la suivante)

Tes logs sont étranges par contre... En gros, il n'y a pas de problème, tout s'arrête calmement .

Hors ligne

#8 10/07/2008 15:21:47

hastan
Membre
Inscription : 10/07/2008
Messages : 5

Re : problème sur Cyrus2.2 et sieve -- please help

Bon ben je vais me lancer dans l'étude du script sieveshell  :s

je vous tiendrais au courant au fur et mesure de la suite !

merci du coup de main !

Dernière modification par hastan (10/07/2008 15:31:10)

Hors ligne

#9 10/07/2008 16:41:11

hastan
Membre
Inscription : 10/07/2008
Messages : 5

Re : problème sur Cyrus2.2 et sieve -- please help

j'ai donc essayé de modifer le script sieveshell ...

après avoir enlevé le test qui pose problème :

if (!defined $obj) {
    die "unable to connect to server";
}

j'ai cru, un bref moment que cela pouvait fonctionner....

DEBIAN:/var/log# sieveshell --user=cyrus localhost
connecting to localhost
Cannot find termcap: Can't find a valid termcap file at /usr/share/perl/5.8/Term/ReadLine.pm line 337
>
> list
Erreur de segmentation
DEBIAN:/var/log#

je commence à me dir que c'est mal partit ...

Hors ligne

#10 10/07/2008 17:16:12

ioguix
Administrator
Lieu : Paris
Inscription : 25/04/2003
Messages : 3 945

Re : problème sur Cyrus2.2 et sieve -- please help

non non non.

Pour commencer, le fichier services est juste une liste de ports et services associé, ça ne signifie en aucun cas que le service tourne sur la machine.

Ensuite, ton testsaslautd test...l'authentification SASL et non le mécanisme SIEVE (àmha).

Le vrai test à faire était bien le netstat pour vérifier que le port 127.0.0.1:2000 était en écoute.

Ensuite, pour la partie du code, il faut pas que tu supprime ce test, mais plutôt que tu remonte dans les ligne précédet ce test à la recherche de l'initialisation de $obj. Une fois que tu aura compris ce qu'est cet $obj, je pense que tu aura pas mal avancé dans ton pb...

++


[email protected]
"Contrairement aux chasseurs qui, eux, ne sont pas des lapins, les pollueurs, eux sont des ordures. - Philippe Geluck, Le chat"
gpg: 0828C222

Hors ligne

#11 10/07/2008 17:45:49

TeKa
Membre
Inscription : 08/11/2007
Messages : 43

Re : problème sur Cyrus2.2 et sieve -- please help

Comme je l'ai dit avant, /usr n'est pas un espace de travail : t'amuses pas à tout casser dedans, sinon plus rien ne marchera ! ioguix vient de mieux expliquer ce que je disais : il ne faut rien toucher dans le fichier, juste trouver ce qu'est obj. wink

Hors ligne

#12 17/09/2008 22:23:57

yazul
Membre
Inscription : 17/09/2008
Messages : 1

Re : problème sur Cyrus2.2 et sieve -- please help

Un peu tard peut-être...
mais je viens d'avoir le même problème et j'ai une solution !

le test :
telnet localhost sieve
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
"IMPLEMENTATION" "Cyrus timsieved v2.1.18-IPv6-Debian-2.1.18-5.1"
"SIEVE" "fileinto reject envelope vacation imapflags notify subaddress relational regex"
"STARTTLS"
OK
logout
OK "Logout Complete"

après : apt-get install sasl2-modules <--- la solution est là !

telnet localhost sieve
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
"IMPLEMENTATION" "Cyrus timsieved v2.1.18-IPv6-Debian-2.1.18-5.1"
"SASL" "PLAIN LOGIN"
"SIEVE" "fileinto reject envelope vacation imapflags notify subaddress relational regex"
"STARTTLS"
OK
logout
OK "Logout Complete"

la ligne SASL est importante !
et sieveshelle fonctionne.

Hors ligne

#13 04/10/2010 16:04:09

pydubreucq
Membre
Inscription : 04/10/2010
Messages : 2

Re : problème sur Cyrus2.2 et sieve -- please help

Bien le bonjour smile
Yazul dit arriver un peu tard, et bien je fais encore plus tard wink
Je me suis même inscrit sur ce forum juste pour y répondre wink
En regardant le script sieve la variable $obj correspond à $acapserver
$acapserver correspond à $ARGV[0] soit le premier argument passer dans ta commande...
Donc ta commande devrait être de cette forme :
sieveshell HOSTNAME --user=UTILISATEUR
Soit dans ton cas :

sieveshell localhost --user=cyrus
connecting to localhost
Please enter your password:

Bon c'est tout con, mais fallait le savoir wink

Hors ligne

#14 06/10/2010 20:02:17

ioguix
Administrator
Lieu : Paris
Inscription : 25/04/2003
Messages : 3 945

Re : problème sur Cyrus2.2 et sieve -- please help

Heh,

Merci pour ta réponse pydubreucq ! Et bienvenu à toi ici !


[email protected]
"Contrairement aux chasseurs qui, eux, ne sont pas des lapins, les pollueurs, eux sont des ordures. - Philippe Geluck, Le chat"
gpg: 0828C222

Hors ligne

#15 07/10/2010 09:58:23

pydubreucq
Membre
Inscription : 04/10/2010
Messages : 2

Re : problème sur Cyrus2.2 et sieve -- please help

De rien wink
Bonne journée
Pierre-Yves

Hors ligne

Pied de page des forums