PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit Cyrus IMAP



JNoir
19.12.04, 18:32
Hi,

Ich bin im Moment bei der Installation eines Mailservers mit Postfix, Cyrus IMAP mit SASL und MySQL auf Suse 9.0
Ich habe da allerdings so meine Probleme mit SASL.
Beim einloggen mit:

cyadm --user cyrus --server localhost - -auth plain

bekomme ich folgende Fehlermeldung:

LOGIN failed at /usr/lib/perl5/vendor_perl/5.8.1/i586-linux-thread-multi/Cyrus/IMAP/Admin.pm line 118
cyradm: cannot authenticate to server with plain as cyrus

saslauthd und cyrus laufen, das war mein erster Verdacht.
Nach einem kurzen Blick in die /var/log/messages hatte ich den Verdacht das in der imapd.conf für den lokalen Host eventuell der User cyrus deaktiviert ist.
der Vollständigkeit halber noch ein Auszug aus der /var/log/mail:



/var/log/messages:
Dez 19 17:56:05 florenz16 perl: No worthy mechs found
Dec 19 17:56:07 florenz16 imapd[9496]: Login disabled user=cyrus auth=cyrus host=localhost [127.0.0.1]

/var/log/mail:
Dec 19 17:56:02 florenz16 imapd[9496]: imap service init from 127.0.0.1
Dec 19 17:56:05 florenz16 imapd[9496]: AUTHENTICATE PLAIN failure host=localhost [127.0.0.1]
Dec 19 17:56:10 florenz16 imapd[9496]: Command stream end of file, while reading line user=cyrus host=localhost [127.0.0.1]


