Matrix – это инновационная альтернатива чат-сервисам, таким как Discord и Slack, с открытым исходным кодом, которая одновременно многофункциональна и проста в использовании. Он полностью поддерживает сквозное шифрование и доступен практически для всех операционных систем. Вы также можете разместить его на своем собственном сервере, что сделает общение в Интернете полностью безопасным и конфиденциальным.
Здесь мы покажем вам, как установить Matrix на свой сервер.
Читайте также: 9 лучших почтовых клиентов для Linux
Что такое матричный протокол?
По своей сути Matrix представляет собой набор протоколов, определяющих способ отправки сообщений через Интернет. Подобно HTTP , Matrix стремится стать открытым стандартом, который способствует свободному и прозрачному обмену информацией в Интернете. Для этого он делает две вещи:
- Команда ос
Contents
Что такое матричный протокол?
с открытым исходным кодом, который вы можете создать и развернуть для подключения клиентов и пользователей. Он также служит справочной информацией для сторонних разработчиков при создании собственного программного обеспечения. - Эти серверы, в свою очередь, созданы для взаимодействия друг с другом. Это означает, что вы можете общаться с другими пользователями, даже если они находятся на другом сервере, чем вы.
Зачем использовать матричный протокол?
Одним из основных преимуществ Matrix является то, что он позволяет создавать сеть серверов, которые могут беспрепятственно взаимодействовать друг с другом в режиме реального времени. Это похоже на такие технологии, как электронная почта, IRC и Pleroma.
При этом вы можете создать для себя сервер и мгновенно связаться с остальным миром. Это может быть невероятно полезно, если вы хотите иметь возможность контролировать свои данные при общении в Интернете.
Кроме того, эта модель связи также очень устойчива и безопасна. Возможность иметь собственный сервер дает вам возможность поддерживать обслуживание, даже если часть более крупной сети выйдет из строя. Мало того, это также гарантирует, что только вы сможете получить доступ к учетным записям и сообщениям, которые находятся на вашем сервере.
Читайте также: 5 скрытых функций, которые можно использовать для улучшения Emacs
Размещение собственного сервера Matrix
Самый простой способ использовать Matrix — разместить собственный сервер.
Однако важно отметить, что перед установкой и использованием Matrix потребуется ряд вещей:
Зачем использовать матричный протокол?
ное имя для вашего экземпляра. Это связано с тем, что Синапс серверу, который вы собираетесь использовать, для работы требуется полное доменное имя.Учитывая все это, данное руководство будет посвящено настройке Synapse на Debian VPS начиная с Цифровой океан . Начнем.
Читайте также: Каковы самые популярные доменные имена верхнего уровня и что они означают?
1. Установка Synapse
Войдите в свой экземпляр VPS и загрузите все зависимости для Synapse:
sudo apt install lsb-release wget apt-transport-https
Читайте также: Как установить собственный федеративный Twitter с помощью Pleroma
По умолчанию Debian не включает официальные пакеты Synapse в свои репозитории. Вам придется импортировать репозиторий Synapse на свой сервер.
- Сначала импортируйте ключи GPG разработчиков на свой компьютер:
sudo wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
- Затем добавьте репозиторий Synapse в «sources.list»:
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
- Теперь вы можете использовать apt для обновления списка пакетов, которые вы можете установить для своей системы:
sudo apt update
Теперь вы можете установить Synapse через apt:
sudo apt install matrix-synapse-py3
Во время установки Synapse запросит несколько вещей.
- Во-первых, вам нужно будет назвать свой сервер, то есть доменное имя, которое вы хотите использовать с Matrix. В моем случае я использовал «yetanothermatrixserver.xyz».
- Оттуда вы можете выбрать, хотите ли вы сообщать статистик
1. Установка Synapse
м Matrix. Поскольку я хочу, чтобы мой сервер был полностью частным, я выбрал «Нет».
Читайте также: Как использовать Nginx в качестве обратного прокси
2. Настройте Synapse
После установки Synapse следующее, что вам нужно сделать, — это настроить обратный прокси-сервер с помощью nginx. Это позволит вам получить доступ к Synapse снаружи локального компьютера. Это работает за счет использования Веб-сервер Nginx для прослушивания входящего трафика и перенаправления его на другой порт в системе.
- Для начала вам необходимо сначала установить Nginx:
sudo apt install nginx
- Теперь вам нужно создать файл конфигурации Nginx для Synapse. Это можно сделать, выполнив следующую команду:
sudo touch /etc/nginx/sites-available/default
- После этого вы можете отредактировать этот файл конфигурации и создать обратный прокси-сервер для Synapse. Например, конфигурация обратного прокси-сервера может выглядеть примерно так:
server { server_name yetanothermatrixserver.xyz; listen 80; listen [::]:80; location / { proxy_pass http://localhost:8008; } location ~* ^(\/_matrix|\/_synapse\/client) { proxy_pass http://localhost:8008; proxy_set_header X-Forwarded-For $remote_addr; client_max_body_size 50M; } location /.well-known/matrix/server { return 200 '{"m.homeserver": {"base_url": "https://yetanothermatrixserver.xyz"}}'; default_type application/json; add_header Access-Control-Allow-Origin *; } }
server_name
указывает на используемое вами доменное имя. В моем случае в качестве имени сервера я использовал «yetanothermatrixserver.xyz».- Две команды
listen
сообщают Nginx, где искать входящие соединения. Первая строка ищет соединения IPv4, а вторая — IPv6. - Три блока
location
указывают, что Nginx будет делать для конкретных путей, которые может запросить пользователь. Например, первый блок местоположения сообщает Nginx автоматически перенаправлять трафик на порт 8008. А второй блок местоположения обрабатывает вызов ACME для SSL.
3. Настройте SSL для Synapse
После этого вам нужно настроить шифрование. По умолчанию Synapse не делает SSL сам по себе, но вы можете легко настроить SSL с помощью Let’s Encrypt.
- Вы можете установить certbot, выполнив следующую команду:
sudo apt install certbot python3-certbot-nginx
- После этого вы можете запустить следующую команду, чтобы запустить процесс автоматического сертификата:
2. Настройте Synapse--nginx -d yetanothermatrixserver.xyz
- После этого вы можете перезагрузить nginx, чтобы убедиться, что ваша установка Synapse работает.
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/ sudo systemctl restart nginx
Читайте также: Как сохранить вывод терминала в файл в Linux
4. Создайте учетную запись пользователя в Synapse
Теперь вы можете создать свою первую учетную запись пользователя в Synapse. Для этого вам нужно сделать две вещи:
- создать общий секрет
- запустите скрипт создания пользователя.
Зная это, создать общий секретный ключ относительно просто. Это случайная строка символов, которую вам нужно поместить в файл конфигурации Synapse. Это, в свою очередь, позволяет вам создавать и удалять учетные записи из командной строки вашего VPS.
- Вы можете легко создать случайную строку, используя «/dev/random». Например, это файл, который вместе с другими программами создает случайную строку символов:
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1
- Теперь вы можете вставить этот текст в файл конфигурации Synapse homeserver.yaml. Вы можете найти этот файл в каталоге «/etc/matrix-synapse».
- Хотя это относительно длинный файл, единственное, что вам нужно здесь отредактировать, — это параметр «registration_shared_secret». Вам необходимо раскомментировать эту строку и заменить ее значение только что созданным текстом.
- После этого вы можете сохранить этот файл и перезагрузить Synapse. Это гарантирует, что сервер правильно загрузит предварительно общий секрет.
sudo systemctl restart matrix-synapse
Читайте также: Как использовать Emacs в качестве программы чтения USENET с Gnus
Последнее, что вам нужно сделать, это создать саму учетную запись пользователя.
- Для этого вы можете выполнить следующую команду:
register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml http://localhost:8008
- Synapse теперь спросит несколько вопросов об учетной записи, которую вы хотите создать. Во-первых, вам понадобится имя пользователя для вашей учетной записи.
- После завершения этого шага Synapse потребует от вас установить пароль для учетной записи. В отличие от других сервисов, сервер не будет ограничивать вас при установке слабого пароля. Поэтому вам необходимо убедиться, что вы вводите здесь достато
3. Настройте SSL для Synapse
- Далее Synapse спросит, хотите ли вы, чтобы эта учетная запись была администратором или нет. Включив это для вашей учетной записи, вы сможете легко управлять своим сервером из клиента Matrix.
Поздравляем! Теперь у вас есть базовая рабочая установка Synapse.
Теперь вы можете войти на свой сервер через веб-клиент, например Элемент . С другой стороны, вы также можете использовать настольный или мобильный клиент, например то же самое .
Читайте также: 7 лучших программ чтения USENET для Linux
Часто задаваемые вопросы
Можно ли вместо этого использовать Synapse под субдоменом?
Да! Вы можете легко разместить Synapse на субдомене. Для этого вам просто нужно убедиться, что IP-адрес субдомена указывает на ваш сервер. Вам также необходимо изменить запись «server_name» в файле конфигурации Nginx, чтобы убедиться, что он прослушивает доступ к поддомену.
Есть ли в Synapse собственный клиент Matrix?
К сожалению, нет. Synapse по умолчанию не включает собственный веб-клиент. По этой же причине на вашем веб-сайте отображается только эк
4. Создайте учетную запись пользователя в Synapse
о хорошие клиенты с открытым исходным кодом для доступа к вашему серверу Synapse.Есть ли способ включить внешнюю регистрацию для моего сервера Matrix?
Да! Включить внешнюю регистрацию с помощью Synapse относительно легко. Все, что вам нужно сделать, это изменить параметр «enable_registration» на «true» в вашем файле homeserver.yaml.
Однако следует отметить одну важную вещь: такой подход означает, что сервер не будет проверять, является ли пользователь настоящим человеком или нет. Для этого вам необходимо либо использовать CAPTCHA, либо использовать электронную почту Synapse для отправки писем с подтверждением.
Изображение предоставлено: Символ речевого пузыря сообщения от 123RF