PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : exim und die Übergabe an Cyrus



Headroom
23.12.02, 05:28
Hallo,

was muss man in Exim einstellen, damit er ankommende Mails direkt an den Cyrus weitergibt (ohne Procmail, exim empfängt die Mails selber aus dem Netz)?
Mein Problem ist, das ich zwar die User in Cyrus eingerichtet habe, diese aber nicht dem System bekannt geben will.
Im moment ist es so, das ich immer einen Eintrag des Users in der passwd haben muss, damit exim die mails an den cyrus weitergibt.

Weiß jemand Rat?


Headroom

Kung
23.12.02, 16:05
Mit der sasl-db.
http://en.tldp.org/HOWTO/Cyrus-IMAP-4.html

habs aber noch nicht getestet.

PS: AFAIK geht das mit dem std. cyrus-imap- paket von debain nicht. Dann muß das paket mit *-sasl suchen -> 'apt-cache search cyrus-imap' oder hp

Jasper
23.12.02, 16:34
Original geschrieben von Headroom

Im moment ist es so, das ich immer einen Eintrag des Users in der passwd haben muss, damit exim die mails an den cyrus weitergibt.


vermutlich hast du an der falschen stelle ein 'check_local_user' stehen.
exim-config, cyrus-config und die logeintrage, die beim empfang einer mail anfallen, wären extrem hilfreich.

-j

Headroom
24.12.02, 06:26
Also sasldb läuft bei mir, daran kann es also nicht liegen...

ausschnitte aus der exim.conf:

local_delivery:
driver = appendfile
group = mail
mode = 0660
mode_fail_narrower = false
envelope_to_add = true
return_path_add = true
file = /var/spool/mail/${local_part}

cyrus_delivery:
driver = pipe
command = "/usr/sbin/cyrdeliver ${local_part}"
envelope_to_add = true
return_path_add = true
return_output =
prefix = ""
user = cyrus

address_pipe:
driver = pipe
path = /usr/bin:/bin:/usr/local/bin
return_output

address_file:
driver = appendfile
envelope_to_add = true
return_path_add = true

address_directory:
driver = appendfile
no_from_hack
prefix = ""
suffix = ""

remote_smtp:
driver = smtp

real_local:
prefix = real-
driver = localuser
transport = local_deliverysystem_aliases:
driver = aliasfile
file_transport = address_file
pipe_transport = address_pipe
file = /etc/aliases
search_type = lsearchuserforward:
driver = forwardfile
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
no_verify
check_ancestor
check_local_user
file = .forward
modemask = 002
filter
localuser:
driver = localuser
transport = cyrus_delivery





In der mainlog von exim kommt folgende nachricht:

2002-12-24 06:17:18 verify failed for SMTP recipient user@domain from <absender@domain>




Also in der exim.conf steht was von check_local_user, aber wenn ich das auskommentiere bringt das nichts....

an dem Cyrus kann das eigentlich nicht liegen, da es ja klappt mit usern, die in dem system bekannt sind (also in der passwd stehen).


Bringt euch das weiter?




Headroom

P.S. sorry das ich erst jetzt antworte, aber hatte vorher keine Zeit...

Jasper
24.12.02, 13:06
Original geschrieben von Headroom
cyrus_delivery:
driver = pipe
command = "/usr/sbin/cyrdeliver ${local_part}"
envelope_to_add = true
return_path_add = true
return_output =
prefix = ""
user = cyrus


du solltest lieber lmtp statt cyrdeliver verwenden. cyrdeliver ist auch nur ein lmtp-client, der die mail per lmtp an cyrus weiterreicht.



In der mainlog von exim kommt folgende nachricht:

2002-12-24 06:17:18 verify failed for SMTP recipient user@domain from <absender@domain>

Also in der exim.conf steht was von check_local_user, aber wenn ich das auskommentiere bringt das nichts....

an dem Cyrus kann das eigentlich nicht liegen, da es ja klappt mit usern, die in dem system bekannt sind (also in der passwd stehen).
[/B]

die ursache liegt vermutlich in deinen acls, bspw. acl_smtp_rcpt. poste doch mal die komplette conf (ohne kommentare) als attachment.

an cyrus liegt es nicht, sondern exim versucht den recipienten (in der acl) zu verifizieren, und da der recipient kein lokaler user ist und damit nicht bekannt ist, wird die mail abgelehnt.

-ap

Headroom
24.12.02, 16:19
Ich habe über die Feiertage keine Zeit, werde die komplette exim.conf am Freitag oder Samstag posten...

Danke jedenfalls schonmal für deine Hilfe....



Headroom



P:S. Frohe Weihnachten wünsche ich allen die das lesen....

Headroom
30.12.02, 18:55
So... hier ist nun endlich meine exim.conf....

Kannst du (Jasper) oder irgend jemand anderes mir die Fehler darin zeigen?

Danke schonmal....





Headroom

Jasper
30.12.02, 23:55
Original geschrieben von Headroom
So... hier ist nun endlich meine exim.conf....

Kannst du (Jasper) oder irgend jemand anderes mir die Fehler darin zeigen?


die config sieht für mich kaputt aus (sporadisch auftauchende 'end' ohne irgendwelche 'begin ...')

mal die komplette config ohne kommentare posten. und angeben, bei welchen adressen das problem auftaucht.

-j

Headroom
31.12.02, 10:35
Das ist die komplette conf.... ich habe nirgends ein "begin" stehen...

Die conf funzt ja auch.... an z.B. postfachname@mail-domain wird die Mail ordnugsgemäß zugestellt... nur halt nicht an user, die nicht in der passwd stehen.... die werden nicht an dem cyrus übergeben...

Ich benutze die exim Version 3.35 und es ist die automatisch generierte conf des stable Debian Packet. Was ich geändert habe sind:
die Einstellungen für procmail und fetchmail auskommentiert und die einstellungen für den cyrus hinzugefügt.

Die cyrus Version ist 2.1 aus unstable



Headroom

Headroom
02.01.03, 07:05
Habe die Lösung meines Problems gefunden:

in der section localuser:
driver = localuser in driver = smartuser ändern. :)




Headroom