Introduction

The world is full of messengers and it feels like most people use WhatsApp, Telegram or Signal. These are joined by more community-driven projects such as Discord, Slack or Microsoft Teams. They all have their individual advantages and disadvantages and if you take a look at the usual security sites (kuketz or privacy-manual) you will quickly realize: There isn't THE one messenger that everyone thinks is great and is recommended for use. One is easy to use, the other is highly secure, but not suitable for friends and family.

Why use Matrix?

So we are looking for a service

  • that can be used on desktop and mobile via APP,
  • protects your own data,
  • is distributed (i.e. without centralised dependencies) and encrypted,
  • does not lose all data if the device is lost,
  • can also be operated without a mobile phone number
  • and with its own independent address that can be reached by everyone else worldwide

Matrix](https://matrix.org/) offers all of this.

The exact functionality and the differences to other messenger services or e-mail, I go into detail here

Goals

The aim of these instructions is to operate a Matrix server based on FreeBSD, e.g. with your own FreeBSD server. In order to be able to use Matrix publicly, an OPNsense firewall is required with part 2.

This allows us all to communicate with each other securely and confidently, while maintaining control over our data without our data being commercially exploited. At the same time, we mustn't forget the people who don't have any in-depth IT knowledge and believe that encryption in WhatsApp is cryptographic voodoo magic.

FreeBSD is a free and complete unixoid operating system which can be installed on your own hardware. With field-proven ZFS support, it is the ideal basis for the secure storage of data. Jails can be used to run many services very easily, very lean and very securely, because for FreeBSD it doesn't matter whether one or 100 jails are running at the same time. In addition, there is a full-blown virtualization, which is excellently suited for starting other operating systems under FreeBSD.