Hi,

Sorry for having to obscure stuff in the below, but I have to.

I'm setting up an MX for our new customer mail setup. I'm having a problem where relay_domains are not being looked up in LDAP as they should.

We have a bunch of test users in LDAP under the domain example.com, for testing.

The relay parameters are as follows:

relay_domains = proxy:ldap:/etc/postfix/ldap-domains.cf <ourdomain>.com relay_recipient_maps = proxy:pgsql:/etc/postfix/pgsql_corporate_recipients.cf proxy:ldap:/etc/postfix/ldap-users.cf
relay_transport = relay:[<mailscanner.ourdomain>.net]

I have to specify <ourdomain>.com specifically in the relay_domains, as <ourdomain>.com isn't yet listed in LDAP. It will be.

The relay_recipient_maps funkiness is because we will have both corporate mail and customer mail on the same domain, at least for a time (don't get me started on what a good idea that was).

If I try a lookup of test000...@example.com against our recipient_domains LDAP configuration file, it works:

$ postmap -q test000...@example.com ldap:/etc/postfix/ldap-domains.cf
example.com

If I send a test Email from the host to a corporate address at <ourdomain>.com, it arrives just fine. I even see it look on the LDAP server first to see if it is a domain listed there.

But if I try to send a message to test000...@example.com, it doesn't even do a look-up in LDAP, it tries to deliver it to example.com instead.

Feb 19 16:35:55 mx postfix/pickup[4988]: B393F86592: uid=0 from=<root> Feb 19 16:35:55 mx postfix/cleanup[5599]: B393F86592: message-id=<20130219163555.B393F86592@mx.<ourdomain>.net> Feb 19 16:35:55 mx postfix/qmgr[4987]: B393F86592: from=<root@mx.<ourdomain>.net>, size=366, nrcpt=1 (queue active) Feb 19 16:35:59 mx postfix/smtp[5603]: connect to example.com[2001:500:88:200::10]:25: Connection refused Feb 19 16:36:20 mx postfix/smtp[5603]: connect to example.com[192.0.43.10]:25: Connection timed out Feb 19 16:36:20 mx postfix/smtp[5603]: B393F86592: to=<test000...@example.com>, relay=none, delay=134, delays=109/0.01/24/0, dsn=4.4.1, status=deferred
(connect to example.com[192.0.43.10]:25: Connection timed out)

I put in the proxy: for performance reasons. I tried taking it out but it made no difference and I didn't really expect it to.

I'd understand it if LDAp was returning something that Postfix wasn't happy with. But it's not even asking. It does appear to connect but never sends a query. It's as if, somehow, it's deciding that example.com is not a domain we relay for.

I've tried upping the logging, and also tried a debug Email with sendmail -bv. But neither give me any indication of how Postfix decides what it's going to do with the message.

I'm clearly overlooking something obvious.  Any ideas?

Here's the postconf -n output:

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
html_directory = /usr/share/doc/postfix/html
inet_interfaces = all
inet_protocols = ipv6,ipv4
mailbox_size_limit = 0
mydestination = mx.<ourdomain>.net, localhost
myhostname = mx.<ourdomain>.net
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 <our v6 range> <our v4 range>
myorigin = /etc/mailname
readme_directory = /usr/share/doc/postfix
recipient_delimiter = +
relay_domains = proxy:ldap:/etc/postfix/ldap-domains.cf <ourdomain>.com
relay_recipient_maps = proxy:pgsql:/etc/postfix/pgsql_corporate_recipients.cf
proxy:ldap:/etc/postfix/ldap-users.cf
relay_transport = relay:[<mailscanner.ourdomain>.net]
smtp_tls_ciphers = high
smtp_tls_mandatory_ciphers = high
smtp_tls_mandatory_exclude_ciphers = RC4,MD5
smtp_tls_note_starttls_offer = yes
smtp_tls_protocols = !SSLv2,!SSLv3
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_error_sleep_time = 2s
smtpd_hard_error_limit = 10
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks reject_invalid_helo_hostname
reject_non_fqdn_helo_hostname
smtpd_recipient_restrictions = permit_mynetworks reject_unauth_pipelining reject_non_fqdn_sender reject_invalid_hostname reject_non_fqdn_hostname reject_unknown_sender_domain reject_unlisted_recipient reject_non_fqdn_recipient reject_unknown_recipient_domain reject_unauth_destination reject_multi_recipient_bounce
smtpd_soft_error_limit = 5
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes

Thanks,
Geoff.

Reply via email to