So, nachdem ich mydestination anpepasst habe und auch aliases und canonical entpsrechend, klappt es in etwa. Aber: Die Mail landet nun in /var/spool/mail/ als Datei Namens "admin" im mbox-Format. Damit können aber die Outlook-Clients nicht drauf zugreifen. Denn eigentlich sollte doch cyrus/deliver die Mail in /var/spool/imap/user/admin/xxxx im Maildir-Format ablegen. Dort landen immer alle Mails, die mit fetchmail von externen Pop-Servern abgeholt werden. Und von dort werden sie dann via cyrus an die Outlook-Clients verteilt. Wie bekomme ich nun die Mail aus /var/spool/mail ordnungsgemäß nach /var/spool/imap/user/... ? Timothy -- "Es gibt zwei Dinge im Leben, die du nicht zurücknehmen kannst: Den Pfeil den du verschossen und das Wort, das du gesprochen" - altes indianisches Sprichwort
Timothy Kesten wrote:
So,
nachdem ich mydestination anpepasst habe und auch aliases und canonical entpsrechend, klappt es in etwa. Aber: Die Mail landet nun in
/var/spool/mail/
als Datei Namens "admin" im mbox-Format.
Damit können aber die Outlook-Clients nicht drauf zugreifen. Denn eigentlich sollte doch cyrus/deliver die Mail in
/var/spool/imap/user/admin/xxxx
im Maildir-Format ablegen.
Dort landen immer alle Mails, die mit fetchmail von externen Pop-Servern abgeholt werden. Und von dort werden sie dann via cyrus an die Outlook-Clients verteilt.
Wie bekomme ich nun die Mail aus /var/spool/mail ordnungsgemäß nach /var/spool/imap/user/... ?
postconf -n ?? /etc/postfix/master.cf ?? Logs? Vermutlich hast du in main.cf keinen Eintrag mailbox_transport = cyrus Die Mailboxen sind mit cyradm angelegt? Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply (@) japantest (.) homelinux (.) com
postconf -n ??
/etc/postfix/master.cf ?? smtp inet n - n - - smtpd #smtps inet n - n - - smtpd # -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
server:/home/admin # postconf -n alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases canonical_maps = hash:/etc/postfix/canonical command_directory = /usr/sbin config_directory = /etc/postfix content_filter = daemon_directory = /usr/lib/postfix debug_peer_level = 2 default_destination_concurrency_limit = 10 defer_transports = disable_dns_lookups = no inet_interfaces = $myhostname, localhost local_destination_concurrency_limit = 2 luser_relay = $root@mail.space.mil mail_owner = postfix mail_spool_directory = /var/spool/mail mailbox_command = mailbox_size_limit = 0 mailbox_transport = mailq_path = /usr/bin/mailq manpage_directory = /usr/share/man masquerade_classes = envelope_sender, header_sender, header_recipient masquerade_domains = masquerade_exceptions = root message_size_limit = 10240000 mydestination = $myhostname, localhost.$mydomain, $mydomain mydomain = goodlack.local myhostname = server.goodlack.local mynetworks = 192.168.0.0/24 127.0.0.0/8 myorigin = $mydomain newaliases_path = /usr/bin/newaliases queue_directory = /var/spool/postfix readme_directory = /usr/share/doc/packages/postfix/README_FILES relayhost = auth.smtp.kundenserver.de 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 = maildrop smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth smtp_sasl_security_options = noanonymous smtp_use_tls = no smtpd_banner = $myhostname ESMTP smtpd_client_restrictions = smtpd_helo_required = no smtpd_helo_restrictions = smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination smtpd_sender_restrictions = hash:/etc/postfix/access smtpd_use_tls = no strict_rfc821_envelopes = no transport_maps = hash:/etc/postfix/transport unknown_local_recipient_reject_code = 450 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 fifo - - n 300 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= # # Interfaces to non-Postfix software. Be sure to examine the manual # pages of the non-Postfix software to find out what options it wants. # # maildrop. See the Postfix MAILDROP_README file for details. # 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} 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}
Logs? welche?
/var/spool/mail: ?Jul 30 15:06:48 server postfix/smtpd[16516]: connect from vmware.goodlack.local[192.168.0.8] Jul 30 15:06:48 server postfix/smtpd[16516]: 8A2332392E: client=vmware.goodlack.local[192.168.0.8] Jul 30 15:06:49 server postfix/smtpd[16516]: D71D52392E: client=vmware.goodlack.local[192.168.0.8] Jul 30 15:06:49 server postfix/cleanup[16518]: D71D52392E: message-id=<AJEJJIAKEBJBJAMGIEJLAEKCCCAA.heller@goodlack.de> Jul 30 15:06:49 server postfix/qmgr[16453]: D71D52392E: from=<heller@goodlack.de>, size=692, nrcpt=1 (queue active) Jul 30 15:06:49 server postfix/local[16521]: D71D52392E: to=<admin@goodlack.local>, relay=local, delay=0, status=sent (mail box) Jul 30 15:06:50 server postfix/smtpd[16516]: disconnect from vmware.goodlack.local[192.168.0.8]
Vermutlich hast du in main.cf keinen Eintrag mailbox_transport = cyrus ist vorhanden
Die Mailboxen sind mit cyradm angelegt? Ja
Timothy -- "Es gibt zwei Dinge im Leben, die du nicht zurücknehmen kannst: Den Pfeil den du verschossen und das Wort, das du gesprochen" - altes indianisches Sprichwort
Timothy Kesten wrote:
postconf -n ??
server:/home/admin # postconf -n alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases
In den neueren Suse-Installation ist dies ebenfalls nach /etc/postfix/aliases geschoben worden. Würde ich an deiner Stelle vielleicht auch, das entbindet die Postfix Installation von den System alias. Am Ende immer "postalias /etc/postfix/aliases" ausführen.
canonical_maps = hash:/etc/postfix/canonical command_directory = /usr/sbin config_directory = /etc/postfix content_filter = daemon_directory = /usr/lib/postfix debug_peer_level = 2 default_destination_concurrency_limit = 10 defer_transports = disable_dns_lookups = no inet_interfaces = $myhostname, localhost
Das ist etwas seltsam. Bei inet_interfaces sollte eine IP-Adresse stehen oder "all" für alle IPs des Systems. Interessanterweise scheint es ja bei dir zu funktionieren. Eigentlich sollte hier $myhostname ignoriert werden und das Mailen nur von localhost möglich sein. inet_interfaces = 192.168.0.12, 127.0.0.0/8
local_destination_concurrency_limit = 2 luser_relay = $root@mail.space.mil
Ist der Server von außen erreichbar oder holt er seine Mails per fetchmail ab von einem Provider? Der erste Spammer, der eine Wörterbuchattacke gegen deinen Server fährt, haut dir das Postfach sonst komplett zu. Ich bekomme reichlich Versuche, Mails an nicht existierende User auf meinem Server zuzustellen.
mail_owner = postfix mail_spool_directory = /var/spool/mail mailbox_command = mailbox_size_limit = 0 mailbox_transport =
Okay, hier sollte "mailbox_transport = cyrus" stehen, damit Postfix weiss, dass locale Mails von Cyrus verwaltet werden. Der Transport cyrus ist in master.cf definiert. Schaue am besten nach, ob er auch dort steht.
mailq_path = /usr/bin/mailq manpage_directory = /usr/share/man masquerade_classes = envelope_sender, header_sender, header_recipient masquerade_domains = masquerade_exceptions = root message_size_limit = 10240000
Die 10 MB als Obergrenze für Mails sind gewünscht? Postfix setzt dies per Default.
mydestination = $myhostname, localhost.$mydomain, $mydomain mydomain = goodlack.local myhostname = server.goodlack.local mynetworks = 192.168.0.0/24 127.0.0.0/8
Ah, deshalb kann dein Subnetz mailen. (^-^)
myorigin = $mydomain newaliases_path = /usr/bin/newaliases queue_directory = /var/spool/postfix readme_directory = /usr/share/doc/packages/postfix/README_FILES relayhost = auth.smtp.kundenserver.de 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 = maildrop smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth smtp_sasl_security_options = noanonymous
Melden sich alle User per Smtp Auth an? Wenn es keine Anwendungen gibt im netzwerk, die ohne Authentifizierung mailen, dann kann man die Restriktionen etwas härter setzen.
smtp_use_tls = no smtpd_banner = $myhostname ESMTP smtpd_client_restrictions = smtpd_helo_required = no smtpd_helo_restrictions = smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination smtpd_sender_restrictions = hash:/etc/postfix/access smtpd_use_tls = no strict_rfc821_envelopes = no transport_maps = hash:/etc/postfix/transport unknown_local_recipient_reject_code = 450
Gut, bis hierher sieht das in Ordnung aus. Es gibt noch einige nette Annehmlichkeiten, die man konfigurieren kann, aber das kommt, wenn die Grundkonfiguration steht.
/etc/postfix/master.cf ?? cyrus unix - n n - - pipe user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
Logs?
from=<heller@goodlack.de>, size=692, nrcpt=1 (queue active) Jul 30 15:06:49 server postfix/local[16521]: D71D52392E: to=<admin@goodlack.local>, relay=local, delay=0, status=sent (mail box)
Ah, genau das wollte ich sehen. Es gibt keinen Versuch, den Transport cyrus zu verwenden, Postfix legt die Mails also nach Default in /var/spool/mail/$user ab. So sieht es aus, wenn wie bei mir der Transport über Cyrus läuft: Jul 30 16:11:51 katgar postfix/pipe[12720]: 3E7091623A: to=<listen@japantest.homelinux.com>, orig_to=<postfix-users@japantest.h omelinux.com>, relay=cyrus, delay=0, status=sent (japantest.homelinux.com) Jul 30 16:11:51 katgar postfix/qmgr[21443]: 3E7091623A: removed
Jul 30 15:06:50 server postfix/smtpd[16516]: disconnect from vmware.goodlack.local[192.168.0.8]
Vermutlich hast du in main.cf keinen Eintrag mailbox_transport = cyrus
ist vorhanden
Postfix übernimmt Änderungen an main.cf, master.cf erst, wenn du Postfix neu startest. rcpostfix restart? Postconf -n zeigt alle Parameter, die von der Standardkonfiguration abweichen. Wie du oben gesehen hast, ist mailbox_transport in der aktuellen Konfiguration nicht gesetzt, deshalb Postfix die Mails nicht an Cyrus übergeben.
Die Mailboxen sind mit cyradm angelegt?
Excellent. Wenn Cyrus dann auch läuft, sollte nach einem Neustart von Postfix der Transport nach Cyrus funktionieren. Sandy -- Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply (@) japantest (.) homelinux (.) com
participants (3)
-
Sandy Drobic
-
Timothy Kesten
-
Torsten E.