[Postfixbuch-users] Problem mit dynamischer Empfängerverifizierung

Andreas Winkelmann ml at awinkelmann.de
Fr Mai 29 16:30:14 CEST 2009


> ich komm grad nicht mehr so richtig weiter. Ich setzte gerade ein frisches
> Mailrelay auf, das vor unseren Groupwareserver geschaltet werden soll. Das
> Relay läuft mit openSuSE 11.1, und das Postfix lasse ich in einem chroot
> laufen. Die Einrichtung des chroots hat SuSEconfig übernommen, ich habe
> mich dabei an Peers Buch gehalten.
>
> Nun sollen die Empfängeradressen beim Groupwareserver (Postfix,
> Dovecot...) verifiziert werden, bevor das Relay die Mail annimmt. Also
> habe ich in der master.cf überprüft, ob "verify" nicht auskommentiert ist,
> und dann "reject_unverified_recipients" in die
> smtpd_recipient_restrictions eingefügt. Noch die Datenbank zur Speicherung
> verifizierter Adressen /var/spool/postfix/data/verify angelegt und die
> Rechte entsprechend angepasst. ../data gab es übrigens bei SuSE noch
> nicht, obwohl die Postfix-Version aktuell genug sein sollte, damit es
> dabei ist (S.332).

1. Dein verify Service läuft nicht im chroot. Also chroot anpassen und so
weiter ist unnötig.

2. Um überhaupt eine persistente DB auf der Platte zu haben muss man eine
Option setzen (address_verify_map) und natürlich entsprechend
konfigurieren.