Leider war es das dann auch nicht :(
Habt ihr eine Idee?

An dieser Stelle noch kurz meine cyrus und meine imapd configs:

/etc/imapd.conf


postmaster: postmaster
configdirectory: /var/lib/imap
partition-default: /var/spool/imap
# admins: cyrus # no admins!
allowanonymouslogin: no
allowplaintext: yes
sasl_mech_list: PLAIN
servername: test.de
autocreatequota: 10000
reject8bit: no
quotawarn: 90
timeout: 30
poptimeout: 10
dracinterval: 0
drachost: localhost
sasl_pwcheck_method: saslauthd
sievedir: /usr/sieve
sendmail: /usr/sbin/sendmail
sieve_maxscriptsize: 32
sieve_maxscripts: 5
# unixhierarchysep: yes

/etc/imapd-local.conf


postmaster: postmaster
configdirectory: /var/lib/imap
partition-default: /var/spool/imap
admins: cyrus # no admins!
allowanonymouslogin: no
allowplaintext: yes
sasl_mech_list: PLAIN
servername: localhost
autocreatequota: 10000
reject8bit: no
quotawarn: 90
timeout: 30
poptimeout: 10
dracinterval: 0
drachost: localhost
sasl_pwcheck_method: saslauthd
sievedir: /usr/sieve
sendmail: /usr/sbin/sendmail
sieve_maxscriptsize: 32
sieve_maxscripts: 5
# unixhierarchysep: yes




/etc/cyrus.conf

Die echte IP Adresse habe ich für den Post entfernt.


START {
# do not delete this entry!
recover cmd="ctl_cyrusdb -r"

# this is only necessary if using idled for IMAP IDLE
# idled cmd="idled"
}

# UNIX sockets start with a slash and are put into /var/lib/imap/socket
SERVICES {
# add or remove based on preferences
imap cmd="imapd" listen="<meineIPAdresse>:imap" prefork=0
imaplocal cmd="imapd -C /etc/imapd-local.conf" listen="127.0.0.1:imap" prefork=0
imaps cmd="imapd -s" listen="<meineIPAdresse>:imaps" prefork=0
imapslocal cmd="imapd -C /etc/imapd-local.conf" listen="127.0.0.1:imaps" prefork=0
pop3 cmd="pop3d" listen="pop3" prefork=0
pop3s cmd="pop3d -s" listen="pop3s" prefork=0
sieve cmd="timsieved" listen="<meineIPAdresse>:sieve" prefork=0
sievelocal cmd="timsieved -C /etc/imapd-local.conf" listen="127.0.0.1:sieve" prefork=0
# at least one LMTP is required for delivery
# lmtp cmd="lmtpd" listen="lmtp" prefork=0
lmtpunix cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=0

# this is only necessary if using notifications
# notify cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp" prefork=1
}

EVENTS {
# this is required
checkpoint cmd="ctl_cyrusdb -c" period=30

# this is only necessary if using duplicate delivery suppression
delprune cmd="ctl_deliver -E 3" period=1440

# this is only necessary if caching TLS sessions
tlsprune cmd="tls_prune" period=1440
}


Danke für eure Hilfe.

drcux
19.12.04, 18:43
cyrus-sasl-plain installiert?

JNoir
19.12.04, 18:53
:confused: ist das etwas separates oder deckt das der entsprechende Parameter bei der Instllation von cyrus-sasl ab?
Hier meine Konfigurationsparameter:


./configure \
--enable-anon \
--enable-plain \
--enable-login \
--disable-krb4 \
--disable-otp \
--disable-cram \
--disable-digest \
--with-saslauthd=/var/run/saslauthd \
--with-pam=/lib/security \
--with-dblib=berkeley \
--with-bdb-libdir=/usr/local/bdb/lib \
--with-bdb-incdir=/usr/local/bdb/include \
--with-openssl=/usr/local/ssl \
--with-plugindir=/usr/local/lib/sasl2

JNoir
19.12.04, 18:58
habe gerade mal gegoogled:

die libplain.so ist vorhanden und liegt unter /usr/lib/sasl2/libplain.so

Eagle
19.12.04, 20:19
Hi Genosse!

Kenne das Problem:

Sollte wider Erwarten eine sasl - Fehlermeldung auftauchen, so muß noch das sasl- Paket nachinstalliert bzw. mit dem Befehl saslpasswd die User root und cyrus noch aktiviert werden.

Die gesamte Konfigurationsanleitung mit Requirements liest Du am besten inklusive Testmöglichkeiten bei mir nach:

Linuxmaker (http://www.linuxmaker.de)

Unter "Details => Mailsystem => CYRUS-IMAP-Server" wirst Du dann fündig. :D

MfG

Andreas

JNoir
21.12.04, 10:25
Hi Eagle,

ich habe dein Tutorial berücksichtigt und mal das cyrus-sasl-plain Paket nachinstalliert. Leider besteht das besagte Problem immer noch :-(
Ich kann zur Installation auch nicht ausschließlich Pakete verwenden, da der Postfix von Suse 9.0 keine MySQL unterstützung hat.
Hat noch jemand Ideen?

Am Rande noch einmal eine Frage: Das Suse Paket cyrus-sasl-plain ist doch ein Plugin für cyrus-sasl. Wenn ich den entsprechenden Parameter für --enable plain beim kompilieren der Sourcen setze, erstellt er mir dann automatisch dieses Modul oder sage ich ihm an dieser Stelle nur das er mit dem Modul arbeiten soll?

A-User
21.12.04, 11:23
Hallo,

du versuchst dich bei cyradm mit dem user cyrus anzumelden, hast du
vorher für den auch ein Passwort angelegt?

cu

JNoir
21.12.04, 15:14
ja habe ich.
Als shell account und mit saslpasswd2.
So langsam gestaltet sich das als die Suche der Nadel im Heuhaufen :(

GabbbaGandalf
21.12.04, 15:35
Also ich hab auch letztens mal wieder angefangen mir nen Cyrus einzurichten (hatte ich schon mal laufen) und ich bin auch mal wieder auf das Problem gestoßen. Damals hatte ich das umgangen, indem ich ne andere Authentifiiereungsmethode genommen hab aber jetzt lag es bei mir daran, das die sasldb2 falsche rechte hatte. Einfach mal

chown cyrus /etc/sasldb2

probieren. Evlt noch sasl neustarten

JNoir
21.12.04, 15:51
hi, danke für den Tipp.
Leider war es das nicht.

Mir ist aber etwas interessantes aufgefallen, das wichtig sein könnte.
wenn ich mich versuche über



cyradm --user cyrus --server localhost --auth plain


einzuloggen, kommt 2 Mal eine Passwort Abfrage, einmal nur mit Passwort, und einmal das Imap Passwort. Nachdem ich das 1. Passwort eingegeben habe schreibt er in der /var/log/mail folgendes:



Dec 21 15:47:12 florenz16 imapd[3138]: AUTHENTICATE PLAIN failure host=localhost [127.0.0.1]


Erst dann kommt nach dem 2. Passwort die Fehlermeldung.

Wenn ich --auth plain weglasse, habe ich nur noch die Anmeldung mit dem IMAP Passwort, klappt aber genauso wenig.

JNoir
21.12.04, 17:21
noch etwas:

wenn ich mich auf den Cyrus Server via telnet connecten will passiert folgendes:



florenz16:/home/julien # telnet localhost imap
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS STARTTLS LOGINDISABLED] localhost IMAP4rev1 2003.338 at Tue, 21 Dec 2004 17:18:10 +0100 (CET

Es wird immer mysteriöser, der Header von cyrus sollte doch ander aussehen, oder nicht?

Eagle
21.12.04, 17:56
Hi,

was liefert denn
lsof -i :143

Das müßte in etwa so aussehen:


COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
master 4612 cyrus 5u IPv6 7488 TCP *:imap (LISTEN)
master 4612 cyrus 10u IPv4 7491 TCP *:imap (LISTEN)
imapd 7187 cyrus 0u IPv4 14855 TCP eagle.linuxmaker.de:imap->eagle.linuxmaker.de:nfa (ESTABLISHED)
imapd 7187 cyrus 1u IPv4 14855 TCP eagle.linuxmaker.de:imap->eagle.linuxmaker.de:nfa (ESTABLISHED)
imapd 7187 cyrus 2u IPv4 14855 TCP eagle.linuxmaker.de:imap->eagle.linuxmaker.de:nfa (ESTABLISHED)
imapd 7187 cyrus 4u IPv4 7491 TCP *:imap (LISTEN)
imapd 7190 cyrus 4u IPv4 7491 TCP *:imap (LISTEN)

Wie es aussieht, läuft Dein imap-Server nicht. Notfalls im YAST RunLevels starten. Denn der Telenet auf Port 143 sollte auf alle Fälle klapen.

MfG

Andreas

JNoir
21.12.04, 20:05
miitlerweile bin ich so weit gekommen:



julien@florenz16:~> telnet localhost imap
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK localhost Cyrus IMAP4 v2.1.15 server ready




master 25292 cyrus 5u IPv4 43125 TCP mein.server.de:imap (LISTEN)
master 25292 cyrus 10u IPv4 43127 TCP localhost:imap (LISTEN)


Das Problem besteht allerdings immer noch :-(
Folgendes ist mir aber aufgefallen:



saslpasswd2 -c cyrus
Password:
Again (for verification):
Could not set secret for cyrus
saslpasswd2: requested change was not needed


Er kann das Passwort nicht verschlüsseln? Oder was sagt das genau aus?

Eagle
23.12.04, 09:41
Hast Du eigentlich bereits die Mailbox angelegt? Daran kann's natürlich auch liegen. Respektive, versuche Dich mal als Root am IMAP anzumelden, was bringt er denn da?

Ansonsten, sind alle die Pakete intus, die als Voraussetzung auf meiner Website angegeben sind? Notfalls bei http://packman.links2linux.de/ oder http://www.rpmseek.com/index.html für Deine Distribution holen.

MfG

Andreas

webshark
14.03.05, 23:12
Hallo,

ich hatte das gleiche Problem.

Nachdem ich im Yast das Passwort des Benutzers in der Benutzerverwaltung erneut eingegeben habe, hat es funktioniert.

zini2001
15.03.05, 10:46
in meiner imapd.conf steht zusätzlich noch ein login in der zeile stehen.

sasl_mech_list: LOGIN PLAIN
und anmelden tu ich mich mit --auth login und nicht --auth plain.

ps. wo hast du den artikel den gelesen? der kommt mir bekannt vor!!!
c't oder linuxmagazine?

ABork
01.06.06, 21:08
Hallo,
schon mal geschaut ob dein saslauthd überhaupt läuft???

--> rcsaslauthd status