Installazione Server · 15 min read · Nov 01, 2025
Come installare e creare un server di chat utilizzando Matrix Synapse ed Element su Ubuntu 22.04

Matrix è uno standard aperto per la comunicazione decentralizzata e crittografata end-to-end. È una raccolta di server e servizi che comunicano tra loro utilizzando un’API standardizzata che si sincronizza in tempo reale. Utilizza home server per memorizzare le informazioni sugli account e la cronologia delle chat. Se un home server si guasta, altri server possono continuare la comunicazione senza problemi grazie alla natura della decentralizzazione. Puoi utilizzare un home server Matrix ospitato da qualcun altro o ospitare il tuo per mantenere il controllo sui tuoi dati.
In questo tutorial, imparerai come installare e creare un server di chat utilizzando Synapse, un’implementazione di home server di Matrix. Element è un client web Matrix costruito utilizzando Matrix React SDK. Questo ti permetterà di offrire chat Matrix sul web. Puoi anche utilizzare il server con qualsiasi altro client Matrix di tua scelta. Installeremo anche il server Coturn per abilitare le chiamate vocali e video. Il servizio Coturn è facoltativo se non sei interessato a utilizzarlo.
Prerequisiti
- Un server che esegue Ubuntu 22.04.
- Un utente non sudo con privilegi di root.
- Il Firewall non complicato (UFW) è abilitato e in esecuzione.
- Nomi di dominio completamente qualificati (FQDN) per Matrix, Element e Coturn che puntano al tuo server. Utilizzeremo rispettivamente
matrix.example.com,element.example.comecoturn.example.comper i tre servizi. - Assicurati che tutto sia aggiornato.
$ sudo apt update && sudo apt upgrade
Passo 1 - Configurare il Firewall
Prima di installare qualsiasi pacchetto, il primo passo è configurare il firewall per aprire le porte per HTTP, HTTPS e Synapse.
Controlla lo stato del firewall.
$ sudo ufw statusDovresti vedere qualcosa di simile al seguente.
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)Apri le porte HTTP, HTTPS e Synapse nel firewall.
$ sudo ufw allow 8448
$ sudo ufw allow http
$ sudo ufw allow httpsControlla di nuovo lo stato per confermare.
$ sudo ufw status
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
8448 ALLOW Anywhere
80/tcp ALLOW Anywhere
443 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
8448 (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)Passo 2 - Installare Matrix Synapse
Aggiungi la chiave GPG di Matrix.
$ sudo wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpgAggiungi il repository APT di Matrix.
$ 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.listAggiorna l’elenco dei repository di sistema.
$ sudo apt updateInstalla Matrix Synapse.
$ sudo apt install matrix-synapse-py3Durante l’installazione, ti verrà chiesto il nome del server, che fa parte del tuo ID Matrix. Inserisci il tuo nome di dominio Matrix al suo posto. Questo fungerà da indirizzo del tuo homeserver.
Ti verrà anche chiesto se desideri inviare o meno statistiche anonime sul tuo homeserver a Matrix. Digita N per rifiutare.
Puoi modificare queste impostazioni in seguito nel file /etc/matrix-synapse/conf.d/server_name.yaml.
Il servizio Matrix Synapse è abilitato e avviato durante l’installazione. Controlla lo stato del servizio.
$ sudo systemctl status matrix-synapse
? matrix-synapse.service - Synapse Matrix homeserver
Loaded: loaded (/lib/systemd/system/matrix-synapse.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2022-09-26 09:38:38 UTC; 1min 19s ago
Process: 12926 ExecStartPre=/opt/venvs/matrix-synapse/bin/python -m synapse.app.homeserver --config-path=/etc/matrix-synapse/homeserver.yaml --config-path=/etc/matrix-synapse/conf.d/ --generate-key> Main PID: 12931 (python)
Tasks: 8 (limit: 2238)
Memory: 87.3M
CPU: 4.180s
CGroup: /system.slice/matrix-synapse.service
??12931 /opt/venvs/matrix-synapse/bin/python -m synapse.app.homeserver --config-path=/etc/matrix-synapse/homeserver.yaml --config-path=/etc/matrix-synapse/conf.d/
Sep 26 09:38:36 matrix matrix-synapse[12926]: Generating signing key file /etc/matrix-synapse/homeserver.signing.key
Sep 26 09:38:37 matrix matrix-synapse[12931]: This server is configured to use 'matrix.org' as its trusted key server via the
Sep 26 09:38:37 matrix matrix-synapse[12931]: 'trusted_key_servers' config option. 'matrix.org' is a good choice for a key
Sep 26 09:38:37 matrix matrix-synapse[12931]: server since it is long-lived, stable and trusted. However, some admins may
Sep 26 09:38:37 matrix matrix-synapse[12931]: wish to use another server for this purpose.
Sep 26 09:38:37 matrix matrix-synapse[12931]: To suppress this warning and continue using 'matrix.org', admins should set
Sep 26 09:38:37 matrix matrix-synapse[12931]: 'suppress_key_server_warning' to 'true' in homeserver.yaml.
Sep 26 09:38:37 matrix matrix-synapse[12931]: --------------------------------------------------------------------------------
Sep 26 09:38:38 matrix matrix-synapse[12931]: Config is missing macaroon_secret_key
Sep 26 09:38:38 matrix systemd[1]: Started Synapse Matrix homeserver.Passo 3 - Installare e configurare PostgreSQL
Utilizzeremo il repository APT ufficiale di PostgreSQL per installare. Esegui il seguente comando per aggiungere la chiave GPG di PostgreSQL.
$ curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /usr/share/keyrings/postgresql-key.gpg >/dev/nullAggiungi il repository APT alla tua lista di sorgenti.
$ sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/postgresql-key.gpg arch=amd64] http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'Aggiorna il repository di sistema.
$ sudo apt updateOra puoi installare PostgreSQL utilizzando il seguente comando.
$ sudo apt install postgresql postgresql-contribControlla lo stato del servizio PostgreSQL.
$ sudo systemctl status postgresql
? postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) since Mon 2022-09-26 09:41:36 UTC; 2min 14s ago
Process: 15586 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 15586 (code=exited, status=0/SUCCESS)
CPU: 1ms
Sep 26 09:41:36 matrix systemd[1]: Starting PostgreSQL RDBMS...
Sep 26 09:41:36 matrix systemd[1]: Finished PostgreSQL RDBMS.Puoi vedere che il servizio è abilitato e in esecuzione per impostazione predefinita.
Accedi all’account di sistema postgres.
$ sudo -su postgresCrea un nuovo utente del database e un database per PostgreSQL.
$ createuser --pwprompt synapse
$ createdb --encoding=UTF8 --locale=C --template=template0 --owner=synapse synapseEsci dall’account postgres.
$ exitPasso 4 - Installare Nginx
Per l’ambiente di produzione, è consigliato eseguire il server Synapse utilizzando un proxy Nginx.
Ubuntu 22.04 viene fornito con una versione più vecchia di Nginx. Per installare l’ultima versione, devi scaricare il repository ufficiale di Nginx.
Importa la chiave di firma di Nginx.
$ curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
| sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullAggiungi il repository per la versione stabile di Nginx.
$ echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg arch=amd64] \
http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.listAggiorna i repository di sistema.
$ sudo apt updateInstalla Nginx.
$ sudo apt install nginxVerifica l’installazione.
$ nginx -v
nginx version: nginx/1.22.0Avvia il server Nginx.
$ sudo systemctl start nginxPasso 5 - Installare SSL
Dobbiamo installare Certbot per generare il certificato SSL. Puoi installare Certbot utilizzando il repository di Ubuntu o ottenere l’ultima versione utilizzando lo strumento Snapd. Utilizzeremo la versione Snapd.
Ubuntu 22.04 viene fornito con Snapd installato per impostazione predefinita. Esegui i seguenti comandi per assicurarti che la tua versione di Snapd sia aggiornata.
$ sudo snap install core
$ sudo snap refresh coreInstalla Certbot.
$ sudo snap install --classic certbotUsa il seguente comando per assicurarti che il comando Certbot possa essere eseguito creando un collegamento simbolico alla directory /usr/bin.
$ sudo ln -s /snap/bin/certbot /usr/bin/certbotEsegui il seguente comando per generare un certificato SSL.
$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d matrix.example.comIl comando sopra scaricherà un certificato nella directory /etc/letsencrypt/live/matrix.example.com sul tuo server.
Genera un certificato Diffie-Hellman group.
$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096Per controllare se il rinnovo SSL funziona correttamente, esegui una prova del processo.
$ sudo certbot renew --dry-runSe non vedi errori, sei a posto. Il tuo certificato si rinnoverà automaticamente.
Passo 6 - Configurare Matrix Synapse
Puoi configurare il server Matrix tramite il file /etc/matrix-synapse/homeserver.yaml, ma non è consigliato poiché viene sovrascritto dopo ogni aggiornamento. Per l’uso in produzione, dovresti posizionare i file di configurazione nella cartella /etc/matrix-synapse/conf.d.
L’installazione di Synapse ha creato due file di configurazione nella cartella /etc/matrix-synapse/conf.d.
$ ls /etc/matrix-synapse/conf.d
report_stats.yaml server_name.yamlCrea un nuovo file di configurazione per il database e aprilo per la modifica.
$ sudo nano /etc/matrix-synapse/conf.d/database.yamlIncolla le seguenti righe nell’editor. Sostituisci il campo your-password con la password dell’utente PostgreSQL che hai creato nel passo 3. Sostituisci localhost con l’indirizzo IP del tuo server, se stai ospitando il database altrove.
database:
name: psycopg2
args:
user: synapse
password: 'your-password'
database: synapsedb
host: localhost
cp_min: 5
cp_max: 10Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Crea una chiave di registrazione segreta. La chiave dovrebbe essere protetta perché consentirà a chiunque di registrare un nuovo utente, anche se la registrazione è disabilitata.
$ echo "registration_shared_secret: '$(cat /dev/urandom | tr -cd '[:alnum:]' | fold -w 256 | head -n 1)'" | sudo tee /etc/matrix-synapse/conf.d/registration_shared_secret.yamlPer impostazione predefinita, Synapse abilita gli indicatori di presenza che mostrano se una persona è online. Può causare un alto utilizzo della CPU, quindi puoi disabilitarlo. Crea un nuovo file di configurazione per lo stesso.
$ sudo nano /etc/matrix-synapse/conf.d/presence.yamlIncolla la seguente riga nell’editor.
presence:
enabled: falseSalva il file premendo Ctrl + X e inserendo Y quando richiesto.
Riavvia il servizio Synapse per applicare le modifiche.
Crea un nuovo utente matrix. Ti verrà chiesto il tuo nome utente e la tua password. Poiché questo è il primo utente che stiamo creando, digita yes quando ti viene chiesto se rendere l’utente un amministratore.
$ register_new_matrix_user -c /etc/matrix-synapse/conf.d/registration_shared_secret.yaml http://localhost:8008
New user localpart [navjot]: navjot
Password:
Confirm password:
Make admin [no]: yes
Sending registration request...
Success!Se desideri aprire la registrazione pubblica, crea un nuovo file di configurazione.
$ sudo nano /etc/matrix-synapse/conf.d/registration.yamlIncolla le seguenti righe in esso.
enable_registration: truePer impostazione predefinita, Synapse non consente registrazioni senza verifica email. Per abilitare la verifica email, incolla le seguenti righe.
registrations_require_3pid:
- email
email:
smtp_host: mail.example.com
smtp_port: 587
# Se il server di posta non ha autenticazione, salta queste 2 righe
smtp_user: '[email protected]'
smtp_pass: 'password'
# Facoltativo, richiedere crittografia con STARTTLS
require_transport_security: true
app_name: 'HowtoForge Example Chat' # definisce il valore per %(app)s in notif_from e oggetto email
notif_from: "%(app)s <[email protected]>"Per disabilitare la verifica email, incolla invece la seguente riga.
enable_registration_without_verification: trueSalva il file premendo Ctrl + X e inserendo Y quando richiesto.
Riavvia Synapse per applicare la configurazione.
$ sudo systemctl restart matrix-synapsePasso 7 - Configurare Nginx
Apri il file /etc/nginx/nginx.conf per la modifica.
$ sudo nano /etc/nginx/nginx.confAggiungi la seguente riga prima della riga include /etc/nginx/conf.d/*.conf;.
server_names_hash_bucket_size 64;Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Crea e apri il file /etc/nginx/conf.d/synapse.conf per la modifica.
$ sudo nano /etc/nginx/conf.d/synapse.confIncolla il seguente codice in esso.
# enforce HTTPS
server {
# Client port
listen 80;
listen [::]:80;
server_name matrix.example.com;
return 301 https://$host$request_uri;
}
server {
server_name matrix.example.com;
# Client port
listen 443 ssl http2;
listen [::]:443 ssl http2;
# Federation port
listen 8448 ssl http2 default_server;
listen [::]:8448 ssl http2 default_server;
access_log /var/log/nginx/synapse.access.log;
error_log /var/log/nginx/synapse.error.log;
# TLS configuration
ssl_certificate /etc/letsencrypt/live/matrix.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/matrix.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/matrix.example.com/chain.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location ~ ^(/_matrix|/_synapse/client) {
proxy_pass http://localhost:8008;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
# Nginx per impostazione predefinita consente solo caricamenti di file fino a 1M di dimensione
# Aumenta client_max_body_size per corrispondere a max_upload_size definito in homeserver.yaml
client_max_body_size 50M;
}
}Salva il file premendo Ctrl + X e inserendo Y quando richiesto una volta terminato.
Verifica la sintassi del file di configurazione di Nginx.
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulRiavvia il servizio Nginx.
$ sudo systemctl restart nginxPasso 8 - Installare Coturn
Dovrai installare un server TURN (Traversal Using Relays around NAT) per abilitare le chiamate vocali e video. A questo scopo, installeremo il pacchetto Coturn. Se non hai bisogno di questa funzionalità, puoi saltare questo passaggio.
Ubuntu 22.04 non viene fornito con il pacchetto Coturn a causa di un problema di bug che è stato risolto. Tuttavia, c’è un altro modo per installare Coturn utilizzando un repository non ufficiale. Facoltativamente puoi anche usare Docker per installare Coturn, ma non utilizzeremo quel metodo poiché è al di fuori dello scopo di questo tutorial.
Aggiungi il repository non ufficiale di Coturn.
$ sudo add-apt-repository ppa:ubuntuhandbook1/coturnInstalla Coturn.
$ sudo apt install coturnApri le porte TURN e UDP.
$ sudo ufw allow 3478
$ sudo ufw allow 5349
$ sudo ufw allow 49152:65535/udpGenera un certificato SSL per Turn ( turn.example.com).
$ sudo certbot certonly --nginx -d turn.example.comGenera un segreto di autenticazione e salvalo nel file di configurazione.
$ echo "static-auth-secret=$(cat /dev/urandom | tr -cd '[:alnum:]' | fold -w 256 | head -n 1)" | sudo tee /etc/turnserver.confApri il file di configurazione per la modifica.
$ sudo nano /etc/turnserver.confIncolla le seguenti righe in esso sotto il segreto di autenticazione.
use-auth-secret
realm=turn.example.com
cert=/etc/letsencrypt/live/turn.example.com/fullchain.pem
pkey=/etc/letsencrypt/live/turn.example.com/privkey.pem
# VoIP è UDP, non è necessario TCP
no-tcp-relay
# Non consentire traffico a intervalli IP privati
no-multicast-peers
denied-peer-ip=0.0.0.0-0.255.255.255
denied-peer-ip=10.0.0.0-10.255.255.255
denied-peer-ip=100.64.0.0-100.127.255.255
denied-peer-ip=127.0.0.0-127.255.255.255
denied-peer-ip=169.254.0.0-169.254.255.255
denied-peer-ip=172.16.0.0-172.31.255.255
denied-peer-ip=192.0.0.0-192.0.0.255
denied-peer-ip=192.0.2.0-192.0.2.255
denied-peer-ip=192.88.99.0-192.88.99.255
denied-peer-ip=192.168.0.0-192.168.255.255
denied-peer-ip=198.18.0.0-198.19.255.255
denied-peer-ip=198.51.100.0-198.51.100.255
denied-peer-ip=203.0.113.0-203.0.113.255
denied-peer-ip=240.0.0.0-255.255.255.255
denied-peer-ip=::1
denied-peer-ip=64:ff9b::-64:ff9b::ffff:ffff
denied-peer-ip=::ffff:0.0.0.0-::ffff:255.255.255.255
denied-peer-ip=100::-100::ffff:ffff:ffff:ffff
denied-peer-ip=2001::-2001:1ff:ffff:ffff:ffff:ffff:ffff:ffff
denied-peer-ip=2002::-2002:ffff:ffff:ffff:ffff:ffff:ffff:ffff
denied-peer-ip=fc00::-fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
denied-peer-ip=fe80::-febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff
# Limita il numero di sessioni per utente
user-quota=12
# Limita il numero totale di sessioni
total-quota=1200Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Riavvia Coturn per applicare la configurazione.
$ sudo systemctl restart coturnCrea un nuovo file di configurazione Synapse per Coturn.
$ sudo nano /etc/matrix-synapse/conf.d/turn.yamlIncolla le seguenti righe in esso. Sostituisci il valore turn_shared_secret con il valore di static-auth-secret dal file et urnserver.conf.
turn_uris: [ "turn:turn.example.com?transport=udp", "turn:turn.example.com?transport=tcp" ]
turn_shared_secret: 'static-auth-secret'
turn_user_lifetime: 86400000
turn_allow_guests: TrueSalva il file premendo Ctrl + X e inserendo Y quando richiesto.
Riavvia Synapse per applicare le modifiche.
$ sudo systemctl restart matrix-synapsePasso 9 - Accedere a Matrix
Puoi accedere a Matrix Chat utilizzando il client web di Element all’indirizzo https://app.element.io. Fai clic sul pulsante Accedi per procedere.

Fai clic sul link Modifica sotto Homeserver. Inserisci matrix.example.com come tuo homeserver.

Se il client rileva correttamente il tuo homeserver, il confine e il testo diventeranno di colore verde, altrimenti verrà mostrato in rosso. Fai clic su Continua per procedere.

Fai clic sul pulsante Accedi per effettuare il login. Ti verrà chiesto di creare un backup sicuro e crittografato.

Seleziona l’opzione Inserisci una frase di sicurezza per creare una frase di sicurezza che sarà richiesta ogni volta che accedi. Fai clic su Continua per procedere.

Inserisci una frase di sicurezza e fai clic sul pulsante Continua per procedere. Ti verrà chiesto di confermarla di nuovo nella schermata successiva.

Inserisci di nuovo la frase e fai clic su Continua per procedere.

Ti verrà fornito un insieme di chiavi di sicurezza che puoi utilizzare se dimentichi la tua frase di sicurezza. Fai clic sul pulsante Scarica per salvarle.
Fai clic sul pulsante Continua per procedere.

Ti verrà chiesta la password del tuo account. Inserisci la password e fai clic sul pulsante Continua per completare la configurazione del backup crittografato.

Abbiamo creato una stanza di chat di gruppo chiamata Howtoforge come mostrato sopra.
Passo 10 - Installare Element
Installa il pacchetto jq per installare il processore di testo JSON.
$ sudo apt install jqCrea una directory per Element.
$ sudo mkdir -p /var/www/elementCrea un nuovo file per ottenere l’ultima versione di Element.
$ sudo nano /var/www/element/update.shAggiungi le seguenti righe in esso.
#!/bin/sh
set -e
install_location="/var/www/element"
latest="$(curl -s https://api.github.com/repos/vector-im/element-web/releases/latest | jq -r .tag_name)"
cd "$install_location"
[ ! -d "archive" ] && mkdir -p "archive"
[ -d "archive/element-${latest}" ] && rm -r "archive/element-${latest}"
[ -f "archive/element-${latest}.tar.gz" ] && rm "archive/element-${latest}.tar.gz"
wget "https://github.com/vector-im/element-web/releases/download/${latest}/element-${latest}.tar.gz" -P "archive"
tar xf "archive/element-${latest}.tar.gz" -C "archive"
[ -L "${install_location}/current" ] && rm "${install_location}/current"
ln -sf "${install_location}/archive/element-${latest}" "${install_location}/current"
ln -sf "${install_location}/config.json" "${install_location}/current/config.json"Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Rendi il file eseguibile.
$ sudo chmod +x /var/www/element/update.shEsegui lo script per scaricare Element.
$ sudo /var/www/element/update.shPasso 11 - Configurare Element
Copia lo stesso file di configurazione di Element.
$ sudo cp /var/www/element/current/config.sample.json /var/www/element/config.jsonApri il file di configurazione per la modifica.
$ sudo nano /var/www/element/config.jsonTrova le seguenti righe.
"m.homeserver": {
"base_url": "https://matrix-client.matrix.org",
"server_name": "matrix.org"
},Cambia l’indirizzo dell’homeserver Matrix predefinito con il tuo homeserver e rimuovi la variabile server_name.
"m.homeserver": {
"base_url": "https://matrix.example.com",
"server_name": "matrix.element.com"
},Se desideri utilizzare il tuo nome invece di Element nel titolo del sito web, cambia il nome del marchio.
"brand": "Howtoforge Example Chat",Imposta la variabile disable_guests su true per vietare agli ospiti di utilizzare Element.
"disable_guests": true,Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Genera un certificato SSL per il client Element.
$ sudo certbot certonly --nginx -d element.example.comCrea e apri il file /etc/nginx/conf.d/element.conf per la modifica.
$ sudo nano /etc/nginx/conf.d/element.confIncolla le seguenti righe in esso.
server {
listen 80;
listen [::]:80;
server_name element.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name element.example.com;
root /var/www/element/current;
index index.html;
access_log /var/log/nginx/element.access.log;
error_log /var/log/nginx/element.error.log;
add_header Referrer-Policy "strict-origin" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
# TLS configuration
ssl_certificate /etc/letsencrypt/live/element.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/element.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/element.example.com/chain.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
}Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Verifica la sintassi del file di configurazione di Nginx.
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulRiavvia il servizio Nginx.
$ sudo systemctl restart nginxPuoi accedere al client Element tramite l’URL https://element.example.com nel tuo browser. Effettua il login e verrai portato alla dashboard dell’app.

Conclusione
Questo conclude il nostro tutorial sull’installazione del server di chat Matrix Synapse insieme a Coturn e al client web Element utilizzando Nginx come server proxy. Se hai domande, postale nei commenti qui sotto.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.