Difference between revisions of "Relay per Domain"

(ZCS 8.8 instructions)
 
(10 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{Article Infobox|{{admin}}|{{ZCS 5.0}}|{{ZCS 7.0}}|}}Reference bug: http://bugzilla.zimbra.com/show_bug.cgi?id=32740
+
{{BC|Community Sandbox}}
 
+
__FORCETOC__
 +
<div class="col-md-12 ibox-content">
 +
=Relay per Domain=
 +
{{KB|{{Unsupported}}|{{ZCS 8.0}}|{{ZCS 7.0}}|}}
 +
{{WIP}}
 +
Reference bugs: http://bugzilla.zimbra.com/show_bug.cgi?id=32740 and https://bugzilla.zimbra.com/show_bug.cgi?id=95348
  
 
Zimbra allows relaying emails to a specific server only, i.e using zimbraMtaRelayHost. However, there are needs to relay emails per domain basis based on '''the sender'''. For example, you want emails sent by users@domain1.com should be relayed through smtp.domain1.com and users@domain2.com through smtp.domain2.com servers. You can configure it using postfix's "sender_dependent_relayhost_maps".  
 
Zimbra allows relaying emails to a specific server only, i.e using zimbraMtaRelayHost. However, there are needs to relay emails per domain basis based on '''the sender'''. For example, you want emails sent by users@domain1.com should be relayed through smtp.domain1.com and users@domain2.com through smtp.domain2.com servers. You can configure it using postfix's "sender_dependent_relayhost_maps".  
  
'''This is an example and tested on ZCS 5.0.16 and ZCS 7.1.4'''
+
'''This is an example that has been tested on ZCS 5.0.16 and ZCS 7.1.4'''
  
 
'''Note: Below settings will not survive zimbra upgrades. Make sure you take backup of config files before upgrading.'''
 
'''Note: Below settings will not survive zimbra upgrades. Make sure you take backup of config files before upgrading.'''
  
 
1. Add following line to /opt/zimbra/postfix/conf/main.cf
 
1. Add following line to /opt/zimbra/postfix/conf/main.cf
 
+
'''Pre 8.5:'''
 
  ''sender_dependent_relayhost_maps = hash:/opt/zimbra/postfix/conf/bysender''
 
  ''sender_dependent_relayhost_maps = hash:/opt/zimbra/postfix/conf/bysender''
 +
'''8.5:'''
 +
''sender_dependent_relayhost_maps = lmdb:/opt/zimbra/postfix/conf/bysender''
  
 
2. Create file /opt/zimbra/postfix/conf/bysender and enter your domain names and relay server's IP addresses.
 
2. Create file /opt/zimbra/postfix/conf/bysender and enter your domain names and relay server's IP addresses.
 
 
  ''@domain1.com  [10.10.10.1]''
 
  ''@domain1.com  [10.10.10.1]''
 
  ''@domain2.com  [20.20.20.1]''
 
  ''@domain2.com  [20.20.20.1]''
Line 22: Line 28:
  
 
3. Create the hash file.
 
3. Create the hash file.
 
 
  ''postmap /opt/zimbra/postfix/conf/bysender''
 
  ''postmap /opt/zimbra/postfix/conf/bysender''
 
  
 
4. Restart zmmtactl
 
4. Restart zmmtactl
 
 
  ''zmmtactl stop''
 
  ''zmmtactl stop''
 
  ''zmmtactl start''
 
  ''zmmtactl start''
Line 34: Line 37:
  
  
 +
==ZCS 8.7 instructions==
 +
 +
1. Open /opt/zimbra/common/conf/main.cf file for editing with your favorite editor (e.g. vi).
 +
 +
2 . Find the sender_dependent_relayhost_maps parameter and set it to be lmdb:/opt/zimbra/common/conf/bysender
 +
''sender_dependent_relayhost_maps = lmdb:/opt/zimbra/common/conf/bysender''
 +
 +
Description:
 +
sender_dependent_relayhost_maps (default: empty)
 +
A sender-dependent '''override''' for the global relayhost parameter setting.The tables are searched by the envelope sender address and @domain.
 +
 +
3.Create a file /opt/zimbra/common/conf/bysender and enter your domain names and relay server's IP addresses.
 +
@domain1.com  [10.10.10.1]
 +
user@domain2.com  [20.20.20.1]
 +
 +
4. Create the hash file.
 +
postmap /opt/zimbra/common/conf/bysender
 +
 +
5.
 +
zmmtactl stop; zmmtactl start
 +
 +
==ZCS 8.8 instructions==
 +
Take backup of '/opt/zimbra/conf/zmconfigd.cf'  and open it with your favorite editor. Look for the "SECTION mta" and add the following line.
 +
 +
