My last VPS provider got bought out, so I figured now would be a good time to buy a more respectable (i.e. not found on lowendstock) server, which also gives me the opportunity to experiment with OpenBSD.
As expected, almost everything has gone smoothly. However, there have been a couple of pain points, which I'll document here for future me and any lucky Googlers.
If you copy and paste a working config from a Linux server, the clients can all ping the server, but you get an error like "No route to host" when you try it the other way around. This turned out to be a pf one-liner:
pass out on tun0 to 10.0.0.0/8
(where tun0 is my VPN's interface and 10.0.0.0/8 is my VPN's subnet)
There isn't a luarocks port yet, and building can be slightly annoying. It goes like this:
./configure --sysconfdir=/etc/luarocks \ --lua-version=5.1 \ --lua-suffix=51 \ --with-lua-include=/usr/local/include/lua-5.1 make build make install
The configure lines for 5.2 and 5.3 look like you would expect. The
install step creates a symlink from
luarocks-5.x so if
you are lazy like me you should correct that to point at your favourite
The latest stable release doesn't work with Lua 5.3, and for some reason
the lua-ev rock doesn't look in
/usr/local/include. We can fix the
former by installing the scm version, and the latter with CFLAGS:
luarocks install \ https://luarocks.org/manifests/brimworks/lua-ev-scm-1.rockspec \ CFLAGS=-I/usr/local/include