Matrix Synapse is an open-source communication protocol for real-time messaging and VoIP services. It is decentralized and allows users to host their own chat servers, making it ideal for secure communication. In this guide, we will walk you through how to install Matrix Synapse Chat on Ubuntu 20.04 LTS. Whether you're using a Windows VPS UK or another VPS hosting service, this setup will help you create a secure communication platform.
Prerequisites
Before starting, ensure you have the following:
- An Ubuntu 20.04 LTS server, which can be hosted on a UK Windows VPS, Windows Virtual Private Server Hosting, or any Windows VPS Hosting UK solution.
- Root or sudo privileges on your server.
- A domain name pointed to your server's IP address.
Step 1: Update Your System
Start by updating your system to ensure all packages are up to date. Run the following commands:
sudo apt update && sudo apt upgrade -y
Step 2: Install Python 3 and Dependencies
Matrix Synapse is written in Python, so you need to install Python 3 and the required dependencies:
sudo apt install -y python3 python3-pip libpq5 libjpeg-dev libxslt1-dev libffi-dev libssl-dev
Step 3: Add the Matrix Synapse Repository
Matrix Synapse is available in an official repository. Add the repository and its GPG key:
sudo apt install -y lsb-release wget apt-transport-https
sudo 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/ focal main" | sudo tee /etc/apt/sources.list.d/matrix-org.list
Step 4: Install Matrix Synapse
Now that the repository is added, install Matrix Synapse:
sudo apt update
sudo apt install matrix-synapse-py3
During the installation, you will be prompted to enter your domain name. Enter the domain name that is pointed to your server's IP address.
Step 5: Configure Matrix Synapse
After the installation, you can find the Matrix Synapse configuration file at /etc/matrix-synapse/homeserver.yaml
. You may want to adjust the configuration based on your preferences. For instance, you can enable registration for new users by editing the following line:
registration_shared_secret: "your_secret_key"
After making any changes, restart the Matrix Synapse service:
sudo systemctl restart matrix-synapse
Step 6: Set Up Reverse Proxy with Nginx (Optional)
If you want to access your Matrix Synapse instance using your domain name with SSL, you can set up a reverse proxy using Nginx. Install Nginx with the following command:
sudo apt install nginx -y
Create a new Nginx configuration file for your domain:
sudo nano /etc/nginx/sites-available/matrix
Add the following configuration, replacing your-domain.com
with your actual domain:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:8008;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Enable the new Nginx configuration and restart the service:
sudo ln -s /etc/nginx/sites-available/matrix /etc/nginx/sites-enabled/
sudo systemctl restart nginx
Step 7: Secure Synapse with Let's Encrypt SSL
To secure your Synapse installation, you can obtain a free SSL certificate from Let's Encrypt using Certbot:
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your-domain.com
Certbot will automatically configure Nginx to use SSL, and your Synapse instance will be accessible over HTTPS.
Step 8: Access Your Synapse Chat Server
Once everything is set up, you can access your Matrix Synapse instance by navigating to https://your-domain.com
in your web browser. You can create new user accounts or invite users to join your server, making it a fully operational chat platform, ideal for secure communication on environments like VPS Windows Servers or Windows Virtual Dedicated Server Hosting.
Conclusion
By following this guide, you have successfully installed and configured Matrix Synapse on Ubuntu 20.04 LTS. Whether you're using a Windows VPS UK or another Windows VPS Hosting UK, Matrix Synapse offers a powerful, decentralized communication platform for secure real-time messaging.