Hey-ho 👋
What is the best approach for selfhosting an email server with static IP or blocked port 25?
I’ve done it many times in many different ways, now doing it again and want to hear what is the best approach these days
My port 25 isn’t even probably blocked, I just prefer to use my vps to help it with this stuff
Any suggestions?
You can selfhost the email server wherever you want. But you’ve to use some external system to deliver the email or you’ll end up in spam because your residential IP is most likely dynamic and already flagged by most email providers.
One way to do it is to get a VPS somewhere and setup Wireguard on it. Then configure your local system to bind to the Wireguard interface and IP so all email send and received using the tunnel. Dovecot doesn’t care what interface it is running on, Postfix has specific options that you can change in
master.cf
to accommodate the fact that it will be binding to the VPN IP and the real IP is the VPS public IP.out-wg unix - - n - - smtp -o proxy_interfaces=188.xxx.xxx.xxx # the real public IP of the VPS -o smtp_bind_address=10.0.0.2 # the IP that your local server has on the WG interface -o inet_interfaces=10.0.0.2 # same as above -o myhostname=server.example.org # should match the PTR / reverse DNS entry on the VPS IP -o smtp_helo_name=server.example.org # should match the PTR / reverse DNS entry on the VPS IP -o syslog_name=smtp-wg
main.cf
to use the transport by adding:default_transport = out-wg
.That’s everything you need to get it going. Use https://www.mail-tester.com/ to debug if DKIM and everything else is properly setup at the end.
Very nice walkthrough. Gonna bookmark this.