Создаем собственный Matrix сервер

Добро пожаловать на наш форум!

Спасибо за посещение нашего сообщества. Пожалуйста, зарегистрируйтесь или войдите, чтобы получить доступ ко всем функциям.


Gibby

Автор
Команда проекта

Регистрация
Сообщений
1,635
Репутация
45
Сделок
1.png

В данной статье рассмотрим создание собственного Matrix сервера для общеният.
Для создания собственного сервера нам понадобится выделенный сервер и домен, связанный с вашим сервером.
В данном примере будет использована Ubuntu 22.04 в качестве ОС.
Приступим.
Подключаемся к серверу по SSH, обновляем пакеты и устанавливаем необходимые пакеты следующей командой:

Код:
sudo apt install curl wget gnupg2 apt-transport-https -y

Добавим GPG ключ Matrix Synapse следующей командой:

Код:
undefined

Добавим репозиторий Matrix Synapse следующей командой:

Код:
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

Установим Matrix Synapse следующими командами:

Код:
sudo apt-get update
sudo apt-get install matrix-synapse-py3


В открывшемся окне вводим адрес нашего сайта в формате matrix.sitename.domainname
В следующем окне выбираем <No>, Matrix Synapse установлен.
Запустим службу следующими командами:

Код:
sudo systemctl start matrix-synapse
sudo systemctl enable matrix-synapse


Теперь необходимо сконфигурировать Matrix Synapse
Создадим секретный ключ следующей командой:

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

Копируем выведенное значение
Открываем конфигурационный файл сервера командой:

Код:
sudo nano /etc/matrix-synapse/homeserver.yaml

Меняем следующие строчки:


Код:
bind_addresses: ['127.0.0.1']
enable_registration: true
registration_shared_secret: "вставить значение из прошлой команды"


Сохраняем изменения и перезапускаем службу следующей командой:

Код:
sudo systemctl restart matrix-synapse

Теперь настроим обратный прокси на Nginx
Установим Nginx:

Код:
sudo apt-get install nginx

Создаем конфигурационный файл Nginx:

Код:
sudo nano /etc/nginx/conf.d/matrix.conf

Добавляем в этот файл следующие строки:

Код:
server {
listen 80;
server_name sitename.domainname;     #адрес вашего сайта
location / {
proxy_pass http://localhost:8008;
proxy_set_header X-Forwarded-For $remote_addr;
}
}


Сохраняем изменения и проверяем конфиг следующей командой:

Код:
nginx -t

Если всё верно, перезапускаем службу следующей командой:

Код:
sudo systemctl restart nginx

Создаем root пользователя на нашем сервере следующей командой:

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

Вводим ник, затем дважды пароль, в пункте Make admin пишем yes и жмем энтр.
Включаем Let’s Encrypt
Установим Certbot следующей командой:

Код:
sudo  apt install certbot python3-certbot-nginx

Вводим команду следующую команду для конфигурации SSL сертификата:

Код:
сertbot --nginx -d ваш_домен

Вводим свой email и соглашаемся с правилами сервиса, в следующем пункте введите Y, если хотите получать email рассылку от EEF.
Всё готово, проверить работоспособность вашего сервера можно перейдя на ваш сайт, на нем будет отображаться картинка с надписью [matrix].
На этом установка и настройка собственного сервера завершена, можете регистрировать на нём аккаунт и начинать общение.
 
Сверху