GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Matrix Synapse Chat na Ubuntu 20.04 LTS

Matrix je nový ekosystém pro decentralizovanou komunikaci v reálném čase pro otevřené federované instant messaging a služby VoIP. Poskytuje RESTful HTTP JSON API pro vytváření distribuovaných a federovaných chatových serverů bez jediného bodu kontroly a selhání a poskytuje všechny reference pro API.

Synapse je implementace maticového domovského serveru, který je vytvořen maticovým týmem a je napsán v Pythonu/Twisted. S tímto softwarem můžeme implementovat maticový způsob pro decentralizovanou komunikaci, můžeme vytvořit náš domácí server a ukládat všechny osobní údaje uživatele, historii chatu, vytvořit místnost pro vlastní použití atd.

V tomto tutoriálu vám ukážeme, jak nainstalovat a nakonfigurovat Matrix Synapse na Ubuntu 20.04. Nastavíme Matrix Synapse s Nginx jako reverzní proxy a zabezpečíme instalaci pomocí SSL poskytovaného Letsencrypt.

Předpoklady

Pro tuto příručku nainstalujeme Matrix Synapse na nejnovější Ubuntu 20.04 s 1 GB RAM, 25 GB volného místa na disku a 2 CPU. Také musíte mít přístup ke svému serveru s oprávněním root.

Co budeme dělat?

  • Nainstalujte Matrix Synapse
  • Konfigurace Matrix Synapse
  • Vygenerujte SSL Letsencrypt
  • Nastavte Nginx jako reverzní proxy
  • Nastavte UFW Firewall
  • Zaregistrovat nového uživatele
  • Testování

Krok 1 – Instalace Matrix Synapse

Nejprve nainstalujeme Matrix Synapse na nejnovější server Ubuntu 20.04. K tomu potřebujeme přidat klíč GPG a oficiální úložiště Matrix Synapse.

Než budete pokračovat, nainstalujte některé závislosti balíčků pomocí příkazu apt níže.

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

Poté přidejte klíč GPG a úložiště Matrix Synapse pro systém založený na Debian/Ubuntu.

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

Nyní aktualizujte seznam všech úložišť balíčků a nainstalujte balíčky Matrix Synapse.

sudo apt update
sudo apt install matrix-synapse-py3

Nyní budete požádáni o konfiguraci názvu domény.

Zadejte název své domény pro instalaci Matrix Synapse a vyberte 'OK ' pokračovat.

Pro „Statistika anonymních dat“ vyberte „Ne '.

A instalace Matrix Synapse byla dokončena.

Dále spusťte službu 'matrix-synapse' a přidejte ji do spouštění systému.

systemctl start matrix-synapse
systemctl enable matrix-synapse

Matrix Synapse je v provozu, zkontrolujte to pomocí následujícího příkazu.

systemctl status matrix-synapse
ss -plnt

Níže je výsledek, který dostanete.

Výsledkem je, že Matrix Synapse běží s výchozím TCP portem '8008' na Ubuntu 20.04.

Krok 2 – Konfigurace Matrix Synapse

V tomto kroku nakonfigurujeme 'bind-addresses' pro Matrix synapse, zakážeme registraci na našem serveru a nastavíme sdílené tajemství registrace.

Než budete pokračovat, vygenerujte registrační tajemství Matrix Synapse pomocí následujícího příkazu.

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

Nyní získáte náhodný klíč, zkopírujete jej a uložíte si jej do poznámky.

GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f

Dále přejděte do adresáře '/etc/matrix-synapse' a upravte konfiguraci 'homeserver.yaml' pomocí editoru vim.

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

Přejděte do sekce 'listeners' a změňte hodnotu 'bind-addresses' na místní IP adresu, jak je uvedeno níže.

listeners:

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

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

Nyní deaktivujte Matrix Synapse, pokud uzel provozujete pouze pro vás.

enable_registration: false

Změňte 'registration_shared_secret' náhodnou přístupovou frází vygenerovanou nahoře.

registration_shared_secret: "GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f"

Uložit a zavřít.

Poté restartujte službu Matrix Synapse, abyste použili novou konfiguraci.

systemctl restart matrix-synapse

Zkontrolujte službu pomocí následujícího příkazu.

ss -plnt
systemctl status matrix-synapse

Níže je výsledek, který dostanete.

V důsledku toho je služba Matrix Synapse spuštěna a spuštěna s novou konfigurací.

Krok 3 – Vygenerování SSL Letsencrypt

V tomto kroku vygenerujeme SSL Letsencrypt pomocí nástroje certbot. Matrix Synapse bude spuštěna pod zabezpečeným připojením HTTPS pomocí certifikátů SSL poskytovaných Letsencrypt.

Nainstalujte nástroj certbot pomocí příkazu apt níže.

sudo apt install certbot -y

Poté vygenerujte nový certifikát SSL pomocí příkazu certbot níže a nezapomeňte změnit e-mailovou adresu a název domény za vlastní.

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

