GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Matrix Synapse Chat unter Ubuntu 20.04 LTS

Matrix ist ein neues Ökosystem für die dezentrale Kommunikation in Echtzeit für offene föderierte Instant Messaging- und VoIP-Dienste. Es bietet RESTful-HTTP-JSON-APIs zum Erstellen verteilter und föderierter Chat-Server ohne Single Point of Control und Fehler und stellt alle Referenzen für die APIs bereit.

Synapse ist eine Implementierung des Matrix-Heimservers, die von einem Matrix-Team erstellt und in Python/Twisted geschrieben wurde. Mit dieser Software können wir den Matrix-Weg für die dezentrale Kommunikation implementieren, wir können unseren Heimserver erstellen und alle persönlichen Benutzerinformationen, den Chat-Verlauf speichern, den Raum für den eigenen Gebrauch erstellen usw.

In diesem Tutorial zeigen wir Ihnen, wie Sie Matrix Synapse unter Ubuntu 20.04 installieren und konfigurieren. Wir richten die Matrix Synapse mit Nginx als Reverse-Proxy ein und sichern die Installation mit dem von Letsencrypt bereitgestellten SSL.

Voraussetzungen

Für diese Anleitung installieren wir Matrix Synapse auf dem neuesten Ubuntu 20.04 mit 1 GB RAM, 25 GB freiem Speicherplatz und 2 CPUs. Außerdem müssen Sie mit Root-Rechten Zugriff auf Ihren Server haben.

Was werden wir tun?

  • Installieren Sie Matrix Synapse
  • Matrix Synapse konfigurieren
  • SSL Letsencrypt generieren
  • Nginx als Reverse-Proxy einrichten
  • UFW-Firewall einrichten
  • Neuen Benutzer registrieren
  • Testen

Schritt 1 - Installieren Sie Matrix Synapse

Zuerst werden wir Matrix Synapse auf dem neuesten Ubuntu 20.04 Server installieren. Dazu müssen wir den GPG-Schlüssel und das offizielle Repository von Matrix Synapse hinzufügen.

Bevor Sie fortfahren, installieren Sie einige Paketabhängigkeiten mit dem folgenden apt-Befehl.

sudo apt install -y lsb-release wget apt-transport-https

Fügen Sie danach den GPG-Schlüssel und das Repository von Matrix Synapse für das Debian/Ubuntu-basierte System hinzu.

sudo wget -qO /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" |
    sudo tee /etc/apt/sources.list.d/matrix-org.list

Aktualisieren Sie nun die Repository-Liste aller Pakete und installieren Sie Matrix Synapse-Pakete.

sudo apt update
sudo apt install matrix-synapse-py3

Nun werden Sie nach der Konfiguration des Domainnamens gefragt.

Geben Sie Ihren Domänennamen für die Installation von Matrix Synapse ein und wählen Sie „OK“. ' um fortzufahren.

Wählen Sie für die 'Anonyme Datenstatistik' 'Nein '.

Und die Installation von Matrix Synapse ist abgeschlossen.

Starten Sie als Nächstes den Dienst „matrix-synapse“ und fügen Sie ihn zum Systemstart hinzu.

systemctl start matrix-synapse
systemctl enable matrix-synapse

Die Matrix Synapse ist betriebsbereit, überprüfen Sie sie mit dem folgenden Befehl.

systemctl status matrix-synapse
ss -plnt

Unten sehen Sie das Ergebnis, das Sie erhalten.

Infolgedessen läuft Matrix Synapse mit dem Standard-TCP-Port „8008“ auf Ubuntu 20.04.

Schritt 2 - Matrix Synapse konfigurieren

In diesem Schritt konfigurieren wir die „Bind-Adressen“ für Matrix Synapse, deaktivieren die Registrierung auf unserem Server und richten das gemeinsame Geheimnis für die Registrierung ein.

Bevor Sie fortfahren, generieren Sie das Registrierungsgeheimnis von Matrix Synapse mit dem folgenden Befehl.

cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1

Jetzt erhalten Sie den Zufallsschlüssel, kopieren den Schlüssel und speichern ihn in Ihrer Notiz.

GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f

Gehen Sie als Nächstes in das Verzeichnis „/etc/matrix-synapse“ und bearbeiten Sie die Konfiguration „homeserver.yaml“ mit dem vim-Editor.

cd /etc/matrix-synapse/
vim homeserver.yaml

Wechseln Sie zum Abschnitt „Listeners“ und ändern Sie den Wert „bind-addresses“ mit der lokalen IP-Adresse wie unten beschrieben.

