0

I have this postfix instance to relay all mail to a relay host but I wish to make this instance also an archiving MX for a domain. Initially the configuration was:

mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
inet_interfaces = loopback-only
inet_protocols = ipv4
myhostname = domain.com
mydestination =
biff = no
append_dot_mydomain = no
soft_bounce = yes
relayhost = ***************
smtp_sasl_password_maps = ***************
smtp_use_tls=yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_tls_CAfile=/etc/ssl/certs/ca-certificates.crt
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
compatibility_level=2

In order to make it accept mail for a domain for archiving from the primary mail server, I removed the inet_interfaces so that it listens to public interface also and then configured the domain.

mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
inet_protocols = ipv4
myhostname = domain.com
mydestination =
biff = no
append_dot_mydomain = no
soft_bounce = yes
relayhost = ***************
smtp_sasl_password_maps = ***************
smtp_use_tls=yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_tls_CAfile=/etc/ssl/certs/ca-certificates.crt
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
compatibility_level=2
#
#
virtual_mailbox_domains = domain.com           
virtual_mailbox_base = /home/archive
virtual_mailbox_maps = static:mail/
virtual_uid_maps = static:1000
virtual_gid_maps = static:1000

But now even locally generated email for domain.com was getting stored in the virtual mailbox instead of getting relayed to the relayhost. So made virtual_mailbox_domains= empty in main.cf and configured public interface seperately in master.cf:

mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
inet_protocols = ipv4
myhostname = domain.com
mydestination =
biff = no
append_dot_mydomain = no
soft_bounce = yes
relayhost = ***************
smtp_sasl_password_maps = ***************
smtp_use_tls=yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_tls_CAfile=/etc/ssl/certs/ca-certificates.crt
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
compatibility_level=2
#
#
virtual_mailbox_domains =           
virtual_mailbox_base = /home/archive
virtual_mailbox_maps = static:mail/
virtual_uid_maps = static:1000
virtual_gid_maps = static:1000

master.cf

xx.xx.x.x:smtp inet n - y - - smtpd -o virtual_mailbox_domains=domain.com
127.0.0.1:smtp inet n - y - - smtpd

But this isn't working. The server is refusing to accept mail for domain.com on the public interface. In other words, how do I override virtual_mailbox_domains for the public IP? I wish to relay all locally generated emails to smarthost but store the email received on public IP for this domain.

Thanks.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.