{"id":6185,"date":"2013-04-22T07:00:00","date_gmt":"2013-04-22T05:00:00","guid":{"rendered":"http:\/\/nolabnoparty.com\/?p=6185"},"modified":"2020-03-15T17:32:44","modified_gmt":"2020-03-15T16:32:44","slug":"setup-postfix-antispam-as-mx-backup","status":"publish","type":"post","link":"https:\/\/nolabnoparty.com\/en\/setup-postfix-antispam-as-mx-backup\/","title":{"rendered":"Setup Postfix + Antispam as MX backup"},"content":{"rendered":"<p><img decoding=\"async\" style=\"background-image: none; margin: 10px auto 5px; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup01\" alt=\"mxbackup01\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup01.jpg\" width=\"602\" height=\"202\" border=\"0\" \/><\/p>\n<p>In mail-server architecture, MX backup is a solution that should be always implemented for redundancy and to avoid <strong>emails being returned with errors<\/strong> due to mail-server unavailability.<\/p>\n<p>The working concept is pretty easy: when the <strong>mail-server is offline<\/strong> (failure or maintenance), incoming emails are <strong>collected and stored in the MX backup<\/strong> and released once the primary mail-server is back online again.<\/p>\n<p><!--more--><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup02\" alt=\"mxbackup02\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup02.jpg\" width=\"600\" height=\"421\" border=\"0\" \/><\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #666666;\">DNS configuration<\/span><\/h2>\n<p>To work properly, system requires a <strong>second MX record in the DNS<\/strong> entry with a lower priority to properly deliver incoming email to MX backup while mail-server is offline.<\/p>\n<pre class=\"brush: shell; gutter: true\">mail.domain.com  MX  10\r\nmail2.domain.com MX  20<\/pre>\n<p>Mail-server and MX backup <strong>public IPs<\/strong> have to be also set to reflect the designed architecture.<\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup03\" alt=\"mxbackup03\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup03.jpg\" width=\"600\" height=\"91\" border=\"0\" \/><\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #666666;\">Required packages installation<\/span><\/h2>\n<p>In order to use <em>yum<\/em> command to install all required packages, we need to add the <strong>RPMforge repository<\/strong> to our system.<\/p>\n<p><span style=\"color: #000080;\"># wget http:\/\/pkgs.repoforge.org\/rpmforge-release\/rpmforge-release-0.5.2-1.el6.rf.x86_64.rpm<br \/>\n# rpm -Uvh rpmforge-release-0.5.2-1.el6.rf.x86_64.rpm<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup04\" alt=\"mxbackup04\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup04.jpg\" width=\"600\" height=\"191\" border=\"0\" \/><\/p>\n<p>In addition to Postfix, the installation process includes additional packages to <strong>protect the server from spamming<\/strong>: ClamAV, Spamassassin and Amavisd-new.<\/p>\n<p><span style=\"color: #000080;\"># yum install postfix spamassassin clamd clamav-db amavisd-new<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup05\" alt=\"mxbackup05\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup05.jpg\" width=\"600\" height=\"274\" border=\"0\" \/><\/p>\n<p>Because in this system we want to use only Postfix, if other packages are installed (Sendmail for instance) we need to <strong>set the correct MTA<\/strong> through the command <em>alternatives<\/em> selecting the right option.<\/p>\n<p><span style=\"color: #000080;\"># alternatives --config mta<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup06\" alt=\"mxbackup06\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup06.jpg\" width=\"600\" height=\"169\" border=\"0\" \/><\/p>\n<p>Because in this example only the package Postfix is installed, the number option to type is <span style=\"color: #ff0000;\"><strong>1<\/strong><\/span>.<\/p>\n<p>If Sendmail is installed in the system, <strong>remove it<\/strong> using the <em>yum<\/em> command.<\/p>\n<p><span style=\"color: #000080;\"># yum remove sendmail<\/span><\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #666666;\">ClamAV configuration<\/span><\/h2>\n<p>Edit the file <em>\/etc\/clamd.conf<\/em> and check that communication between Amavisd-new -&gt; ClamAV is made through the <strong>local UNIX socket<\/strong> instead of TCP socket.<\/p>\n<pre class=\"brush: shell; gutter: true\">LocalSocket \/var\/run\/clamav\/clamd.sock\r\n#TCPSocket  3310<\/pre>\n<p><span style=\"color: #0000a0;\"># vi \/etc\/clamd.conf <\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup07\" alt=\"mxbackup07\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup07.jpg\" width=\"600\" height=\"121\" border=\"0\" \/><\/p>\n<p>Enable ClamAV option removing the <strong>#<\/strong>.<\/p>\n<pre class=\"brush: shell; gutter: true\">[&#039;ClamAV-clamd&#039;,\r\n   \\&amp;ask_daemon, [&quot;CONTSCAN {}\\n&quot;, &quot;\/var\/run\/clamav\/clamd.sock&quot;],\r\n   qr\/\\bOK$\/m, qr\/\\bFOUND$\/m,\r\n   qr\/^.*?: (?!Infected Archive)(.*) FOUND$\/m ],<\/pre>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup08\" alt=\"mxbackup08\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup08.jpg\" width=\"600\" height=\"152\" border=\"0\" \/><\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #666666;\">Amavisd-new configuration<\/span><\/h2>\n<p>Edit configuiration file <em>\/etc\/amavisd.conf <\/em>and <strong>set the parameters<\/strong> with values that reflect your network environment.<\/p>\n<pre class=\"brush: shell; gutter: true\">$mydomain = &#039;nolabnoparty.com&#039;;            # domain.com\r\n$MYHOME = &#039;\/var\/amavis&#039;;\r\n$helpers_home = &quot;$MYHOME\/var&quot;;\r\n$lock_file = &quot;$MYHOME\/var\/amavisd.lock&quot;;\r\n$pid_file = &quot;$MYHOME\/var\/amavisd.pid&quot;;\r\n$myhostname = &#039;mail2.nolabnoparty.com&#039;;    # hostname.domain.com<\/pre>\n<p><span style=\"color: #000080;\"># vi \/etc\/amavisd.conf<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup09\" alt=\"mxbackup09\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup09.jpg\" width=\"600\" height=\"312\" border=\"0\" \/><\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #666666;\">Postfix configuration<\/span><\/h2>\n<p>Edit the file <em>\/etc\/postfix\/master.cf<\/em> and add the following lines:<\/p>\n<pre class=\"brush: shell; gutter: true\"># ==========================================================================\r\n# service type  private  unpriv  chroot  wakeup  maxproc  command + args\r\n#               (yes)    (yes)   (yes)   (never) (100)\r\n# ==========================================================================\r\namavisfeed unix    -       -       n       -       2       lmtp\r\n-o lmtp_data_done_timeout=1200\r\n-o lmtp_send_xforward_command=yes\r\n-o disable_dns_lookups=yes\r\n-o max_use=20\r\n\r\n127.0.0.1:10025 inet n    -        n       -       -       smtpd\r\n-o content_filter=\r\n-o smtpd_delay_reject=no\r\n-o smtpd_client_restrictions=permit_mynetworks,reject\r\n-o smtpd_helo_restrictions=\r\n-o smtpd_sender_restrictions=\r\n-o smtpd_recipient_restrictions=permit_mynetworks,reject\r\n-o smtpd_data_restrictions=reject_unauth_pipelining\r\n-o smtpd_end_of_data_restrictions=\r\n-o smtpd_restriction_classes=\r\n-o mynetworks=127.0.0.0\/8\r\n-o smtpd_error_sleep_time=0\r\n-o smtpd_soft_error_limit=1001\r\n-o smtpd_hard_error_limit=1000\r\n-o smtpd_client_connection_count_limit=0\r\n-o smtpd_client_connection_rate_limit=0\r\n-o receive_override_options=no_header_body_checks,\r\nno_unknown_recipient_checks,no_milters,no_address_mappings\r\n-o local_header_rewrite_clients=\r\n-o smtpd_milters=\r\n-o local_recipient_maps=\r\n-o relay_recipient_maps=<\/pre>\n<p><span style=\"color: #000080;\"># vi \/etc\/postfix\/master.cf<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup10\" alt=\"mxbackup10\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup10.jpg\" width=\"600\" height=\"450\" border=\"0\" \/><\/p>\n<p>Edit the file <em>\/etc\/postfix\/main.cf <\/em>.<\/p>\n<p><span style=\"color: #000080;\"># vi \/etc\/postfix\/main.cf<\/span><\/p>\n<p><span style=\"color: #000000;\">Add the following two lines:<\/span><\/p>\n<pre class=\"brush: shell; gutter: true\">#AMAVISD-NEW\r\ncontent_filter=amavisfeed:[127.0.0.1]:10024<\/pre>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup11\" alt=\"mxbackup11\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup11.jpg\" width=\"600\" height=\"46\" border=\"0\" \/><\/p>\n<p>Change the <strong>configuration parameters<\/strong> with values that fit with your network environment.<\/p>\n<pre class=\"brush: shell; gutter: true\">myhostname = mail2.nolabnoparty.com        # hostname.domain.com\r\nmydomain = nolabnoparty.com                # domain.com\r\nmyorigin = $mydomain\r\nmydestination = $myhostname, localhost.$mydomain\r\nmynetworks = 127.0.0.0\/8, 192.168.20.2     # IP MX backup host\r\nrelay_domains = nolabnoparty.com           # target domain\r\ninet_interfaces = all\r\nsmtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination\r\nrelay_recipient_maps =\r\nmessage_size_limit = 0\r\nmailbox_size_limit = 0\r\nmaximal_queue_lifetime = 5d<\/pre>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup12\" alt=\"mxbackup12\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup12.jpg\" width=\"600\" height=\"385\" border=\"0\" \/><\/p>\n<p>If the <strong>relay_recipient_maps<\/strong> parameter is left blank, all the emails are processed by the MX backup regardless if recipients exist or not in the mail-server with the risk of storing also <strong>\u201cjunk\u201d emails<\/strong>. By creating the file <em>\/etc\/postfix\/relay_recipients<\/em> with <strong>existing accounts<\/strong>, the problem is solved and only emails addresses to existing recipients are kept. Of course if you have a dynamic environment with thousand mailboxes, this approach is perhaps not the best option.<\/p>\n<p><span style=\"color: #0000a0;\"># vi \/etc\/postfix\/ relay_recipients<\/span><\/p>\n<pre class=\"brush: shell; gutter: true\"># Accounts configured in mail-server\r\nangus.young@nolabnoparty.com\r\nmalcolm.young@nolabnoparty.com\r\nbon.scott@nolabnoparty.com\r\nbrian.johnson@nolabnoparty.com\r\ncliff.williams@nolabnoparty.com\r\nphil.rudd@nolabnoparty.com<\/pre>\n<p>Enable installed services to be processed during <strong>system startup<\/strong>.<\/p>\n<p><span style=\"color: #0000a0;\"># chkconfig postfix on<br \/>\n# chkconfig amavisd on<br \/>\n# chkconfig clamd on<br \/>\n# chkconfig spamassassin on<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup13\" alt=\"mxbackup13\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup13.jpg\" width=\"600\" height=\"86\" border=\"0\" \/><\/p>\n<p><strong>Start the services<\/strong> following the correct sequence.<\/p>\n<p><span style=\"color: #0000a0;\"># service spamd restart<br \/>\n# service clamd restart<br \/>\n# service amavisd restart<br \/>\n# service postfix restart<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup14\" alt=\"mxbackup14\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup14.jpg\" width=\"600\" height=\"271\" border=\"0\" \/><\/p>\n<p>If a warning related to an <strong>outdated ClamAV database<\/strong> is shown, you can manually update the signature by using the command:<\/p>\n<p><span style=\"color: #000080;\"># \/usr\/bin\/freshclam<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup15\" alt=\"mxbackup15\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup15.jpg\" width=\"600\" height=\"267\" border=\"0\" \/><\/p>\n<p>Signature is then updated to <strong>latest available release<\/strong>.<\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup16\" alt=\"mxbackup16\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup16.jpg\" width=\"600\" height=\"104\" border=\"0\" \/><\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #666666;\">System test<\/span><\/h2>\n<p>Once the configuration is completed, we need to test the system to verify its correct functionality checking if <strong>emails are properly processed<\/strong>.<\/p>\n<p>Using the <em>telnet<\/em> command, we test first if <strong>Amavisd<\/strong> service is listening on <strong>127.0.0.1:10024<\/strong>.<\/p>\n<p><span style=\"color: #000080;\"># telnet localhost 10024<\/span><\/p>\n<pre class=\"brush: shell; gutter: true\">ehlo localhost\r\nquit<\/pre>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup17\" alt=\"mxbackup17\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup17.jpg\" width=\"600\" height=\"328\" border=\"0\" \/><\/p>\n<p>Next to test <strong>Postfix smtpd<\/strong> service is listening on <strong>127.0.0.1:10025<\/strong>.<\/p>\n<p><span style=\"color: #000080;\"># telnet localhost 10025<\/span><\/p>\n<pre class=\"brush: shell; gutter: true\">ehlo localhost\r\nquit<\/pre>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup18\" alt=\"mxbackup18\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup18.jpg\" width=\"600\" height=\"329\" border=\"0\" \/><\/p>\n<p>Using another computer, connect the <strong>MX backup via telnet<\/strong>. In yellow are shown the instructions to enter.<\/p>\n<pre class=\"brush: shell; gutter: true\">telnet MX_backup.domain.com 25<\/pre>\n<p><span style=\"color: #000080;\"># telnet mail2.nolabnoparty.com 25<\/span><\/p>\n<pre class=\"brush: shell; gutter: true\">ehlo www.nolabnoparty.com\r\nmail from:&lt;bon.scott@nolabnoparty.com&gt;\r\nrcpt to:&lt;bon.scott@nolabnoparty.com&gt;\r\ndata\r\nSubject: test backup mx\r\nsending message to test backup mx\r\n.\r\nquit<\/pre>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup19\" alt=\"mxbackup19\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup19.jpg\" width=\"600\" height=\"403\" border=\"0\" \/><\/p>\n<p>If the <strong>message is delivered<\/strong> to the recipient, then the system is working properly.<\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup20\" alt=\"mxbackup20\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup20.jpg\" width=\"600\" height=\"313\" border=\"0\" \/><\/p>\n<p>If the <strong>message is delivered<\/strong> to the recipient, then the system is working properly.<\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup21\" alt=\"mxbackup21\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup21.jpg\" width=\"600\" height=\"397\" border=\"0\" \/><\/p>\n<p>Check Postfix <strong>logs activity<\/strong> to verify whether MX backup is processing messages or not.<\/p>\n<p><span style=\"color: #000080;\"># tail -f \/var\/log\/maillog<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup22\" alt=\"mxbackup22\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup22.jpg\" width=\"600\" height=\"468\" border=\"0\" \/><\/p>\n<p>To check the <strong>MX backup emails queue<\/strong>, the command <em>mailq<\/em> shows the messages received so far.<\/p>\n<p><span style=\"color: #000080;\"><span style=\"color: #0000a0;\"># mailq<\/span><\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup23\" alt=\"mxbackup23\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup23.jpg\" width=\"600\" height=\"390\" border=\"0\" \/><\/p>\n<p>On regular basis the system perform a <strong>flush action<\/strong> of queued messages based on the value specified in the\u00a0 <em>\/etc\/postfix\/master.cf<\/em> file (default 1000 seconds).<\/p>\n<p><span style=\"color: #000080;\"><span style=\"color: #0000a0;\"># vi \/etc\/postfix\/mastercf<\/span><\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup24\" alt=\"mxbackup24\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup24.jpg\" width=\"600\" height=\"67\" border=\"0\" \/><\/p>\n<p>If you don\u2019t want to wait for next flush schedule, a<strong> manual flush<\/strong> can be performed using the command <em>postqueue<\/em> and checking with <em>mailq<\/em> the queue status.<\/p>\n<p><span style=\"color: #0000a0;\"># postqueue -f<br \/>\n# mailq<\/span><\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup25\" alt=\"mxbackup25\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup25.jpg\" width=\"600\" height=\"742\" border=\"0\" \/><\/p>\n<p>When messages are released from the MX backup, if everything works as expected, <strong>emails are delivered<\/strong> to the email client.<\/p>\n<p><img decoding=\"async\" style=\"background-image: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; padding-top: 0px; border-width: 0px;\" title=\"mxbackup26\" alt=\"mxbackup26\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/2013\/04\/mxbackup26.jpg\" width=\"600\" height=\"319\" border=\"0\" \/><\/p>\n<p>Instead of buying some cloud resources that could be quite expensive, in the market are available some <strong>providers that offer the MX backup service<\/strong> with interesting fees.<\/p>\n<ul>\n<li><a href=\"http:\/\/www.mxsave.com\/services-backup-mx.html\" target=\"_blank\" rel=\"noopener noreferrer\">mxsave.com<\/a><\/li>\n<li><a href=\"http:\/\/backupmx.it\/\" target=\"_blank\" rel=\"noopener noreferrer\">backupmx.it<\/a><\/li>\n<li><a href=\"http:\/\/dyn.com\/email\/dyn-email-backup-mx\/\" target=\"_blank\" rel=\"noopener noreferrer\">dyn.com<\/a><\/li>\n<li><a href=\"http:\/\/www.noip.com\/services\/managed_mail\/backup_mail.html\" target=\"_blank\" rel=\"noopener noreferrer\">noip.com<\/a><\/li>\n<li>\u2026<\/li>\n<\/ul>\n<p>With this solution <strong>no emails will be lost<\/strong> in case of mail-server failure and scheduled\u00a0maintenance\u00a0can be performed taking all the necessary time.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/nolabnoparty.com\/wp-content\/uploads\/images\/firma.jpg\" title=\"\"><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In mail-server architecture, MX backup is a solution that should be always implemented for redundancy and to avoid emails being returned with errors due to mail-server unavailability. The working concept is pretty easy: when the mail-server is offline (failure or maintenance), incoming emails are collected and stored in the MX backup and released once the primary mail-server is back online again.<\/p>\n","protected":false},"author":3,"featured_media":5990,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"rop_custom_images_group":[],"rop_custom_messages_group":[],"rop_publish_now":"initial","rop_publish_now_accounts":{"linkedin_93tdZWzMZc_93tdZWzMZc":"","facebook_2879994398731222_17841400390232720":"","twitter_113568041_113568041":"","mastodon_115463926174894442_115463926174894442":""},"rop_publish_now_history":[],"rop_publish_now_status":"pending","footnotes":""},"categories":[650,534],"tags":[615,579,616,617,618,619],"class_list":["post-6185","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mail-services-en","category-messaging-en","tag-amavisd-en","tag-backup-en","tag-clamav-en","tag-dns-en","tag-mail-server-en","tag-postfix-en","has_thumb"],"_links":{"self":[{"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/posts\/6185","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/comments?post=6185"}],"version-history":[{"count":0,"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/posts\/6185\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/media\/5990"}],"wp:attachment":[{"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/media?parent=6185"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/categories?post=6185"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nolabnoparty.com\/en\/wp-json\/wp\/v2\/tags?post=6185"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}