listeners:

  - port: 8008
    tls: false
    type: http
    x_forwarded: true
    bind_addresses: ['127.0.0.1']

    resources:
      - names: [client, federation]
        compress: false

Deaktivieren Sie jetzt die Matrix-Synapse, wenn Sie den Knoten nur für Sie ausführen.

enable_registration: false

Ändern Sie das 'registration_shared_secret' mit der oben generierten zufälligen Passphrase.

registration_shared_secret: "GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f"

Speichern und schließen.

Starten Sie als Nächstes den Matrix Synapse-Dienst neu, um die neue Konfiguration zu übernehmen.

systemctl restart matrix-synapse

Überprüfen Sie den Dienst mit dem folgenden Befehl.

ss -plnt
systemctl status matrix-synapse

Unten sehen Sie das Ergebnis, das Sie erhalten.

Infolgedessen ist der Matrix Synapse-Dienst mit einer neuen Konfiguration betriebsbereit.

Schritt 3 - Generieren Sie SSL Letsencrypt

In diesem Schritt generieren wir das SSL Letsencrypt mit dem certbot-Tool. Die Matrix Synapse wird unter der sicheren HTTPS-Verbindung mit den von Letsencrypt bereitgestellten SSL-Zertifikaten ausgeführt.

Installieren Sie das certbot-Tool mit dem folgenden apt-Befehl.

sudo apt install certbot -y

Generieren Sie danach mit dem Befehl certbot unten ein neues SSL-Zertifikat und stellen Sie sicher, dass Sie die E-Mail-Adresse und den Domänennamen durch Ihre eigenen ersetzen.

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email [email protected] -d hakase-labs.io

Sobald alles abgeschlossen ist, sind Ihre SSL-Zertifikate im Verzeichnis „/etc/letsencrypt/live/domain.com/“ verfügbar.

ls -lah /etc/letsencrypt/live/domain.com/

Die 'fullchain.pem' ist der öffentliche Schlüssel und die 'privkey.pem' ist der private Schlüssel.

Schritt 4 – Richten Sie Nginx als Reverse-Proxy ein

Für dieses Tutorial führen wir Matrix Synapse unter dem Nginx Reverse-Proxy aus. Und für diesen Schritt werden wir Nginx-Pakete installieren und als Reverse Proxy einrichten.

Der Nginx-Webserver wird auf 3 Ports ausgeführt, dem Standard-HTTP-Port „80“, dem sicheren HTTPS-Port „443“ und dem TCP-Port „8448“, der für den Matrix-Synapse-Verbund verwendet wird.

Installieren Sie Nginx-Pakete mit dem folgenden apt-Befehl.

sudo apt install nginx -y

Sobald die gesamte Installation abgeschlossen ist, gehen Sie in das Verzeichnis „/etc/nginx/sites-available“ und erstellen Sie mit dem vim-Editor eine neue Virtualhost-Konfiguration mit dem Namen „matrix“.

cd /etc/nginx/sites-available/
vim matrix

Ändern Sie den Domänennamen und den Pfad des SSL-Zertifikats mit Ihrem eigenen, und fügen Sie die Konfiguration darin ein.

server {
    listen 80;
    server_name hakase-labs.io;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name hakase-labs.io;

    ssl_certificate /etc/letsencrypt/live/hakase-labs.io/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/hakase-labs.io/privkey.pem;

    location /_matrix {
        proxy_pass http://localhost:8008;
        proxy_set_header X-Forwarded-For $remote_addr;
        # Nginx by default only allows file uploads up to 1M in size
        # Increase client_max_body_size to match max_upload_size defined in homeserver.yaml
        client_max_body_size 10M;
    }
}

# This is used for Matrix Federation
# which is using default TCP port '8448'
server {
    listen 8448 ssl;
    server_name hakase-labs.io;

    ssl_certificate /etc/letsencrypt/live/hakase-labs.io/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/hakase-labs.io/privkey.pem;

    location / {
        proxy_pass http://localhost:8008;
        proxy_set_header X-Forwarded-For $remote_addr;
    }
}

Speichern und schließen.

Aktivieren Sie als Nächstes den virtuellen Host „Matrix“ und testen Sie die Nginx-Konfiguration. Stellen Sie außerdem sicher, dass kein Fehler vorliegt.

ln -s /etc/nginx/sites-available/matrix /etc/nginx/sites-enabled/
nginx -t

Starten Sie nun den Nginx-Dienst neu und fügen Sie ihn zum Systemstart hinzu.

systemctl restart nginx
systemctl enable nginx