> Nun noch Postfix neu gestartet und dann mal testweise eine Mail ans Relay
> eingeliefert. Gibt es den Empfänger, landet sie im Dovecot-Postfach, gibt
> es ihn nicht, wird ein bounce erzeugt :-( Auch fehlen die
> verify-spezifischen Logeinträge "status=deliverable" oder
> "status=undeliverable".
>
> Also scheint verify nicht zu funktionieren - ich frag mich bloß, warum?
> Die Einrichtung ist ja eigentlich mehr als trivial. Vielleicht fällt euch
> dazu ja was ein?

Sind vor reject_unverified_recipient irgendwelche OK Resultate in den
smtpd_mumble_restrictions?

> Schon mal Danke und euch ein schönes langes Wochenende,
>
>    Andreas
>
>
> postconf -n:
> ------------

Das geht erst mit m los?

> mydestination = $myhostname, localhost.$mydomain
> myhostname = mail.mydomain.de
> mynetworks = 192.168.2.0/24, 127.0.0.0/8
> mynetworks_style = subnet
> newaliases_path = /usr/bin/newaliases
> queue_directory = /var/spool/postfix
> readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
> relay_clientcerts = hash:/etc/postfix/relay_ccerts
> relay_domains = hash:/etc/postfix/relay_domains
> relayhost =
> relocated_maps = hash:/etc/postfix/relocated
> sample_directory = /usr/share/doc/packages/postfix-doc/samples
> sender_canonical_maps = hash:/etc/postfix/sender_canonical
> sendmail_path = /usr/sbin/sendmail
> setgid_group = maildrop
> smtp_sasl_auth_enable = no
> smtp_tls_CAfile = /etc/postfix/ssl/cacert.pem
> smtp_tls_cert_file = /etc/postfix/ssl/certs/postfixcert.pem
> smtp_tls_key_file = /etc/postfix/ssl/certs/postfixkey.pem
> smtp_tls_security_level = may
> smtp_tls_session_cache_database =
> btree:/var/lib/postfix/smtpd_tls_session_cache
> smtp_tls_session_cache_timeout = 3600s
> smtpd_client_restrictions =
> smtpd_helo_required = no
> smtpd_helo_restrictions =
> smtpd_recipient_restrictions = check_recipient_access
> hash:/etc/postfix/access_recipient_rfc,	check_client_access
> cidr:/etc/postfix/access_client,	check_helo_access
> hash:/etc/postfix/access_helo,	check_sender_access
> hash:/etc/postfix/access_sender,	check_recipient_access
> hash:/etc/postfix/access_recipient,	reject_non_fqdn_sender,	reject_non_fqdn_recipient,	reject_unknown_sender_domain,	reject_unknown_recipient_domain,	permit_sasl_authenticated,	permit_tls_clientcerts,	permit_mynetworks,	reject_rbl_client
> zen.spamhaus.org,	reject_unverified_recipient,	reject_unauth_destination,	permit
> smtpd_sasl_auth_enable = no
> smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
> smtpd_tls_ask_ccert = yes
> smtpd_tls_cert_file = /etc/postfix/ssl/certs/postfixcert.pem
> smtpd_tls_key_file = /etc/postfix/ssl/certs/postfixkey.pem
> smtpd_tls_received_header = yes
> smtpd_tls_security_level = may
> strict_8bitmime = no
> strict_rfc821_envelopes = no
> tls_random_source = dev:/dev/urandom
> transport_maps = hash:/etc/postfix/transport,
> hash:/etc/postfix/relay_domains
> unknown_local_recipient_reject_code = 550
> virtual_alias_domains = hash:/etc/postfix/virtual
> virtual_alias_maps = hash:/etc/postfix/virtual
>
> master.cf:
> ----------
>
> #
> # Postfix master process configuration file.  For details on the format
> # of the file, see the Postfix master(5) manual page.
> #
> #
> ==========================================================================
> # service type  private unpriv  chroot  wakeup  maxproc command + args
> #               (yes)   (yes)   (yes)   (never) (100)
> #
> ==========================================================================
> smtp      inet  n       -       y       -       -       smtpd
> #submission inet n      -       n       -       -       smtpd
> #	-o smtpd_etrn_restrictions=reject
> #	-o smtpd_client_restrictions=permit_sasl_authenticated,reject
> #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_etrn_restrictions=reject
> #  -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
> #628      inet  n       -       n       -       -       qmqpd
> pickup    fifo  n       -       y       60      1       pickup
> cleanup   unix  n       -       y       -       0       cleanup
> qmgr      fifo  n       -       y       300     1       qmgr
> #qmgr     fifo  n       -       n       300     1       oqmgr
> tlsmgr    unix  -       -       y       1000?   1       tlsmgr
> rewrite   unix  -       -       y       -       -       trivial-rewrite
> bounce    unix  -       -       y       -       0       bounce
> defer     unix  -       -       y       -       0       bounce
> trace     unix  -       -       n       -       0       bounce
> verify    unix  -       -       n       -       1       verify
> flush     unix  n       -       n       1000?   0       flush
> proxymap  unix  -       -       n       -       -       proxymap
> smtp      unix  -       -       y       -       -       smtp
> # When relaying mail as backup MX, disable fallback_relay to avoid MX
> loops
> relay     unix  -       -       n       -       -       smtp
> 	-o fallback_relay=
> #       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
> showq     unix  n       -       y       -       -       showq
> error     unix  -       -       y       -       -       error
> discard   unix  -       -       n       -       -       discard
> local     unix  -       n       n       -       -       local
> virtual   unix  -       n       y       -       -       virtual
> lmtp      unix  -       -       y       -       -       lmtp
> anvil     unix  -       -       n       -       1       anvil
> #localhost:10025 inet	n	-	n	-	-	smtpd -o content_filter=
> scache	  unix	-	-	n	-	1	scache
> #
> # ====================================================================
> # Interfaces to non-Postfix software. Be sure to examine the manual
> # pages of the non-Postfix software to find out what options it wants.
> #
> # Many of the following services use the Postfix pipe(8) delivery
> # agent.  See the pipe(8) man page for information about ${recipient}
> # and other message envelope options.
> # ====================================================================
> #
> # maildrop. See the Postfix MAILDROP_README file for details.
> # Also specify in main.cf: maildrop_destination_recipient_limit=1
> #
> 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
> procmail  unix  -       n       n       -       -       pipe
>   flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc
> ${sender} ${recipient}
> retry	  unix	-	-	n	-	-	error
> proxywrite unix	-	-	n	-	1	proxymap
> --

--
Andreas




Mehr Informationen über die Mailingliste Postfixbuch-users