Postfix, Cyrus und SMTP-Problem
Hallo Leute,
vielleicht habt Ihr einen Tipp für mich. Folgende Ausgangssituation:
Suse 8.1 auf einem dedizierten Server mit Confixx Pro. Ich hoste neben
der Hauptdomain auch weitere Co-Domains. Mein Ziel soll es sein, dass
die Benutzer der Co-Domains via Confixx ihre Postfächer(POP3) und
Mailadressen nach Belieben konfigurieren können, während für die
Hauptdomain (HD) Cyrus die Kontrolle über die lokale Zustellung
übernehmen soll und für die HD IMAP zur Verfügung stellt.
Ich gebe Euch mal eine Fülle an Infos mit auf den Weg.So sieht momentan
meine main.cf aus:
<schnipp>
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
default_privs = autoresp
myhostname = myhostname.pureserver.info
mydomain = meinedomain.de
mydestination = $myhostname, localhost.$mydomain, $mydomain,
smtp.$mydomain, hash:/etc/postfix/confixx_localDomains
mynetworks_style = host
myorigin = $mydomain
local_recipient_maps = $alias_maps unix:passwd.byname
in_flow_delay = 0
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mail_spool_directory = /var/mail
mailbox_command = /usr/bin/procmail -t -a "$EXTENSION"
mailbox_transport =
fast_flush_domains = $relay_domains
smtpd_banner = $myhostname ESMTP $mail_name
debug_peer_level = 2
debugger_command =
PATH=/usr/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = maildrop
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/packages/postfix/samples
readme_directory = /usr/share/doc/packages/postfix/README_FILES
canonical_maps = hash:/etc/postfix/canonical
virtual_maps = hash:/etc/postfix/localUser,
hash:/etc/postfix/confixx_virtualUsers,
hash:/etc/postfix/confixx_localDomains
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
sender_canonical_maps = hash:/etc/postfix/sender_canonical
masquerade_exceptions = root
masquerade_classes = envelope_sender, header_sender, header_recipient
masquerade_domains = meinedomain.de
smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_client_restrictions =
strict_rfc821_envelopes = no
smtpd_recipient_restrictions = permit_sasl_authenticated,
reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = meinedomain.de
broken_sasl_auth_clients = yes
smtpd_use_tls = yes
smtpd_tls_key_file = /etc/postfix/key.pem
smtpd_tls_cert_file = /etc/postfix/cert.pem
smtpd_tls_CAfile = /etc/postfix/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
</schnipp>
In der TRANSPORT steht folgender Eintrag:
<schnipp>
meinedomain.de cyrus:
</schnipp>
Die confixx_localDomains:
<schnipp>
meinedomain.de confixx
zweitedomain.de confixx
drittedomain.de confixx
</schnipp>
Die confixx_virtualUsers:
<schnipp>
test@zweitedomain.de web6p1
test@drittedomain.de web3p1
</schnipp>
Die localUser:
<schnipp>
hans.mustermann@meinedomain.de hmustermann
gerda.garstig@meinedomain.de ggarstig
</schnipp>
Nun treten zwei Probleme auf:
1.) Wenn ich eine eMail mit den Empfängern
"Hans.Mustermann@meinedomain.de" und "Gerda.Garstig@meinedomain.de" im
AN:-Feld losschicke, kommt im /var/log/mail folgender Eintrag:
Jan 11 02:28:04 p15132903 postfix/smtpd[17590]: connect from
xxx-xxx.pool.mediaWays.net[217.186.xxx.xxx]
Jan 11 02:28:05 p15132903 smtpd[17590]: 2A1D1118192:
client=xxx-xxx.pool.mediaWays.net[217.186.xxx.xxx], sasl_method=LOGIN,
sasl_username=tester
Jan 11 02:28:06 p15132903 postfix/cleanup[17591]: 2A1D1118192:
message-id=<000801c3d7e2$71a5d520$5001a8c0@xxxxx>
Jan 11 02:28:06 p15132903 postfix/qmgr[17486]: table has changed -- exiting
Jan 11 02:28:06 p15132903 postfix/qmgr[17593]: 2A1D1118192:
from=
Am Sonntag, 11. Januar 2004 15:19 schrieb H.Wesser:
vielleicht habt Ihr einen Tipp für mich. Folgende Ausgangssituation: Suse 8.1 auf einem dedizierten Server mit Confixx Pro. Ich hoste neben der Hauptdomain auch weitere Co-Domains. Mein Ziel soll es sein, dass die Benutzer der Co-Domains via Confixx ihre Postfächer(POP3) und Mailadressen nach Belieben konfigurieren können, während für die Hauptdomain (HD) Cyrus die Kontrolle über die lokale Zustellung übernehmen soll und für die HD IMAP zur Verfügung stellt.
Ich gebe Euch mal eine Fülle an Infos mit auf den Weg.So sieht momentan meine main.cf aus:
# postconf -n ist netter.
In der TRANSPORT steht folgender Eintrag:
<schnipp> meinedomain.de cyrus: </schnipp>
Nun treten zwei Probleme auf:
1.) Wenn ich eine eMail mit den Empfängern "Hans.Mustermann@meinedomain.de" und "Gerda.Garstig@meinedomain.de" im AN:-Feld losschicke, kommt im /var/log/mail folgender Eintrag:
Der Absender bekommt eine Fehlermeldung ("data format error, mailbox does not exist"), die eMail kommt aber trotzdem an. Sobald ich einen einzelnen Empfänger beschicke, klappt alles. Warum?
Sag Postfix er möchte Mails die an die Destination cyrus gehen aufsplitten und einzeln ausliefern: cyrus_destination_recipient_limit = 1
2.) In der o.g. Konfiguration kommen zwar Mails an die Domain "meinedomain.de" an, jedoch an keine der Co-Domains. Wenn ich nun den Eintrag
myorigin = $mydomain umschreibe in myorigin = $myhostname
kommen die Mails an die Co-Domains an, jedoch nicht an die Hauptdomain. Hier erscheinen folgende Einträge im Logfile:
Jan 11 02:01:08 p15132903 postfix/local[16595]: DA3D911805E: to=
, relay=local, delay=1, status=bounced (unknown user: "hans.mustermann")
Jan 11 02:01:08 p15132903 postfix/cleanup[16593]: 237C0118191: message-id=<20040111010108.237C0118191@myhostname.pureserver.info> Jan 11 02:01:08 p15132903 postfix/qmgr[16517]: 237C0118191: from=<>, size=2628, nrcpt=1 (queue active) Jan 11 02:01:10 p15132903 postfix/smtp[16598]: 237C0118191: to=
,relay=mail.dummdidumm.de[193.197.251.233], delay=2, status=sent (250 2.0.0 Message received OK) Wie man sieht, schreibt Postfix den User "hans.mustermann" gar nicht, wie in der "localUsers" beschrieben in "hmustermann" um und kann dementsprechend die Mail nicht zustellen. Ausserdem verwendet er als Transport-Methode nicht den Cyrus, wie ich es ihm in der TRANSPORT gesagt habe.
In der Transport-Table schickst Du nur alle Mails an "meinedomain.de" an cyrus nicht aber die Domain "dummdidumm.de". -- Andreas
Hallo Andreas, Andreas Winkelmann wrote:
Sag Postfix er möchte Mails die an die Destination cyrus gehen aufsplitten und einzeln ausliefern:
cyrus_destination_recipient_limit = 1
Guter Tipp, diese Direktive kannte ich gar nicht. Probiere ich nachher gleich mal aus.
In der Transport-Table schickst Du nur alle Mails an "meinedomain.de" an cyrus nicht aber die Domain "dummdidumm.de".
Nein nein, die Original-Message geht an "meinedomain.de". Die Mail, die
vom System an "hans.wurst@dummdidumm.de" geschickt wird, enthält
lediglich die Fehlermeldung. Ein paar Zeilen vorher sieht man, was mit
der eigentlichen eMail passiert:
Jan 11 02:01:07 p15132903 postfix/smtpd[16592]: connect from
mail.dummdidumm.de[193.197.251.233]
Jan 11 02:01:07 p15132903 postfix/smtpd[16592]: DA3D911805E:
client=mail.dummdidumm.de[193.197.251.233]
Jan 11 02:01:08 p15132903 postfix/cleanup[16593]: DA3D911805E:
message-id=<4000A050.1070700@dummdidumm.de>
Jan 11 02:01:08 p15132903 postfix/qmgr[16517]: DA3D911805E:
from=
Am Sonntag, 11. Januar 2004 18:40 schrieb H.Wesser:
In der Transport-Table schickst Du nur alle Mails an "meinedomain.de" an cyrus nicht aber die Domain "dummdidumm.de".
Nein nein, die Original-Message geht an "meinedomain.de". Die Mail, die vom System an "hans.wurst@dummdidumm.de" geschickt wird, enthält lediglich die Fehlermeldung. Ein paar Zeilen vorher sieht man, was mit der eigentlichen eMail passiert:
Jan 11 02:01:07 p15132903 postfix/smtpd[16592]: connect from mail.dummdidumm.de[193.197.251.233] Jan 11 02:01:07 p15132903 postfix/smtpd[16592]: DA3D911805E: client=mail.dummdidumm.de[193.197.251.233] Jan 11 02:01:08 p15132903 postfix/cleanup[16593]: DA3D911805E: message-id=<4000A050.1070700@dummdidumm.de> Jan 11 02:01:08 p15132903 postfix/qmgr[16517]: DA3D911805E: from=
, size=921, nrcpt=1 (queue active) Jan 11 02:01:08 p15132903 postfix/smtpd[16592]: disconnect from mail.dummdidumm.de[193.197.251.233] Jan 11 02:01:08 p15132903 postfix/local[16595]: DA3D911805E: to= , relay=local, delay=1, status=bounced (unknown user: "hans.mustermann") Jan 11 02:01:08 p15132903 postfix/cleanup[16593]: 237C0118191: message-id=<20040111010108.237C0118191@myhostname.pureserver.info>
Hänge mal hinter den Aufruf von smtpd in der master.cf ein -vv, damit schaltest Du verbose-logging ein. Dann sollte auch erkennbar sein, wo bzw. durch was er die Adresse umschreibt. -- Andreas
Hallo, Andreas Winkelmann wrote:
Hänge mal hinter den Aufruf von smtpd in der master.cf ein -vv, damit schaltest Du verbose-logging ein. Dann sollte auch erkennbar sein, wo bzw. durch was er die Adresse umschreibt.
Okay, habe ich mal getan und das leicht maskierte ;-)) Logfile auf den Server hochgeladen. http://www.wesser.net/mail.txt Sorry, aber 90 KB waren mir für diese Mail etwas zu fett. Ich weiss nicht, vielleicht kannst Du etwas erkennen. Ich glaube, dass ich inzwischen den Wald vor Bäumen nicht mehr sehe. Thanks Holger
Am Sonntag, 11. Januar 2004 21:13 schrieb H.Wesser:
Hänge mal hinter den Aufruf von smtpd in der master.cf ein -vv, damit schaltest Du verbose-logging ein. Dann sollte auch erkennbar sein, wo bzw. durch was er die Adresse umschreibt.
Okay, habe ich mal getan und das leicht maskierte ;-)) Logfile auf den Server hochgeladen.
http://www.wesser.net/mail.txt
Sorry, aber 90 KB waren mir für diese Mail etwas zu fett. Ich weiss nicht, vielleicht kannst Du etwas erkennen. Ich glaube, dass ich inzwischen den Wald vor Bäumen nicht mehr sehe.
Sieht so aus, dass die Adressen in der /etc/postfix/canonical umgeschrieben wird. Was steht denn da drin? -- Andreas
Hi, Andreas Winkelmann wrote:
Sieht so aus, dass die Adressen in der /etc/postfix/canonical umgeschrieben wird. Was steht denn da drin?
Aja, ich verstehe worauf du hinaus willst. In der Tat stehen in der canonical Einträge wie z.B.: hans.mustermann hans.mustermann gerda.garstig gerda.garstig Wenn ich mich vage daran erinnere, wollte ich originär damit erreichen, dass die Mails vom MTA umgeschrieben werden, also dass die Benutzer in ihren Mailprogrammen keine Mails vorfinden ala "AN: hmustermann@meinedomain.de", sondern "AN: hans.mustermann@meinedomain.de" Jetzt stellt sich mir die Frage, wo der Unterschied zwischen der canonical und der virtual (in meinem Fall heisst die "localUser") ist und ausserdem, ob ich theoretisch die canonical leer lassen kann. Wie schreibe ich dann die Empfängeradressen um? Gruss Holger
Am Sonntag, 11. Januar 2004 21:41 schrieb H.Wesser:
Sieht so aus, dass die Adressen in der /etc/postfix/canonical umgeschrieben wird. Was steht denn da drin?
Aja, ich verstehe worauf du hinaus willst. In der Tat stehen in der canonical Einträge wie z.B.:
hans.mustermann hans.mustermann gerda.garstig gerda.garstig
Was soll das denn bringen?
Wenn ich mich vage daran erinnere, wollte ich originär damit erreichen, dass die Mails vom MTA umgeschrieben werden, also dass die Benutzer in ihren Mailprogrammen keine Mails vorfinden ala
"AN: hmustermann@meinedomain.de", sondern "AN: hans.mustermann@meinedomain.de"
Dann schreib doch auch: hmustermann@meinedomain.de hans.mustermann@meinedomain.de da rein. -- Andreas
Hi, Andreas Winkelmann wrote:
Dann schreib doch auch:
hmustermann@meinedomain.de hans.mustermann@meinedomain.de
da rein.
Habe die längst vergessene canonical gekickt, die localUsers in der Form "hans.mustermann@meinedomain.de hmustermann@meinedomain.de" aufgebaut, den Eintrag "myorigin = mydomain" rausgeschmissen und jetzt funzt alles prächtig. Merci vielmals für die Hilfe. Hast'n Bier gut... Gruss Holger
participants (2)
-
Andreas Winkelmann
-
H.Wesser