Quake Champions is awesome (as in the gameplay — performance is meh).

Amazon Web Services is not awesome: it wasn't really obvious that promotional credits aren't spent on reserved EC2 instances :( Also HardenedBSD was behaving weird on it (secadm kernel panic, Python libssl segfaults).

But with regular FreeBSD I've set up a Matrix homeserver (Synapse) on EC2! I am now @greg:unrelenting.technology :) It's working as my new IRC bouncer, so with that I've been able to say goodbye to the previous VPS that served this website (which was still running my ZNC).

Three days ago, I received an email from DigitalOcean. They said that they were doing some maintenance and my VPS, the one that currently runs this website, will be rebooted soon. I didn’t pay much attention to that.

Today, I wanted to look at my website… and it didn’t open. The server didn’t even respond to ping. Yes, yes, I should use a service that monitors my stuff, I know. Few people care about my website though :D

So I rebooted the server, went to the DigitalOcean VNC console, logged in… as a regular user that can’t sudo. Becuase For Security™, my sudoer account does not have a password. Only authorized SSH keys. Fuck.

The solution was to use the JavaScript devtools to automate typing the ssh key into the console and ssh to localhost as the regular user. The script was suggested by someone on DigitalOcean’s support site. I had to modify it a little to work with newlines. However, mistakes were introduced: some letters ended up as lowercase instead of uppercase or vice versa. After getting in as a sudoer, I was able to set up networking.

The actual problem? bsd-cloudinit didn’t work because a symlink in /etc/rc.digitalocean.d was broken, and as a result, the network settings were not set.

I’d say that the actual actual problem is the use of cloud-init stuff instead of, you know, DHCP/SLAAC.