Guía paso a paso para instalar Synapse Matrix Server en Ubuntu 22.04

Guía paso a paso para instalar Synapse Matrix Server en Ubuntu 22.04

26.12.2023
Autor: HostZealot Team
2 min.
282

Matrix es un software de código abierto, descentralizado y fácil de usar para la comunicación privada. Puede utilizarse para llamar o enviar mensajes. Matrix proporciona encriptación para canales de comunicación seguros en la web.

Synapse es el servidor Matrix por defecto basado en Python. La instalación del servidor es accesible incluso para usuarios no expertos en tecnología.

En este artículo, te guiaremos a través de los pasos para instalar el Servidor Matrix Synapse.

Paso 1: Instalación del servidor Matrix Synapse

Hay un par de cosas que necesita tener en cuenta antes de empezar.

Asegúrese de que tiene lo siguiente

  • Un servidor con Ubuntu 22.04
  • Un nombre de dominio asociado a la dirección IP de tu servidor
  • Un acceso root al servidor y contraseña root

Con eso fuera del camino, lo que necesita para actualizar los paquetes del sistema a continuación, utilizando:

apt update -y

Instale las dependencias necesarias con el siguiente comando:

apt install curl wget gnupg2 apt-transport-https -y

Y elija e inserte el nombre de su servidor:

$ sudo nano /etc/hosts

IP address domain.name

Ahora puede proceder a la instalación del Servidor Matrix Synapse.

Añada la clave GPG y el repositorio de Matrix Synapse:

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/ $(lsb_release -cs) main" |sudo tee /etc/apt/sources.list.d/matrix-org.list

Actualice el SO e instala Matrix, usando:

sudo apt update sudo apt install matrix-synapse-py3

Ejecute la Sinapsis Matrix:

sudo systemctl start matrix-synapse sudo systemctl enable matrix-synapse

Puede comprobar si Matrix Synapse está funcionando pulsando:

$ systemctl status matrix-synapse (there should be "active (running)" line in the "Active" section)

Paso 2: Configuración de la matriz de sinapsis

Para configurar el servidor Matrix de Synapse, primero necesita generar una contraseña de Matrix:

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

Después de generar una contraseña para Matrix, edite el archivo de configuración de Matrix:

sudo nano /etc/matrix-synapse/homeserver.yaml

En el archivo de configuración, necesita cambiar las direcciones bind a una dirección IP local, desactivar el registro de Matrix, e insertar la contraseña generada así:

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


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


enable_registration: false
registration_shared_secret: "V6jKdIsl6GUdvpksSlQDCX5P94kJfFGk"

Guarde el archivo y reinicie Matrix Synapse.

Paso 3: Creación de un nuevo usuario de Matrix

La creación de un usuario Matrix puede ayudar a conectarse a un servidor Matrix a través de un cliente Matrix. Para crear un nuevo usuario, ejecute el siguiente comando:

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

A continuación, sigue el siguiente ejemplo:

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

Ahora, se ha creado un nuevo usuario.

Paso 4: Configuración de un certificado SSL para el servidor Matrix

Si no configura un certificado SSL para su servidor Matrix, accederá a él a través de HTTP, lo que significa que estará amenazando la seguridad de sus datos. Para evitarlo, puede emitir un certificado autofirmado o un certificado Let's Encrypt.

Utilización de un certificado autofirmado

Busque la carpeta que almacena los certificados y ejecute allí el siguiente comando:

openssl req \ 
-newkey rsa:2048 -nodes -keyout matrix.key \ 
-x509 -days 365 -out Matrix.crt

Para completarlo, rellene el formulario que aparecerá a continuación.

A continuación, transfiera el archivo del certificado a un directorio accesible:

sudo mv matrix.crt Matrix.key /etc/pki/certificates/

Obtención de un certificado Let's Encrypt

Let's Encrypt le permite obtener certificados SSL de forma gratuita, y es una de las formas más sencillas de obtener un certificado SSL. He aquí cómo hacerlo.

Primero necesita instalar el cliente Certbot. Puede hacerlo ejecutando:

sudo apt install certbot -y

Genere el certificado con el siguiente comando (introduzca su dirección de correo electrónico y su nombre de dominio):

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email su dirección de correo -d su nombre de dominio

Ya tiene su certificado SSL.

Paso 5: Configuración de Nginx para el servidor Matrix

Con Matrix Synapse, Nginx se utiliza comúnmente como un proxy inverso.

Primero necesita instalar Nginx. Puede hacerlo con el siguiente comando:

sudo apt install nginx

Para empezar a utilizar Nginx como proxy inverso, necesita crear un archivo de configuración independiente para su servidor:

sudo nano /etc/nginx/sites-available/matrix.conf

En el archivo, inserte las secciones subrayadas:

server {
listen 80;
server_name matrix.example.com;
return 301 https://$host$request_uri;
}


server {
listen 443 ssl;
server_name matrix.example.com;


ssl_certificate /etc/pki/certificates/matrix.crt;
ssl_certificate_key /etc/pki/certificates/matrix.key;


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 matrix.example.com;


ssl_certificate /etc/pki/certificates/matrix.crt;
ssl_certificate_key /etc/pki/certificates/matrix.key;


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

Guarde el archivo.

Ahora, para comprobar si el archivo contiene algún error, utilice este comando para ejecutar la prueba:

$ sudo nginx -t

Para activar un host virtual, puede crear un enlace simbólico para el archivo de configuración en el directorio /etc/nginx/sites-enabled:

sudo ln -s /etc/nginx/sites-available/matrix.conf /etc/nginx/sites-enabled/

Para aplicar los cambios, reinicie Nginx (sudo systemctl restart nginx).

Paso 6: Configuración del cortafuegos

Si utiliza un cortafuegos, necesita además permitir que el servicio Matrix lo atraviese:

sudo ufw allow 8448 sudo ufw allow https sudo ufw allow http

Puede comprobar el estado con el siguiente comando:

$ sudo ufw status

Paso 7: Acceso a Matrix Synapse

Acceder al servidor Matrix Synapse es muy sencillo. Todo lo que necesita es introducir lo siguiente en la barra de búsqueda del navegador web:

https://your domain:8448.

Conclusión

Matrix Synapse es una integración basada en servidor del protocolo Matrix para la comunicación segura. Es un servidor de software que proporciona los servicios de comunicación y sincronización de datos a través de la red Matrix.

Las características clave del servidor Matrix Synapse incluyen:

  • Comunicación segura. El Servidor Matrix Synapse está pensado para proporcionar una conexión y comunicación seguras a través de la web. Dado que los datos compartidos a través de Matrix se distribuyen a través de múltiples servidores (ya que Matrix está descentralizado), proporciona una comunicación más segura y protegida.
  • Naturaleza descentralizada. Matrix Synapse proporciona una arquitectura descentralizada, lo que significa que los usuarios pueden tener su propio servidor Matrix Synapse. Esto da a los usuarios el control sobre sus datos y comunicaciones, ya que siguen la filosofía de los sistemas descentralizados.
  • Mayor seguridad. Matrix Synapse utiliza varias medidas de seguridad que protegen al servidor de violaciones de datos, ataques al servicio, etc. También es conocido por integrar protocolos de comunicación seguros, incluyendo TLS y encriptación de extremo a extremo.
  • Fácil de integrar. Matrix es fácil de integrar con varios sistemas y servicios.

Por último, pero no menos importante, Matrix Synapse es fácil de instalar y configurar. Esperamos que este tutorial se lo haya demostrado.

Artículos Relacionados