Configuring Postfix to act as a backup MX server
If you’re running your own mailserver for receiving e-mail, you probably want some kind of redundancy when it goes down so you don’t lose any mail. The solution to this is to configure several backup mail exchanger (or MX) servers. Postfix is a popular replacement for the classic *NIX sendmail program that, along with being a primary mail exchanger, can be configured to act as a secondary, backup MX.
Changes to Postfix’s main.cf
Postfix first needs to be allowed to work as a MX backup server, which can be done in addition to being a primary mail server for some other domain. This is done through configuring smtpdrecipientrestrictions in Postfix’s main.cf configuration file (usually located in /etc/postfix/). Add permitmxbackup to the list of restrictions. For example:
smtpd_recipient_restrictions = permit_mynetworks reject_unauth_destination permit_mx_backup
Next, the domains to act as a backup. These are added to the relay_domains option. For example:
relay_domains = $mydestination domain1.com domain2.net domain3.org
Now that postfix knows to accept mail destined for these domains, it needs to know what to do with it. Postfix’s transport maps feature can be used to specify to send mail back to the main mailserver. In main.cf, add a transport_maps configuration option, pointing to a database supported by Postfix (such as hashes), like so:
transport_maps = hash:/etc/postfix/transport
Postfix will then look to this file for any information on delivering the e-mail from domains specified in this file.
Setting up Postfix transports file
Assuming you are using Postfix’s hash database format, create a new file transport (in /etc/postfix/ if following the example above). This file is a space-separated list of domains and how to deliver mail for them. For example:
This tells Postfix to send mail destined for domain1.com, domain2.net, and domain3.org via SMTP to mail.domain1.com, mail.domain2.net, and mail.domain3.org respectively.
After adding the above, a binary database that Postfix will actually use needs to be created. This can be made by running;
in the directory the file transport resides.
After doing all this, you’ll now have a backup MX server for your main mail server. If your main mail server goes down, mail will then get sent to this backup MX server and queued up for eventually delivery back to your main mail server when it comes back online.
Source : http://samat.org/node/configuring_postfix_to_act_as_a_backup_mx_server