GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Matrix Synapse Chat su Ubuntu 20.04 LTS

Matrix è un nuovo ecosistema per la comunicazione decentralizzata in tempo reale per servizi di messaggistica istantanea e VoIP federati aperti. Fornisce API JSON HTTP RESTful per la creazione di server di chat distribuiti e federati senza un singolo punto di controllo e di errore e fornisce tutti i riferimenti per le API.

Synapse è un'implementazione del server principale di matrice creato da un team di matrice e scritto in Python/Twisted. Con questo software, possiamo implementare la modalità matrice per la comunicazione decentralizzata, possiamo creare il nostro server domestico e memorizzare tutte le informazioni personali degli utenti, la cronologia delle chat, creare la stanza per uso personale, ecc.

In questo tutorial, ti mostreremo come installare e configurare Matrix Synapse su Ubuntu 20.04. Configurare Matrix Synapse con Nginx come proxy inverso e proteggere l'installazione utilizzando l'SSL fornito da Letsencrypt.

Prerequisiti

Per questa guida, installeremo Matrix Synapse sull'ultimo Ubuntu 20.04 con 1 GB di RAM, 25 GB di spazio libero su disco e 2 CPU. Inoltre, devi avere accesso al tuo server con il privilegio di root su di esso.

Cosa faremo?

  • Installa Matrix Synapse
  • Configura sinapsi Matrix
  • Genera SSL Letsencrypt
  • Configura Nginx come proxy inverso
  • Configura Firewall UFW
  • Registra nuovo utente
  • Test

Passaggio 1 - Installa Matrix Synapse

Innanzitutto, installeremo Matrix Synapse sull'ultimo server Ubuntu 20.04. Per farlo, dobbiamo aggiungere la chiave GPG e il repository ufficiale di Matrix Synapse.

Prima di andare oltre, installa alcune dipendenze dei pacchetti usando il comando apt di seguito.

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

Successivamente, aggiungi la chiave GPG e il repository di Matrix Synapse per il sistema basato su 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

Ora aggiorna l'elenco dei repository di tutti i pacchetti e installa i pacchetti Matrix Synapse.

sudo apt update
sudo apt install matrix-synapse-py3

Ora ti verrà richiesta la configurazione del nome di dominio.

Digita il tuo nome di dominio per l'installazione di Matrix Synapse e seleziona 'OK ' per continuare.

Per la "Statistica dei dati anonimi", scegli "No '.

E l'installazione di Matrix Synapse è stata completata.

Quindi, avvia il servizio 'matrix-synapse' e aggiungilo all'avvio del sistema.

systemctl start matrix-synapse
systemctl enable matrix-synapse

Matrix Synapse è attivo e funzionante, controllalo usando il comando seguente.

systemctl status matrix-synapse
ss -plnt

Di seguito è riportato il risultato che otterrai.

Di conseguenza, Matrix Synapse è in esecuzione con la porta TCP predefinita "8008" su Ubuntu 20.04.

Passaggio 2:configurare la sinapsi Matrix

In questo passaggio, configureremo gli "indirizzi di collegamento" per Matrix synapse, disabiliteremo la registrazione sul nostro server e imposteremo il segreto condiviso di registrazione.

Prima di andare oltre, genera il segreto di registrazione di Matrix Synapse usando il comando seguente.

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

Ora otterrai la chiave casuale, copierai la chiave e la salverai sulla tua nota.

GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f

Quindi, vai alla directory '/etc/matrix-synapse' e modifica la configurazione 'homeserver.yaml' usando l'editor vim.

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

Passa alla sezione "ascoltatori" e modifica il valore "indirizzi-bind" con l'indirizzo IP locale come di seguito.

listeners:

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

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

Ora disabilita Matrix Synapse se stai eseguendo il nodo solo per te.

enable_registration: false

Cambia il 'registration_shared_secret' con la passphrase casuale generata in alto.

registration_shared_secret: "GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f"

Salva e chiudi.

Quindi, riavvia il servizio Matrix Synapse per applicare la nuova configurazione.

systemctl restart matrix-synapse

Verifica il servizio utilizzando il comando seguente.

ss -plnt
systemctl status matrix-synapse

Di seguito è riportato il risultato che otterrai.

Di conseguenza, il servizio Matrix Synapse è attivo e funzionante con una nuova configurazione.

Fase 3:genera SSL Letsencrypt

In questo passaggio, genereremo SSL Letsencrypt utilizzando lo strumento certbot. Matrix Synapse verrà eseguito sotto la connessione HTTPS sicura utilizzando i certificati SSL forniti da Letsencrypt.

Installa lo strumento certbot utilizzando il comando apt di seguito.

sudo apt install certbot -y

Successivamente, genera un nuovo certificato SSL utilizzando il comando certbot di seguito e assicurati di modificare l'indirizzo e-mail e il nome di dominio con il tuo.

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

