Creating a read-only user in PostgreSQL

First you need to create a ‘role’ (i.e. a user). You possibly also want the password to never expire: CREATE ROLE averagejoe LOGIN ENCRYPTED PASSWORD ‘***’ NOINHERIT VALID UNTIL ‘infinity’; Now grant this role access to the selected database: GRANT CONNECT ON DATABASE cooldb TO averagejoe; Now connect to said database: \c cooldb Allow SELECT […]

Administering Microsoft Teams via PowerShell

Installation You need the built-in PowerShell, version 5, because PowerShell Core, a.k.a. PowerShell 6, doesn’t work yet. If in doubt, check the version with: $PSVersionTable.PSVersion You need to install a bunch of stuff: Visual C++ 2017 x64 Redistributable Microsoft Online Services Sign-In Assistant for IT Professionals RTW Skype for Business Online Windows PowerShell Module Then […]

Migrating Redmine from system Ruby to RVM on CentOS

Redmine 4 is knocking on the door, and it’s going to drop support for anything below 2.2.2. Unfortunately, EL 7 only has 2.0.0, so you either wait until EL 8 releases and hope it comes with 2.2.2+, or you migrate from the packaged Ruby to something else. I’m picking RVM, because reasons. If you use […]

Migrating from Tumblr to WordPress on VPS

Preface I’ve had enough with Tumblr. It’s been randomly messing up with <, >, & characters in the Markdown editor. And by that I mean it removed a random subset of content between, before, or after those characters. Or replaced the characters with something else. Or whatever. Then it randomly removed the closing / character […]

Installing Nginx on CentOS 7 with Let’s Encrypt HTTPS certificates

First off, you need a CentOS instance. If you want to go the VPS route, I recommend Vultr. If you don’t have an account yet, I’d really appreciate if you could use my affiliate link when signing up 🙂 Once done, you also need an SSL certificate. Then you can use my script to do […]

Free Wildcard Certificates using Cloudflare, Let’s Encrypt and

Preface I already covered Azure DNS, it’s time to cover Cloudflare, too. If you haven’t done so yet, sign up to Cloudflare (it’s free), and move your domain name to Cloudflare. Note: Cloudflare can (and in fact does, by default) proxy your website and generate SSL certificates for you automatically (which you can disable by […]

MariaDB fails to start after snapshot restore on Vultr

I had to restore from snapshot, because JetPack messed up my WordPress installation. Unfortunately, after the restore my website looked like this: Error establishing a database connection Gee, that’s nice. What’s up with the DB engine? [[email protected] ~]# systemctl status mariadb.service â—Ź mariadb.service – MariaDB 10.3.9 database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled) […]

Dedicated Killing Floor 2 Server on Linux v2

BIG FAT WARNING This tutorial is deprecated. Please use the revised guide. This one is only here for historical reference. Prelude This article will guide you through setting up a proper KF2 server on Linux (CentOS) step-by-step. What we’re going to do here is: fire up a CentOS server with firewall, Security-Enhanced Linux and hardened […]

CentOS 7 done right on Vultr

Preamble After doing this for Linode, it’s time to also do Vultr. If you follow me, you already know that Vultr is one of my 3 favorite VPS providers. The great thing about Vultr is that it also allows for custom ISOs, so you can have fancy things like a Btrfs root filesystem, which in […]