|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
From: Andrew Koros (akoros
ke.uu.net)
Date: Mon Jan 14 2008 - 08:19:16 CST
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
> Andrew Koros wrote:
>>> Andrew Koros wrote:
>>>> Hello,
>>>>
>>>> I have a postfix-2.4.6 built with postgresql lookups and delivers to a cyrus
>>>> server.
>>>>
>>>> Now, I have a problem with catchalls for virtual domains :
>>>> my main.cf has the followinfg entries:
>>>>
>>>> virtual_mailbox_domains = proxy:pgsql:/etc/postfix/pgsql-mydestination.cf
>>>> virtual_mailbox_base = /var/mail
>>>> virtual_mailbox_maps = proxy:pgsql:/etc/postfix/pgsql-virtual.cf
>>>>
>>>>
>>>> virtual_alias_maps = proxy:pgsql:/etc/postfix/pgsql-aliases.cf,
>>>> proxy:pgsql:/etc/postfix/pgsql-virtual.cf,
>>>> proxy:pgsql:/etc/postfix/pgsql-catchall.cf
>>>> virtual_alias_domains=
>>>> transport_maps = proxy:pgsql:/etc/postfix/pgsql-transport-lmtp.cf
>>>>
>>>>
>>>> If I send mail to user1
virtualdomain1.com it delivers fine to cyrus
>>>> If I have a alias1
virtualdomain1.com it also delivers fine to say
>>>> user1
virtualdomain1.com
>>>>
>>>> But if I send mail to some-other-user
catchall-domain.tld it fails with
>>>> errors
>>>> like this:
>>>>
>>>> Jan 14 13:43:47 my-server postfix/virtual[22590]: 3013017C0441:
>>>> to=<some-other-user
catchall-domain.tld>, relay=virtual, delay=0.27,
>>>> delays=0.21/0.02/0/0.05, dsn=5.1.1, status=bounced (unknown user:
>>>> "some-other-user
catchall-domain.tld")
>>>>
>>>> postmap -q some-other-user
catchall-domain.tld
>>>> pgsql:/etc/postfix/pgsql-catchall.cf
>>>>
>>>> returns:
>>>> user1
virtualdomain1.com
>>>>
>>>> postmap -q user1
virtualdomain1.com
>>>> pgsql:/etc/postfix/pgsql-transport-lmtp.cf
>>>>
>>>> returns:
>>>> lmtp:unix:/var/lib/imap/socket/lmtp
>>>>
>>>> Remember if I send directly to user1
virtualdomain1.com it delivers fine.
>>>>
>>>> Any clue what I might be missing here?
>>> show your master.cf and postconf -n. it looks like you disabled address
>>> rewrite or virtual_alias_maps somewhere.
>>>
>>
>> Please see the postconf -n output below:
>> Also not that when i do a "sendmail -bv some-other-user
catchall-domain.tld"
>> it
>> gives the correct output(see below) but the actual delivery doesn't work:
>> -----------------------------------
>> This is the mail system at host mx1.uunet.co.ke.
>>
>> Enclosed is the mail delivery report that you requested.
>>
>> The mail system
>>
>> <user1
virtualdomain1.com> (expanded from
>> <some-other-user
catchall-domain.tld>): delivery via
>> mx1.domain.tld[/var/lib/imap/socket/lmtp]: 250 2.1.5 ok
>>
>> ------------------------------------
>>
>> postconf -n:
>>
>> address_verify_map = btree:/var/spool/postfix/verify/verify_map
>> address_verify_positive_expire_time = 90d
>> alias_database = hash:/etc/aliases
>> alias_maps = hash:/etc/aliases
>> broken_sasl_auth_clients = yes
>> command_directory = /usr/sbin
>> config_directory = /etc/postfix
>> daemon_directory = /usr/libexec/postfix
>> debug_peer_level = 2
>> defer_transports = etrn-only hold
>> fast_flush_domains = $relay_domains
>> header_checks = regexp:/etc/postfix/header_checks.regexp
>> html_directory = /etc/postfix/html
>> local_recipient_maps = proxy:unix:passwd.byname, $alias_maps
>> mail_owner = postfix
>> mailq_path = /usr/bin/mailq.postfix
>> manpage_directory = /usr/share/man
>> masquerade_domains = $myhostname
>> masquerade_exceptions = root
>> max_idle = 600
>> max_use = 600
>> message_size_limit = 10240000
>> milter_default_action = accept
>> milter_protocol = 3
>> mydestination = $myhostname, localhost.$mydomain
>> mydomain = domain.tld
>> myhostname = mx1.domain.tld
>> mynetworks = 127.0.0.0/8, cidr:/etc/postfix/relay_ips,
>> proxy:pgsql:/etc/postfix/pgsql-relay_ips.cf
>> myorigin = $myhostname
>> newaliases_path = /usr/bin/newaliases.postfix
>> proxy_read_maps = proxy:unix:passwd.byname
>> proxy:pgsql:/etc/postfix/pgsql-mydestination.cf pr
>> oxy:pgsql:/etc/postfix/pgsql-transport-smtp.cf
>> proxy:pgsql:/etc/postfix/pgsql-transport-lmtp.cf
>> proxy:pgsql:/etc/postfix/pgsql-aliases.cf
>> proxy:pgsql:/etc/postfix/pgsql-virtual.cf pr
>> oxy:pgsql:/etc/postfix/pgsql-catchall.cf
>> proxy:pgsql:/etc/postfix/pgsql-domain-aliases.cf pr
>> oxy:pgsql:/etc/postfix/pgsql-relay_ips.cf
>> proxy:pgsql:/etc/postfix/pgsql-routed_domains.cf pr
>> oxy:pgsql:/etc/postfix/pgsql-relay_domains.cf
>> proxy:pgsql:/etc/postfix/pgsql-mydestination_spamcheck.cf
>> proxy:pgsql:/etc/postfix/pgsql-hold_domains.cf
>> proxy:pgsql:/etc/postfix/pgsql-HOLD_local_domains.cf pr
>> oxy:pgsql:/etc/postfix/pgsql-domains_to_verify.cf
>> queue_directory = /var/spool/postfix
>> readme_directory = /etc/postfix/readme
>> recipient_delimiter = +
>> relay_domains = hash:/etc/postfix/relay_domains,
>> hash:/etc/postfix/etrn_only_domains, proxy:pgsql
>> :/etc/postfix/pgsql-relay_domains.cf
>> sample_directory = /etc/postfix
>> sendmail_path = /usr/sbin/sendmail.postfix
>> setgid_group = postdrop
>> smtp_tls_CAfile = /etc/postfix/TLS/cacert.pem
>> smtp_tls_cert_file = /etc/postfix/TLS/newcert.pem
>> smtp_tls_key_file = /etc/postfix/TLS/mx1.domain.tld.pem
>> smtp_tls_session_cache_database = btree:/var/run/smtp_tls_session_cache
>> smtp_use_tls = yes
>> smtpd_banner = $myhostname ESMTP service ready \nJambo. Sema Nisikie
>> smtpd_milters = unix:/var/spool/postfix/clamav/clamav-milter.sock
>> smtpd_recipient_restrictions = check_recipient_access
>> hash:/etc/postfix/smtpd_access, check_recipient_access proxy:pgsql:
>> /etc/postfix/pgsql-domains_to_verify.cf, check_recipient_access
>> proxy:pgsql:/etc/postfix/pgsql-HOLD_local_domains.cf
>> , check_recipient_access
>> proxy:pgsql:/etc/postfix/pgsql-mydestination_spamcheck.cf,
>> reject_unknown_recipient_do
>> main, permit_mynetworks, permit_sasl_authenticated,
>> reject_unauth_destination, reject_non_fqdn_s
>> ender, reject_non_fqdn_recipient, reject_unknown_sender_domain,
>> reject_unauth_pipelining, rejec
>> t_invalid_hostname, reject_non_fqdn_hostname,
>> reject_spf_invalid_sender, reject_rbl_client sbl.
>> spamhaus.org, reject_rbl_client blackholes.mail-abuse.org,
>> reject_rbl_client list.dsbl.org,
>> reject_rbl_client bl.spamcop.net, reject_rhsbl_sender
>> dsn.rfc-ignorant.org, permit
>> smtpd_reject_unlisted_sender = yes
>> smtpd_sasl_auth_enable = yes
>> smtpd_sasl_local_domain =
>> smtpd_sasl_security_options = noanonymous
>> smtpd_sender_restrictions = reject_unknown_sender_domain
>> hash:/etc/postfix/sender_access
>> smtpd_tls_CAfile = /etc/postfix/TLS/cacert.pem
>> smtpd_tls_cert_file = /etc/postfix/TLS/newcert.pem
>> smtpd_tls_key_file = /etc/postfix/TLS/mx1.domain.tld.pem
>> smtpd_tls_loglevel = 0
>> smtpd_tls_received_header = yes
>> smtpd_tls_session_cache_database = btree:/var/run/smtpd_tls_session_cache
>> smtpd_use_tls = yes
>> spf_global_whitelist = yes
>> tls_random_source = dev:/dev/urandom
>> transport_maps = hash:/etc/postfix/hold_domains,
>> hash:/etc/postfix/etrn_only_domains, hash:/etc/
>> postfix/slow_destination_domains,
>> hash:/etc/postfix/routed_domains, proxy:pgsql:/etc/postfix/p
>> gsql-transport-lmtp.cf,
>> proxy:pgsql:/etc/postfix/pgsql-transport-smtp.cf,
>> proxy:pgsql:/etc/postfix/p
>> gsql-hold_domains.cf,
>> proxy:pgsql:/etc/postfix/pgsql-routed_domains.cf
>> unknown_local_recipient_reject_code = 550
>> unverified_recipient_reject_code = 550
>> unverified_sender_reject_code = 550
>> virtual_alias_domains =
>> virtual_alias_maps = proxy:pgsql:/etc/postfix/pgsql-aliases.cf,
>> proxy:pgsql:/etc/postfix/pgsql-virtual
>> .cf, proxy:pgsql:/etc/postfix/pgsql-domain-aliases.cf,
>> proxy:pgsql:/etc/postfix/pgsql-c
>> atchall.cf
>> virtual_mailbox_base = /var/mail
>> virtual_mailbox_domains = proxy:pgsql:/etc/postfix/pgsql-mydestination.cf
>> virtual_mailbox_maps = proxy:pgsql:/etc/postfix/pgsql-virtual.cf
>>
>>
>> /etc/postfix/master.cf
>> ------------------------------
>> smtp inet n - n - 250 smtpd
>> -o cleanup_service_name=pre-cleanup
>> -o receive_override_options=no_address_mappings
>> smtps inet n - n - - smtpd
>> -o smtpd_tls_wrappermode=yes
>> -o smtpd_sasl_auth_enable=yes
>> -o cleanup_service_name=pre-cleanup
>> -o receive_override_options=no_address_mappings
>> submission inet n - n - - smtpd
>> -o smtpd_enforce_tls=yes
>> -o smtpd_sasl_auth_enable=yes
>> pickup fifo n - n 60 1 pickup
>> cleanup unix n - n - 0 cleanup
>> qmgr fifo n - n 300 1 qmgr
>> tlsmgr unix - - n 1000? 1 tlsmgr
>> rewrite unix - - n - - trivial-rewrite
>> bounce unix - - n - 0 bounce
>> defer unix - - n - 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 - - n - - smtp
>> etrn-only unix - - n - 1 smtp
>> hold unix - - n - - smtp
>> slow unix - - n - - smtp
>> relay unix - - n - - smtp
>> -o fallback_relay=
>> showq unix n - n - - showq
>> error unix - - n - - error
>> retry unix - - n - - error
>> discard unix - - n - - discard
>> local unix - n n - - local
>> virtual unix - n n - - virtual
>> lmtp unix - - n - - lmtp
>> anvil unix - - n - 1 anvil
>> scache unix - - n - 1 scache
>> maildrop unix - n n - - pipe
>> flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
>> old-cyrus unix - n n - - pipe
>> flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user}
>> cyrus unix - n n - - pipe
>> user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
>> cyrus unix - n n - - pipe
>> user=cyrus argv=/usr/lib/cyrus-imapd/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.postfix
>> ($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
>> smtp-amavis unix - - y - 6 lmtp
>> -o lmtp_data_done_timeout=1200
>> -o lmtp_send_xforward_command=yes
>> -o disable_dns_lookups=yes
>> -o max_use=20
>> smtp-amavis-mailzu unix - - y - 10 lmtp
>> -o lmtp_data_done_timeout=1200
>> -o lmtp_send_xforward_command=yes
>> -o disable_dns_lookups=yes
>> -o max_use=20
>> 127.0.0.1:10025 inet n - y - - smtpd
>> -o content_filter=
>> -o local_recipient_maps=
>
> remove this. you already have no_unknown_recipient_checks)
>
>> -o relay_recipient_maps=
> and this
>
>> -o smtpd_restriction_classes=
>> -o smtpd_client_restrictions=
>> -o smtpd_helo_restrictions=
>> -o smtpd_sender_restrictions=
>> -o smtpd_recipient_restrictions=permit_mynetworks,reject
>> -o mynetworks=127.0.0.0/8
>> -o mynetworks_style=host
> this is useless since mynetworks is set.
>
>> -o strict_rfc821_envelopes=yes
>> -o
>> receive_override_options=no_unknown_recipient_checks,no_header_body_checks,no_milters
>> pre-cleanup unix n - n - 0 cleanup
>> -o virtual_alias_maps=
> This is it. remove this line.
>
>> -o canonical_maps=
> and this one
>
>> -o recipient_canonical_maps=
> and this one
>
>> -o masquerade_domains=
> and this one.
>
> finally, just remove the whole pre-cleanup. only keep the
> receive_override_options=no_address_mappings in your smtpd and smtps
> services.
>
>> cleanup unix n - n - 0 cleanup
>> -o mime_header_checks=
>> -o nested_header_checks=
>> -o body_checks=
>> -o header_checks=
>> -o header_checks=pcre:/etc/postfix/header_checks2
>> mailman unix - n n - - pipe
>> flags=FR user=mailman:mailman
>> argv=/etc/postfix/postfix-to-mailman-2.1.py ${nexthop} ${user}
>>
>
>
> remove the pre-cleanup service. It doesn't seem to bring you anything
> good. if you need it,
> do not play games with virtual_alias_maps and others. when
> receive_override_options
>
Thanks mouss. But it still seems to have the same problem .... may be there is
something else missing...
Andrew Koros
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]