POSTCONF sender_dependent_relayhost_maps    FILE postfix_sender_dependent_relayhost_maps.cf
 +
 +
Note : Do not add anything with "#" it will create problem as this file don't understand that.
 +
 +
cat >> /opt/zimbra/conf/postfix_sender_dependent_relayhost_maps.cf
 +
lmdb:/opt/zimbra/common/conf/relay_domain_conf
 +
 +
cat >> /opt/zimbra/common/conf/relay_domain_conf
 +
@domain.com    10.137.26.10
 +
postmap /opt/zimbra/common/conf/relay_domain_conf
  
 +
Restart the MTA service or wait it will take this configuration in the next poll of zmconfigd.
  
 
{{Article Footer|ZCS 5.0.16|6/4/2009}}
 
{{Article Footer|ZCS 5.0.16|6/4/2009}}

Latest revision as of 10:41, 6 August 2018

Relay per Domain

   KB 2888        Last updated on 2018-08-6  




0.00
(0 votes)

Reference bugs: http://bugzilla.zimbra.com/show_bug.cgi?id=32740 and https://bugzilla.zimbra.com/show_bug.cgi?id=95348

Zimbra allows relaying emails to a specific server only, i.e using zimbraMtaRelayHost. However, there are needs to relay emails per domain basis based on the sender. For example, you want emails sent by users@domain1.com should be relayed through smtp.domain1.com and users@domain2.com through smtp.domain2.com servers. You can configure it using postfix's "sender_dependent_relayhost_maps".

This is an example that has been tested on ZCS 5.0.16 and ZCS 7.1.4

Note: Below settings will not survive zimbra upgrades. Make sure you take backup of config files before upgrading.

1. Add following line to /opt/zimbra/postfix/conf/main.cf

Pre 8.5:
sender_dependent_relayhost_maps = hash:/opt/zimbra/postfix/conf/bysender
8.5:
sender_dependent_relayhost_maps = lmdb:/opt/zimbra/postfix/conf/bysender

2. Create file /opt/zimbra/postfix/conf/bysender and enter your domain names and relay server's IP addresses.

@domain1.com  [10.10.10.1]
@domain2.com  [20.20.20.1]

You can even add individual email IDs to relay their emails to specific relay host.

 user@domain.com [10.10.10.2]

3. Create the hash file.

postmap /opt/zimbra/postfix/conf/bysender

4. Restart zmmtactl

zmmtactl stop
zmmtactl start

5. Test by sending emails.


ZCS 8.7 instructions

1. Open /opt/zimbra/common/conf/main.cf file for editing with your favorite editor (e.g. vi).

2 . Find the sender_dependent_relayhost_maps parameter and set it to be lmdb:/opt/zimbra/common/conf/bysender

sender_dependent_relayhost_maps = lmdb:/opt/zimbra/common/conf/bysender

Description:

sender_dependent_relayhost_maps (default: empty)
A sender-dependent override for the global relayhost parameter setting.The tables are searched by the envelope sender address and @domain. 

3.Create a file /opt/zimbra/common/conf/bysender and enter your domain names and relay server's IP addresses.

@domain1.com  [10.10.10.1]
user@domain2.com  [20.20.20.1]

4. Create the hash file.

postmap /opt/zimbra/common/conf/bysender 

5.

zmmtactl stop; zmmtactl start

ZCS 8.8 instructions

Take backup of '/opt/zimbra/conf/zmconfigd.cf'  and open it with your favorite editor. Look for the "SECTION mta" and add the following line. 
POSTCONF sender_dependent_relayhost_maps    FILE postfix_sender_dependent_relayhost_maps.cf

Note : Do not add anything with "#" it will create problem as this file don't understand that.

cat >> /opt/zimbra/conf/postfix_sender_dependent_relayhost_maps.cf
lmdb:/opt/zimbra/common/conf/relay_domain_conf
cat >> /opt/zimbra/common/conf/relay_domain_conf
@domain.com     10.137.26.10
postmap /opt/zimbra/common/conf/relay_domain_conf

Restart the MTA service or wait it will take this configuration in the next poll of zmconfigd.

Verified Against: ZCS 5.0.16 Date Created: 6/4/2009
Article ID: https://wiki.zimbra.com/index.php?title=Relay_per_Domain Date Modified: 2018-08-06



Try Zimbra

Try Zimbra Collaboration with a 60-day free trial.
Get it now »

Want to get involved?

You can contribute in the Community, Wiki, Code, or development of Zimlets.
Find out more. »

Looking for a Video?

Visit our YouTube channel to get the latest webinars, technology news, product overviews, and so much more.
Go to the YouTube channel »

Jump to: navigation, search