Jakmile bude vše dokončeno, vaše certifikáty SSL budou dostupné v adresáři '/etc/letsencrypt/live/domain.com/'.

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

'fullchain.pem' je veřejný klíč a 'privkey.pem' je soukromý klíč.

Krok 4 – Nastavení Nginx jako reverzního proxy

V tomto tutoriálu spustíme Matrix Synapse pod proxy serverem Nginx Reverse. A pro tento krok nainstalujeme balíčky Nginx a nastavíme jej jako Reverse Proxy.

Webový server Nginx poběží na 3 portech, výchozím portu HTTP '80', zabezpečeném portu HTTPS '443' a TCP portu '8448', které budou použity pro federaci Matrix Synapse.

Nainstalujte balíčky Nginx pomocí příkazu apt níže.

sudo apt install nginx -y

Po dokončení instalace přejděte do adresáře '/etc/nginx/sites-available' a pomocí editoru vim vytvořte novou konfiguraci virtuálního hostitele pojmenovanou jako 'matrix'.

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

Změňte název domény a cestu k certifikátům SSL za vlastní a vložte do něj konfiguraci.

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;
    }
}

Uložit a zavřít.

Dále aktivujte 'maticový' virtualhost a otestujte konfiguraci Nginx. Také se ujistěte, že nedošlo k chybě.

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

Nyní restartujte službu Nginx a přidejte ji do spouštění systému.

systemctl restart nginx
systemctl enable nginx

Poté zkontrolujte službu Nginx pomocí příkazu níže.

ss -plnt
systemctl status nginx

Níže je výsledek, který dostanete.

Výsledkem je, že služba Nginx běží na Ubuntu 20.04 se třemi různými porty, výchozím portem HTTP 80, který bude automaticky přesměrován na zabezpečený port HTTPS, a portem „8448“, který bude použit pro federaci Matrix Synapse.

Krok 5 – UFW Firewall

V tomto tutoriálu spustíme Matrix Synapse na Ubuntu 20.04 s povoleným firewallem UFW.

Přidejte ssh, http, https a port TCP '8448' do brány firewall UFW pomocí příkazu níže.

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

Poté spusťte a povolte UFW firewall.

ufw enable

Zadejte „y Chcete-li potvrdit, že UFW firewall je spuštěn a běží, zkontrolujte všechna dostupná pravidla na UFW firewallu pomocí příkazu níže.

ufw status numbered

Níže je výsledek, který dostanete.

V důsledku toho byla konfigurace brány firewall UFW dokončena.

Krok 6 – Registrace uživatele

V této fázi je instalace a konfigurace domovského serveru matrix synapse dokončena. A v tomto kroku vám ukážeme, jak přidat nového maticového uživatele ze serveru příkazového řádku.

Chcete-li vytvořit nového uživatele matice, spusťte níže uvedený příkaz.

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

Nyní zadejte uživatelské jméno a heslo pro svého uživatele, aby se uživatel stal správcem, zadejte „ano“.

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

V důsledku toho byl vytvořen nový uživatel Matrix.

Krok 7 – Testování

V tomto kroku otestujeme instalaci našeho serveru Matrix Synapse.

- Testování Matrix Synapse Federation

Přejděte na níže uvedenou adresu URL testeru federace Matrix Synapse.

https://federationtester.matrix.org/

Nyní zadejte název své domény Matrix Synapse a klikněte na 'Go ' a získáte úspěšný výsledek, jak je uvedeno níže.

Jak je vidět, Matrix Synapse Federation pracuje přes port '8448'.

- Testovací maticové přihlášení pomocí uživatele a hesla

Přejděte na webového klienta Matrix s názvem 'riot.im' jako URL níže.

https://riot.im/app/

Klikněte na tlačítko Přihlásit se ' a můžete použít svůj vlastní server Matrix Synapse.

Zadejte název své domény a klikněte na tlačítko Další '.

Nyní zadejte své uživatelské jméno a heslo a klikněte na tlačítko Přihlásit se '.

Budete požádáni o další bezpečnostní otázky.

Jakmile se přihlásíte, dostanete následující stránku.

V důsledku toho byla instalace Matrix Synapse s reverzním proxy serverem Nginx a povolenou federací na Ubuntu 20.04 úspěšně dokončena.


Ubuntu
  1. Jak nainstalovat Docker na Ubuntu 22.04 / 20.04 LTS

  2. Jak nainstalovat PlayOnLinux na Ubuntu 20.04 LTS

  3. Jak nainstalovat MariaDB v Ubuntu 20.04 LTS

  1. Jak nainstalovat Ansible na Ubuntu 20.04 LTS / 21.04

  2. Jak nainstalovat Minikube na Ubuntu 20.04 LTS / 21.04

  3. Jak nainstalovat Matrix Synapse Chat na Ubuntu 18.04 LTS

  1. Jak nainstalovat Spotify na Ubuntu 18.04 LTS

  2. Jak nainstalovat Prometheus na Ubuntu 18.04 LTS

  3. Jak nainstalovat Memcached na Ubuntu 18.04 LTS