Matrix es un proyecto Python de código abierto para la comunicación descentralizada en tiempo real que se utiliza para los servicios de mensajería y VoIP. Permite que un usuario se comunique con otros usuarios en un proveedor de servicios diferente a través de voz sobre IP y chat. Matrix es un protocolo ligero y estándar abierto que le permite crear su propio servidor doméstico, almacenar toda la información personal del usuario y crear una sala personal.
En este tutorial, le mostraremos cómo instalar Matrix Synapse con Nginx como proxy inverso en Ubuntu 20.04.
Requisitos
- Un Ubuntu 20.04 VPS nuevo en Atlantic.net Cloud Platform
- Un nombre de dominio válido dirigido a la IP de su servidor
- Una contraseña de root configurada en su servidor
Paso 1:crear el servidor en la nube de Atlantic.Net
Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu 20.04 como sistema operativo con al menos 2 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.
Una vez que haya iniciado sesión en su servidor Ubuntu 20.04, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.
apt-get update -y
Paso 2:instalar Matrix Synapse
Primero, instala las dependencias requeridas con el siguiente comando:
apt-get install curl wget gnupg2 apt-transport-https -y
Una vez que todas las dependencias estén instaladas, descargue y agregue la clave GPG con el siguiente comando:
wget -qO /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
A continuación, agregue el repositorio de Matrix a la APT con el siguiente comando:
echo "deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/matrix- org.list
A continuación, actualice el repositorio e instale la última versión de Matrix con el siguiente comando:
apt-get update -y apt-get install matrix-synapse-py3 -y
Durante la instalación, se le pedirá que proporcione su nombre de dominio como se muestra a continuación:
Proporcione su dominio y haga clic en Aceptar botón. Debería ver la siguiente página:
Seleccione la opción deseada y presione Entrar para comenzar la instalación. Una vez que se haya instalado Matrix, inicie el servicio de Matrix y habilítelo para que se inicie al reiniciar el sistema con el siguiente comando:
systemctl start matrix-synapse systemctl enable matrix-synapse
ss -tunelp | grep 8008
Deberías obtener el siguiente resultado:
tcp LISTEN 0 50 127.0.0.1:8008 0.0.0.0:* users:(("python",pid=102359,fd=13)) uid:109 ino:594551 sk:a <-> tcp LISTEN 0 50 [::1]:8008 [::]:* users:(("python",pid=102359,fd=12)) uid:109 ino:594550 sk:d v6only:1 <->
Paso 3:configurar Matrix Synapse
El archivo de configuración predeterminado de Matrix Synapse se encuentra en /etc/matrix-synapse/homeserver.yaml. Antes de editarlo, cree una contraseña secreta con el siguiente comando:
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1
Deberías obtener el siguiente resultado:
2VHeHAwjGlMlqpEGBNMhfEbb5BOmp6qE
A continuación, edite el archivo de configuración de Matrix:
nano /etc/matrix-synapse/homeserver.yaml
Cambie las siguientes líneas:
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: "2VHeHAwjGlMlqpEGBNMhfEbb5BOmp6qE"
Guarde y cierre el archivo, luego reinicie el servicio Matrix Synapse para aplicar los cambios.
systemctl restart matrix-synapse
En este punto, Matrix Synapse está configurado para escuchar en localhost.
Paso 4:crear un nuevo usuario de Matrix
A continuación, deberá crear un nuevo usuario para Matrix Synapse. Puede usar este usuario en el cliente de Matrix para conectarse al servidor de Matrix.
Ejecute el siguiente comando para crear un nuevo usuario:
register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml http://localhost:8008
Se le pedirá que establezca un nombre de usuario y una contraseña como se muestra a continuación:
New user localpart [root]: admin Password: Confirm password: Make admin [no]: yes Sending registration request... Success!
Una vez que se crea el usuario, puede continuar con el siguiente paso.
Paso 5:configurar Nginx para Matrix Synapse
A continuación, deberá instalar y configurar Nginx como un proxy inverso para Matrix Synapse para poder acceder a Matrix Synapse desde la red externa mediante el puerto 80.
Primero, instale el servidor Nginx con el siguiente comando:
apt-get install nginx -y
Una vez instalado, cree un archivo de configuración de host virtual Nginx con el siguiente comando:
nano /etc/nginx/sites-available/matrix.conf
Agregue las siguientes líneas:
server { listen 80; server_name matrix.example.com; location / { proxy_pass http://localhost:8008; proxy_set_header X-Forwarded-For $remote_addr; } }
Guarde y cierre el archivo, luego habilite el host virtual Nginx con el siguiente comando:
ln -s /etc/nginx/sites-available/matrix.conf /etc/nginx/sites-enabled/
A continuación, verifique Nginx en busca de errores de sintaxis con el siguiente comando:
nginx -t
Deberías obtener el siguiente resultado:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
A continuación, reinicie el servicio Nginx para aplicar los cambios:
systemctl restart nginx
Si obtiene algún error, deberá editar el archivo de configuración del servidor predeterminado de Nginx y configurar server_names_hash_bucket_size:
nano /etc/nginx/nginx.conf
Agregue la siguiente línea debajo de http {:
server_names_hash_bucket_size 64;
Guarde y cierre el archivo, luego reinicie el servicio Nginx para aplicar los cambios:
systemctl restart nginx
Paso 6:acceder a Matrix Synapse
Ahora, abra su navegador web y acceda a la interfaz web de Matrix Synapse usando la URL http://matrix.example.com /. Debería ver la siguiente página:
Como puede ver, Matrix Synapse ahora se está ejecutando.
Conclusión
¡Felicidades! Ha instalado correctamente Matrix Synapse con Nginx como proxy inverso en Ubuntu 20.04. Ahora puede instalar el cliente Matrix en su dispositivo móvil o computadora de escritorio y comunicarse con otros usuarios. ¡Empiece hoy mismo con Matrix en VPS Hosting de Atlantic.Net!