Notes on my personal set-up

I've been running my own infrastructure for about 20-ish year, as a hobby for fun and profit. In the early days it was a couple of boxes at home running some flavor of RedHat on a domestic ADSL connection. Then one day mail stopped working, and after much scramble we figured out that the ISP has simply blocked inbound port 25. I've upgrade the home connection to a business plan, which was twice as expensive, with same speed, but the ports were not restricted. It lasted for a while until one day a power outage happened and fried the hard drive. I've moved to the cloud using MediaTemple.net, one of the first VPS providers at a considerable $50/mo. qmail was compiled from scratch using some step-by-step guide, apache was chugging along serving PHP-based web sites and we were off. At the time the setup was based on SquirrelMail and Gallery. This server has survived until MediaTemple has completely discontinued the VPS plan they were offering, and suggested moving to another one (much cheaper), but the prospect of having to recompile and reconfigure qmail was a bit too much, and I've decided to go with something that runs out of the box, so I picked postfix, which still powers my mail setup today. Around that time Edward Snowden's revelations showed the depths of surveillance and I thought to move my stuff to a country with better privacy laws, so I switched to 1984 Hosting out of Iceland. I was pretty happy using them for quite a long time, but at some point their storage system has suffered a catastrophic failure and I had to plug the holes by re-routing my mail through Gmail. Hey, I was in a pinch. Eventually they were able to recover the files, but I've since moved on to Digital Ocean, as I wanted something on a cheaper side.

So, let me tell you about my current set-up.

I'm currently running on a Digital Ocean VPS that I've obtained shortly after the 2017 1984Hosting Crash. Originally provisioned with Ubuntu Server 17. It's been upgraded continuously and it's running the latest version now.

Category Purpose Software Stack
Monitoring System Load, etc. Munin Perl
Logging Grafana Go
Data Capture Collectd C
Analytics Matomo PHP
Connectivity Email (SMTP) Postfix C
Email (IMAP) Dovecot C
Email (Filtering) Pigeonhole Sieve C
Email (Antispam) MTPolicyD Perl
Email (Verification) OpenDKIM OpenDMARC C
Email (UI) RoundCube PHP
Video Calling Tlk NodeJS
Calendar + Contacts Baïkal PHP
To-Do Vikunja Go / TypeScript
Security VPN Wireguard C
VPN (Management UI) WG Provision NodeJS
VPN (DNS Tunneling) Iodine C
Password Management VaultWarden Rust / Typescript
Attack Mitigation Crowdsec Go
SSO Zitadel Go
Social Media Status updates Pleroma Elixir
Video Hosting PeerTube TypeScript
Blog WriteFreely Go
Collaboration Knowledge Base Outline TypeScript
VCS Gitea Go

My criteria for the software – preferably compiled, single binary, low memory footprint. This usually precludes things like Ruby and Java, but I do currently run some NodeJS based tools, but for most part they seem to behave.

Costs-wise: $32.5 CAD/mo for the server. $24 for the instance and $5 for additional volume + tax. Not sure what I pay for DNS, because I own a bunch of domains... I use EasyDNS + ZoneEdit, which I can highly recommend.