Hi, for anyone thinking about using mailinabox ona Raspberry pi … It is officially “unsupported” but I’ve got it going, after a few minor hassles, and here’s what’s pi specific. In general, it went quite smoothly (thanks to Josh’s installer). Only the bits marked “important” were unexpected and special for the pi.
#1 Obtain static IP address, and then configure router to pass all “DMZ” traffic to my pi. And check that the pi (on a “guest” network) really is isolated from my LAN - yes it seems to be. Also obtain domain and setup glue records as per Josh’s guide.
#2 Prepared SD card with ubuntu-18.04.4-preinstalled-server-arm64+raspi3 image, as normal for the pi.
** Important - ubuntu and the pi might need help with the time setup (no battery backed RTC), and mailinabox needs to know the correct time. Edit /etc/systemd/timesyncd.conf and give it the IP address of a local NTP server, and a fallback.
** Important - install libffi-dev (sudo apt install libffi-dev) otherwise the mailinabox console can’t compile.
** Important - disable IPv6 before running the installer. This is to stop mailinabox complaining later when ubuntu changes your box’s IPv6 address. Ubuntu on the pi is a bit weak in this, not easy to permanently disable privacy extensions or IPv6, so just before running the installer, do “sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1” and “sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1”.
Also important, if you’ve got multiple network interfaces/address (eg. wifi + wired), remove all except the ONE which will be live/permanent. Otherwise, you can be sure that the name server (and maybe more) is listening on the wrong address!
#3 Run the installer as per the guide.
It seems to be working well, and I’m happy. There was a little more to my setup (connection to static IP, use of external SSD) than listed here, but those needn’t apply to everyone. Any one wanting a similar setup, feel free to contact me for specifics.
Thank you to everyone involved in mailinabox.