Bobcares

Backup Mail Exchanger – Here’s how to setup it up

by | Nov 29, 2018

For website owners, emails play a crucial role in their business.

So, they prefer to use a correctly configured Backup mail exchanger, as a part of their disaster recovery plan.

However, this requires some extra work to configure the server as a Backup Mail Exchanger.

In our role as Outsourced Technical Support we help our web hosts and server owners setup their server as a Backup Mail Exchanger.

Today, let’s discuss the steps to configure the server as a Backup Mail Exchanger.

 

What is Backup Mail Exchanger?

We’ve seen broadly 2 cases where website owners complain about their email delivery.

  • Bounced emails – If the primary mail server is down or inaccessible, and the retry time has expired, all emails will be bounced.
  • Delayed emails – High load on the primary mail server can cause delays in email delivery.

 

Your primary email server may goes down due to various reasons like server crashes, high load, security updates etc.

In this case, you can setup a backup mail exchanger to route all the emails to this server.

This queues all emails and relay those queued emails to the primary server once it is available.

At Bobcares, for the servers that we manage, we often configure backup mail exchanger as a part of the disaster recovery plan, to recover emails in case of crash

 

Steps to setup Backup Mail Exchanger

Now, let’s see how our Support Engineers configure a server as backup mail exchanger.

1) Configure the server as Backup mail exchanger

We perform a series of steps to configure a backup mail server.

 

a) Set correct hostname

Firstly,  we ensure that the hostname of the mail server is correct.

This hostname is used by the mail server when it connects to another server on the internet.

For example, in Postfix mail server, we set the correct hostname in the file “/etc/postfix/main.cf” as below:

myhostname = backup.domain.com

 

Likewise, in Exim mail servers, we add the hostname in exim configuration file “/etc/exim.conf” as below:

primary_hostname = backup.domain.com

 

b) Allow relaying of domains

Further, our Support Engineers specify the domain names for which the backup mail exchanger must relay emails when the primary mail server is online.

For example, in Postfix server, we mention such domains in the file “/etc/postfix/main.cf” as below:

relay_domains = domain.com

 

Similarly, in Exim mail server, we add the domains to be relayed in the exim config file as below:

relay_domains = domain.com

 

Moreover, you can specify the domain names using commas, if you want to make it as a backup mail server for multiple domains.

If the backup mail exchanger is cPanel/WHM based, we update the domain names in the file “/etc/secondarymx“.

This file maintains a list of domains for which the system serves as a backup mail exchanger.

 

c) Setup routing rules

Now, we need to create routing rules to tell the backup mail exchanger how to send it to the final recipient.

In Postfix server, we create the file “/etc/postfix/transportmaps” and define the routing rules as follows:

domain.com smtp:mail.domain.com

 

Here, domain.com is the domain from which mail originates, and the parameter smtp:mail.domain.com specifies the transport protocol and destination mail server.

Likewise, in Exim mail server, we define these routing rules under “route_list” in the exim configuration file.

 

d) Update the mail server DB and configuration files

Finally, rebuild the mail server database and configuration files, and restart the mail service.

In Postfix mail server, we use the postmap command to re-build the Postfix database tables.

For example:

postmap /etc/postfix/transportmaps

 

Then, restart the mail server. For instance, the Postfix mail service can be restarted with the command:

service postfix restart

 

That’s it!! Your backup mail exchanger is now ready to receive emails.

Now, let’s move on to the second step.

 

2) Configure low priority MX

After we’ve setup the backup mail exchanger, additional MX record should be added for the domain pointing to this backup mail server.

MX records use a weighted system. The lowest numeric MX record is considered as the primary mail server. If the primary is down, the next priority is given to the next lower value and so on.

backup mx multiple dns

MX records for a domain with backup MX

 

In this example, “mx1.domain.com” has priority 10 and is assigned as the primary mail server. If “mx1.domain.com” is down, mail server “mx2.domain.com” with priority 20 is selected and so on.

Here, we create a secondary MX record that point to the backup mail server with lower priority.

 

3) Check the retry rules in backup Mail exchanger

Next, our Support Engineers check the retry rules in the mail server configuration file and tweak them accordingly.

These retry rules control how often the mail server tries to deliver messages that can’t be delivered at the first attempt.

For example, in Exim servers, we manage the retry values in the exim configuration file “/etc/exim.conf”.

 

4) Test the backup mail exchanger setup

As soon as the secondary MX records start propagating, we validate the working of backup mail server.

For that, we stop the primary mail server and check the email logs of the backup mail server to confirm that the emails are re-routed correctly.

 

Conclusion

To sum up, the backup mail exchanger provides an uninterrupted mail service to the customers. It can also be used to load balance the mail servers. Today, we’ve seen how our Support Engineers configure a backup mail server.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

SEE SERVER ADMIN PLANS

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF