PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : probleme von postfix zu cyrus-imap



Sven_R
05.05.07, 13:16
hallo

ich hab ein kleines problem mit der zustellung von postfix an cyrus.

das empfangen mit postfix läuft einwandfrei.
aber beim ausliefern an cyrus verschluckt postfix immer die domain
aus info@meine_zweite_domain.de macht er info@myhostname.
wobei myhostname die domain der postfix conf entspricht.

da ich meine cyrus postfächer im still benutzer@domain.de
angelegt habe, um die übersicht zu behalten, mekert cyrus natürlich das
er die mailbox nicht findet.

wie bringe ich postfix bei das er die komplette addresse an cyrus weiter gibt.

hab schon viel doku gelesen aber irgendwie komme ich nicht weiter.

cu

Roger Wilco
05.05.07, 19:55
Wie lautet die Ausgabe von `postconf -n` und was steht in deiner master.cf sowie imapd.conf?

Sven_R
06.05.07, 11:19
hallo


Wie lautet die Ausgabe von `postconf -n` und
was steht in deiner master.cf sowie imapd.conf?

vor lauter verärgerung hab ich mal wieder das wesentliche vergessen.
sorry

also system ist SuSE 9.3
postfix ist version 2.2.5 und selbergebacken

postconf -n sagt folgendes


alias_maps = hash:/etc/aliases,
hash:/etc/postfix/virtual_mailbox
broken_sasl_auth_clients = yes
canonical_maps = hash:/etc/postfix/canonical
command_directory = /usr/sbin
config_directory = /etc/postfix
content_filter =
daemon_directory = /usr/libexec/postfix
debug_peer_level = 1
defer_transports =
disable_dns_lookups = no
html_directory = no
inet_interfaces = all
mail_owner = postfix
mail_spool_directory = /var/spool/mail/
mailbox_command =
mailbox_transport = cyrus
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
masquerade_classes = envelope_sender,
header_sender, header_recipient
masquerade_domains = no
masquerade_exceptions = root
mydestination = $myhostname,
localhost.$mydomain,
hash:/etc/postfix/transport
myhostname = mail.meine_domain.de
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/packages/postfix/README_FILES
relay_clientcerts = hash:/etc/postfix/relay_ccerts
relay_domains = hash:/etc/postfix/transport
relayhost =
relocated_maps = hash:/etc/postfix/relocated
sample_directory = /usr/share/doc/packages/postfix/samples
sender_canonical_maps = hash:/etc/postfix/sender_canonical
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtp_sasl_auth_enable = yes
smtp_sasl_mechanism_filter = plain, login
smtp_sasl_password_maps = ldap:/etc/postfix/virtual/ldap_virtual_alias
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/tls/cacert.pem
smtp_tls_CApath = /etc/postfix/tls/certs
smtp_tls_cert_file = /etc/postfix/tls/mail_signed_cert.pem
smtp_tls_key_file = /etc/postfix/tls/mailkey.pem
smtp_tls_loglevel = 1
smtp_use_tls = yes
smtpd_client_restrictions = permit_sasl_authenticated
smtpd_helo_required = yes
smtpd_helo_restrictions =
smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated,
check_client_access hash:/etc/postfix/access,
check_sender_access hash:/etc/postfix/access,
permit_tls_clientcerts hash:/etc/postfix/relay_ccerts,
reject_unauth_destination,
reject_unauth_pipelining,
reject_rbl_client opm.blitzed.org,
reject_rbl_client list.dsbl.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client sbl-xbl.spamhaus.org
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain =
smtpd_sasl_security_options = noanonymous
smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_tls_CAfile = /etc/postfix/tls/cacert.pem
smtpd_tls_CApath = /etc/postfix/tls/certs
smtpd_tls_cert_file = /etc/postfix/tls/mail_signed_cert.pem
smtpd_tls_key_file = /etc/postfix/tls/mailkey.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_use_tls = yes
soft_bounce = yes
unknown_local_recipient_reject_code = 450
virtual_gid_maps = static:5000
virtual_alias_maps = hash:/etc/postfix/virtual_alias
virtual_uid_maps = static:5000



und die master.cf sagt folgendes


smtp inet n - n - - smtpd
smtps inet n - n - - smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
#submission inet n - n - - smtpd
# -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
#628 inet n - n - - qmqpd
pickup fifo n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr fifo n - n 300 1 qmgr
#qmgr fifo n - n 300 1 nqmgr
tlsmgr unix - - n 1000? 1 tlsmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
flush unix n - n 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - n - - smtp
relay unix - - n - - smtp
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - n - - showq
error unix - - n - - error
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
#localhost:10025 inet n - n - - smtpd -o content_filter=

maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
#cyrus unix - n n - - pipe
# user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
#cyrus unix - n n - - pipe
# flags= user=cyrus argv=/usr/lib/cyrus/bin/deliver -r ${sender} -m ${extension} ${user}
cyrus unix - n n - - pipe
flags= user=cyrus argv=/usr/lib/cyrus/bin/deliver -d -f ${sender} -m ${extension} ${user}
#lmtpd unix - n n - - pipe
# flags= user=cyrus argv=/usr/lib/cyrus/bin/lmtpd -d -f ${sender} -m ${extension} ${user}
uucp unix - n n - - pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail unix - n n - - pipe
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
vscan unix - n n - 10 pipe
user=vscan argv=/usr/sbin/amavis ${sender} ${recipient}
procmail unix - n n - - pipe
flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}
trace unix - - n - 0 bounce
verify unix - - n - 1 verify
anvil unix - - n - 1 anvil
scache unix - - n - 1 scache
discard unix - - n - - discard


die imap.conf sagt dieses:


configdirectory: /var/lib/imap
partition-default: /var/spool/imap
sievedir: /var/lib/sieve
admins: cyrus root
defaultacl: anyone lrspd
allowanonymouslogin: no
autocreatequota: 10000
reject8bit: no
quotawarn: 90
timeout: 30
poptimeout: 10
dracinterval: 0
drachost: localhost
#virtdomains: on
virtdomains: userid
#defaultdomain: mail.meine_domain.de
#sasl_pwcheck_method: sasl
sasl_pwcheck_method: saslauthd
#sasl_auxprop_plugin: ldapdb
sasl_mech_list: plain login
unixhierarchysep: no
#servername: mail.meine_domain.de

lmtp_overquota_perm_failure: no
lmtp_downcase_rcpt: yes
#
# if you want TLS, you have to generate certificates and keys
#
tls_cert_file: /etc/ssl/ServerCerts/mailserver_cert.pem
tls_key_file: /etc/ssl/private/mailserver_prv_key-unverschluesselt.pem
tls_ca_file: /etc/ssl/certs/MeineCA_cert.pem
tls_ca_path: /etc/ssl/certs


cyrus-imapd ist das SuSE eigene packet version 2.2.12

ich hab im netz auch schon einige seiten gesucht aber irgendwie
hat mich das bissher nicht weiter gebracht.
wenn ich in postfix von cyrus auf


mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp

umstelle dann hab ich log


lmtpunix[22390]: duplicate_check: <001......@Compaq> meine_zweite_domain.de!user.info 0

wenn der mailbox_transport wieder auf cyrus ist kommt im log


postfix/pipe[32203]: 248065AFC2E4: to=<info@meine_zweite_domain.de>,
relay=cyrus, delay=1, status=SOFTBOUNCE
(data format error. Command output: info: Mailbox does not exist )

und im cyrus mosert natürlich mit dem hinweis


lmtpunix[32205]: verify_user(user.info) failed: Mailbox does not exist


nehme ich jetzt in die main.conf noch:


virtual_alias_maps = hash:/etc/postfix/virtual_mailbox

mit auf dann macht der aus der mailadresse info@meine_zweite_domain.de
die adresse


postfix/pipe[25817]: 283115AFC300:
to=<info_meine_zweite_domain_de@mail.meine_domain.de>,
orig_to=<info@meine_zweite_domain_de>, relay=cyrus, delay=1,
status=sent (mail.meine_domain.de)

die wird im moment auch ordentlich von imap erkannt weill die mailbox
info_meine_zweite_domain_de existiert.

aber so will sich das nicht haben, ich möchte das postfix alle
mailadressen in form von postfach@irgendeine_domain.de
an cyrus weiterreicht und cyrus dann das einsortiert.

ich weiss das cyrus mit postfächern in form von postfach@irgendeine_domain.de
umgehen kann.
aber ich kriege postfix einfach nicht dazu die postfach addressen nicht anzutasten

ich hoffe das es mit postfix überhaupt möglich ist sowas zu bewerkstelligen.

ich möchte nämlich in nächster zeit eine domains zusammenlegen und alle
postfächer mit cyrus so ordnen.

cu

Sven_R
06.05.07, 23:05
hallo

das thema hat sich erledigt.

ich bin eigentlich nur durch zufall drauf gekommen.
mit der directive in der imapd.conf virtdomains = on
legt cyrus einen unterordner der domains heisst
automatisch an.
dabei teste ich schon zwei tage mit diesen
verdammten directiven von postfix und cyrus

in der postfix main.cf und in der transport muss man
den deliver in lmtp:unix:/var/lib/imap/socket/lmtp
ändern.

dadurch ändert postfix die mailadresse an cyrus
von info@mail.meine_domain.de in mail.meine_domain.de!info

cyrus klawüstert sich das dann auseinander.

danach legt cyrus automatisch alle postfächer unterhalb
des domain ordners an.
nach dem schema
/var/spool/imap/domain
=====> erste_domain.de
==> user.mail_bla_bla1
==> user.mail_bla_bla2
=====> zweite_domain.de

eigentlich habe ich das nur mit bekommen weill ich
eine testmail an ein falsches postfach geschickt hatte
und beim löschen der postfächer festgestellt
habe das der die mail unter dem ordner domain/postfach
abgelegt hatte.

manchmal sieht man den wald vor lauter bäumen nicht.
das ist aber auch in keinem howto beschrieben wie man das richtig macht.
selbst cyrus ist meiner ansicht nach nicht wirklich gut dokumentiert.

troztdem danke falls sich jemand gedanken darüber gemacht hat.

cu