QuasselCore on Debian 11
date: 2022-02-13
Introduction
After discovering how amazing wireguard vpn is on Android, I decided to move my quasselcore server off of Ramnode, where I was securing it with LetsEncrypt Certs, and instead run it on a double-natted kvm host on my home server where I could give it more ram and cpu, and back up the entire vm image to my backup-backup server using syncoid and zfs snapshots.
But there are a few little niggles, so I am writing it down.
Install Packages
apt install postgresql postgresql-contrib quasselcore libqt5sql5-psql apparmor-utils
stop quasselcore
systemctl stop quasselcore
allow quasselcore in apparmor
so quasselcore user can read it's own configuration directory
aa-complain /usr/bin/quasselcore
systemctl restart apparmor
postgresql socket connection
If you want to use Postgresql socket connection because
why wouldn't you, allow md5 authentication in pg_hba.conf
# /etc/postgresql/13/main/pg_hba.conf
local quassel quassel md5
systemctl restart postgresql
Copy the Postgresql Database
dump database on old/previous server
pg_dump -d quassel -f quasseldb.sql
create database on new server
postgres# CREATE USER quassel;
postgres# \password quassel
postgres# CREATE DATABASE quassel WITH OWNER quassel;
import database on new server
psql -d quassel -f quasseldb.sql
Configure QuasselCore
sudo quasselcore --configdir=/var/lib/quassel --select-backend=Postgresql
/var/run/postgresql if
you want to use unix-socket.
Before starting quasselcore, make sure that all the files in /var/lib/quassel
are owned by quasselcore:quassel, and they might not be.
For other quasselcore options you can type quasselcore -h, but I chose to
use ufw to restrict the client port to the wireguard interface.
ufw allow in on wg1 to any port 4242
Connect
To connect to your new quasselcore, open quassel client or quasseldroid
and simply change the host name.