Howto/20230921 Use a cheap VPS to bypass ISP blocking of port 25 to postfix mail server: Difference between revisions
From Interpause
Jump to navigationJump to search
(→Steps) |
|||
Line 20: | Line 20: | ||
[[File:NamecheapMXRecord.gif | 800px]] | [[File:NamecheapMXRecord.gif | 800px]] | ||
; 2) Setup mail1.interpause.com | ; 2) Setup /etc/postfix/main.cf on mail1.interpause.com | ||
<pre> | <pre> | ||
myhostname = mail1.interpause.com | myhostname = mail1.interpause.com | ||
mydestination = mail1.interpause.com, localhost, localhost.localdomain | mydestination = mail1.interpause.com, localhost, localhost.localdomain | ||
relayhost = smtp.ebox.ca | mynetworks = 127.0.0.0/8 [::1]/128 mail1.interpause.com mail2.interpause.com | ||
relayhost = [smtp.ebox.ca]:587 | |||
</pre> | </pre> | ||
; 3) Setup mail2.interpause.com | ; 3) Setup /etc/postfix/main.cf on mail2.interpause.com | ||
<pre> | |||
myhostname = mail2.interpause.com | |||
mydestination = $myhostname, localhost, localhost.localdomain, localhost | |||
relayhost = [interpause.com]:2025 | |||
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mail1.interpause.com mail2.interpause.com | |||
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination | |||
relay_domains = $mydestination, interpause.com | |||
relay_recipient_maps = | |||
</pre> |
Revision as of 14:03, 21 September 2023
Disclaimer
My Howtos are mainly for me to document the steps required in case I ever have to re-do them again. Hopefully they will help other system admins out there, but I regret that this is not my primary objective.
Problem
We just switched to a new Internet Service Provider (ISP) that blocks port 25, both ways, making us no longer able to send or receive emails.
Solution
- For outbound emails, use the ISP's smtp server to send emails.
- For inbound emails, use a cheap VPS whose port 25 is open to receive and then forward emails to the main mail server on external port 2025 and internal port 25 (not blocked by ISP). We already have a cheap VPS for our OpenVPN server with racknerd that costs 11USD/year so, for us, there is no extra cost to setup this mail forwarder. Our solution is based on the following guide to setup a backup MX: https://www.howtoforge.com/postfix_backup_mx
Prerequesites
- You already have a working email server (mail1.interpause.com) configured with postfix, but port 25 is completely blocked
- You have rented a cheap VPS and have installed postfix using the default configuration (mail2.interpause.com)
- You have access to your ISP's smtp server (smtp.ebox.ca on port 587). Be sure to switch these for your own domain addresses.
Steps
- 1) Setup MX records on domain provider to point to VPS
- For namecheap, it looks like this:
- 2) Setup /etc/postfix/main.cf on mail1.interpause.com
myhostname = mail1.interpause.com mydestination = mail1.interpause.com, localhost, localhost.localdomain mynetworks = 127.0.0.0/8 [::1]/128 mail1.interpause.com mail2.interpause.com relayhost = [smtp.ebox.ca]:587
- 3) Setup /etc/postfix/main.cf on mail2.interpause.com
myhostname = mail2.interpause.com mydestination = $myhostname, localhost, localhost.localdomain, localhost relayhost = [interpause.com]:2025 mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mail1.interpause.com mail2.interpause.com smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination relay_domains = $mydestination, interpause.com relay_recipient_maps =