ChatMatrix
From FlowerHouseWiki
IP: | 192.168.88.19 |
---|---|
MAC: | BE:B1:89:38:28:44 |
Domain: | chat.flowerhouse.at |
OS: | Debian Bullseye |
---|---|
RAM: | 4096MB |
Cores: | 2 |
Privileged: | No |
The ChatMatrix-LXC is reachable under 192.168.88.19
which is located in the ServerVLAN.
The subdomain is chat.flowerhouse.at which is handled by the ReverseProxy.
Basic Setup
Installation
Install required packages
apt install -y lsb-release wget apt-transport-https
Add repository
wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/matrix-org.list
apt update
Install matrix-synapse
apt install matrix-synapse-py3
Check status
systemctl status matrix-synapse
Postgres database
Install required packages
apt install libpq5 postgresql
Open Postgres console
su - postgres
Create user for matrix-synapse
createuser --pwprompt synapse_user
Create database for matrix-synapse
createdb --encoding=UTF8 --locale=C --template=template0 --owner=synapse_user synapse
Exit Postgres console
exit
Edit matrix-synapse configuration file
nano /etc/matrix-synapse/homeserver.yaml
Edit the database entry
database:
name: psycopg2
args:
user: synapse_user
password: <pass>
database: synapse
host: localhost
cp_min: 5
cp_max: 10
Configuration
Create random key and save it
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1
Edit matrix-synapse configuration file
nano /etc/matrix-synapse/homeserver.yaml
Add following lines
suppress_key_server_warning: true
registration_shared_secret: <SECRET-KEY>
Comment following line to make it accessible from outside localhost
# bind_addresses: ...
Restart matrix-synapse
systemctl restart matrix-synapse
Setting up reverse proxy
Check federation configuration: https://federationtester.matrix.org/
Add User
register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml http://localhost:8008