Überprüfen Sie danach den Nginx-Dienst mit dem folgenden Befehl.

ss -plnt
systemctl status nginx

Unten sehen Sie das Ergebnis, das Sie erhalten.

Infolgedessen läuft der Nginx-Dienst auf Ubuntu 20.04 mit drei verschiedenen Ports, dem Standard-HTTP-Port 80, der automatisch auf den sicheren HTTPS-Port umgeleitet wird, und Port „8448“, der für Matrix Synapse Federation verwendet wird.

Schritt 5 – UFW-Firewall

Für dieses Tutorial führen wir Matrix Synapse auf Ubuntu 20.04 mit aktivierter UFW-Firewall aus.

Fügen Sie ssh, http, https und den TCP-Port „8448“ mit dem folgenden Befehl zur UFW-Firewall hinzu.

for svc in ssh http https 8448
do
ufw allow $svc
done

Führen Sie danach die UFW-Firewall aus und aktivieren Sie sie.

ufw enable

Geben Sie 'y ein ' Um zu bestätigen, dass die UFW-Firewall betriebsbereit ist, überprüfen Sie alle verfügbaren Regeln auf der UFW-Firewall mit dem folgenden Befehl.

ufw status numbered

Unten sehen Sie das Ergebnis, das Sie erhalten.

Als Ergebnis ist die Konfiguration der UFW-Firewall abgeschlossen.

Schritt 6 - Benutzer registrieren

Damit ist die Installation und Konfiguration des Matrix Synapse Home Servers abgeschlossen. Und in diesem Schritt zeigen wir Ihnen, wie Sie einen neuen Matrix-Benutzer vom Befehlszeilenserver hinzufügen.

Führen Sie den folgenden Befehl aus, um einen neuen Matrixbenutzer zu erstellen.

sudo register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml http://localhost:8008

Geben Sie nun den Benutzernamen und das Passwort für Ihren Benutzer ein, um den Benutzer zum Administrator zu machen, geben Sie „Ja“ ein.

New user localpart [root]: changbin
Password:
Confirm password:
Make admin [no]:
Sending registration request...
Success!

Als Ergebnis wurde der neue Matrix-Benutzer erstellt.

Schritt 7 – Testen

Für diesen Schritt testen wir unsere Matrix Synapse-Serverinstallation.

- Testen von Matrix Synapse Federation

Rufen Sie unten die Matrix Synapse Federation Tester-URL auf.

https://federationtester.matrix.org/

Geben Sie nun Ihren Matrix-Synapse-Domainnamen ein und klicken Sie auf „Los“. ', und Sie erhalten das erfolgreiche Ergebnis wie unten.

Wie man sieht, arbeitet die Matrix Synapse Federation über den Port '8448'.

- Test Matrix Login mit Benutzer und Passwort

Rufen Sie den webbasierten Matrix-Client namens „riot.im“ als URL unten auf.

https://riot.im/app/

Klicken Sie auf „Anmelden“. ' und Sie können Ihren benutzerdefinierten Matrix Synapse-Server verwenden.

Geben Sie Ihren Domainnamen ein und klicken Sie auf "Weiter". '.

Geben Sie nun Ihren Benutzernamen und Ihr Passwort ein und klicken Sie dann auf „Anmelden“. ' Schaltfläche.

Sie werden nach zusätzlichen Sicherheitsfragen gefragt.

Sobald Sie sich angemeldet haben, erhalten Sie die folgende Seite.

Als Ergebnis wurde die Installation von Matrix Synapse mit aktiviertem Nginx-Reverse-Proxy und Federation auf Ubuntu 20.04 erfolgreich abgeschlossen.


Ubuntu
  1. So installieren Sie Docker unter Ubuntu 22.04 / 20.04 LTS

  2. So installieren Sie PlayOnLinux auf Ubuntu 20.04 LTS

  3. So installieren Sie MariaDB in Ubuntu 20.04 LTS

  4. So installieren Sie Ansible unter Ubuntu 20.04 LTS / 21.04

  5. So installieren Sie Minikube unter Ubuntu 20.04 LTS / 21.04

So installieren Sie Rocket.Chat auf Ubuntu 16.04 LTS

So installieren Sie Go unter Ubuntu 18.04 LTS

So installieren Sie Go unter Ubuntu 20.04 LTS

So installieren Sie Rocket.Chat auf Ubuntu 20.04 LTS

So installieren Sie Zulip Chat Server auf Ubuntu 20.04 LTS

So installieren Sie Matrix Synapse unter Ubuntu 20.04