Una volta completato tutto, i tuoi certificati SSL saranno disponibili nella directory '/etc/letsencrypt/live/domain.com/'.

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

'fullchain.pem' è la chiave pubblica e 'privkey.pem' è la chiave privata.

Fase 4 - Imposta Nginx come proxy inverso

Per questo tutorial, eseguiremo Matrix Synapse sotto il proxy Nginx Reverse. E per questo passaggio, installeremo i pacchetti Nginx e lo configureremo come proxy inverso.

Il server Web Nginx funzionerà su 3 porte, la porta HTTP predefinita "80", la porta HTTPS sicura "443" e la porta TCP "8448" che verrà utilizzata per la federazione Matrix Synapse.

Installa i pacchetti Nginx usando il comando apt di seguito.

sudo apt install nginx -y

Una volta completata l'installazione, vai alla directory '/etc/nginx/sites-available' e crea una nuova configurazione di virtualhost denominata 'matrix' usando l'editor vim.

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

Modifica il nome di dominio e il percorso dei certificati SSL con il tuo, quindi incollaci la configurazione.

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

Salva e chiudi.

Quindi, attiva l'host virtuale "matrix" e testa la configurazione di Nginx. Inoltre, assicurati che non ci siano errori.

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

Ora riavvia il servizio Nginx e aggiungilo all'avvio del sistema.

systemctl restart nginx
systemctl enable nginx

Successivamente, controlla il servizio Nginx usando il comando seguente.

ss -plnt
systemctl status nginx

Di seguito è riportato il risultato che otterrai.

Di conseguenza, il servizio Nginx è attivo e funzionante su Ubuntu 20.04 con tre porte diverse, la porta HTTP predefinita 80 che verrà automaticamente reindirizzata alla porta HTTPS sicura e la porta '8448' che verrà utilizzata per Matrix Synapse Federation.

Fase 5 - Firewall UFW

Per questo tutorial, eseguiremo Matrix Synapse su Ubuntu 20.04 con il firewall UFW abilitato.

Aggiungi ssh, http, https e la porta TCP '8448' al firewall UFW utilizzando il comando seguente.

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

Successivamente, esegui e abilita il firewall UFW.

ufw enable

Digita 'y ' per confermare che il firewall UFW sia attivo e funzionante, controlla tutte le regole disponibili sul firewall UFW utilizzando il comando seguente.

ufw status numbered

Di seguito è riportato il risultato che otterrai.

Di conseguenza, la configurazione del firewall UFW è stata completata.

Fase 6 - Registra utente

A questo punto, l'installazione e la configurazione del server principale di Matrix Synapse sono complete. E in questo passaggio, ti mostreremo come aggiungere un nuovo utente matrice dal server della riga di comando.

Per creare un nuovo utente matrice, esegui il comando seguente.

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

Ora digita il nome utente e la password per il tuo utente, per rendere l'utente un amministratore, digita 'yes'.

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

Di conseguenza, è stato creato il nuovo utente Matrix.

Fase 7 - Test

Per questo passaggio, testeremo l'installazione del nostro server Matrix Synapse.

- Test della federazione delle sinapsi della matrice

Vai all'URL di Matrix Synapse Federation Tester di seguito.

https://federationtester.matrix.org/

Ora digita il tuo nome di dominio Matrix Synapse e fai clic su 'Vai ' e otterrai il risultato positivo come di seguito.

Come si può vedere, la Matrix Synapse Federation sta lavorando attraverso la porta '8448'.

- Login Matrix di prova con utente e password

Vai al client Matrix basato sul Web chiamato "riot.im" come URL di seguito.

https://riot.im/app/

Fai clic su "Accedi ' e puoi utilizzare il tuo server Matrix Synapse personalizzato.

Digita il tuo nome di dominio e fai clic su 'Avanti '.

Ora digita il tuo nome utente e password, quindi fai clic su 'Accedi pulsante '.

Ti verranno poste ulteriori domande di sicurezza.

Una volta effettuato l'accesso, otterrai la seguente pagina.

Di conseguenza, l'installazione di Matrix Synapse con il proxy inverso Nginx e la federazione abilitati su Ubuntu 20.04 è stata completata con successo.


Ubuntu
  1. Come installare Docker su Ubuntu 22.04 / 20.04 LTS

  2. Come installare PlayOnLinux su Ubuntu 20.04 LTS

  3. Come installare MariaDB in Ubuntu 20.04 LTS

  4. Come installare Ansible su Ubuntu 20.04 LTS / 21.04

  5. Come installare Minikube su Ubuntu 20.04 LTS / 21.04

Come installare Rocket.Chat su Ubuntu 16.04 LTS

Come installare Vai su Ubuntu 18.04 LTS

Come installare Vai su Ubuntu 20.04 LTS

Come installare Rocket.Chat su Ubuntu 20.04 LTS

Come o Installare Zulip Chat Server su Ubuntu 20.04 LTS

Come installare Matrix Synapse su Ubuntu 20.04