Как стать автором
Обновить

Matrix: децентрализованные открытые мессенджеры с E2E-шифрованием. Обзор возможностей и настройка своего сервера

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров27K
Всего голосов 32: ↑32 и ↓0+40
Комментарии54

Комментарии 54

Но с кем общаться через этот Matrix? Вот WhatsApp/Telegram есть у всех. Имхо, нужна причина посильнее, чем «не доверяю телеге/вотсаппу» и «РКН заблочил этих двоих на полчаса», а до этого Matrix останется уделом самых отважных.

Некоторое вспомогательное решение: поднять на matrix-сервере и бриджи тоже. И общаться с теми. кого WhatsApp/Telegram через matrix-клиенты. Как минимум - это дает возможность снести WhatsApp/Telegram с основных устройств. Из недостатков - голосовые/видео звонки нормально работать не будут через такое, шифрование...работать будет если конкретный бридж в него умеет (что совсем не факт) и вы включили.

НЛО прилетело и опубликовало эту надпись здесь

За Matrix плюс. И к слову о блокировках мессенджеров, Signal тоже недавно блокировали, но у него есть опция "Обход цензуры", находится в Расширенных настройках Конфиденциальности.

А чем ситуация с Matrix принципиально отличается? Допустим, наберется там людей. Всед за этим придет РосВсёЗабан и история повторится.

Еще один протокол никак не решает проблему цензуры со стороны государства. Потому что, в общем случае, цензура - это не техническая проблема. А технические решения для нетехнических проблем работают нестабильно, недолго, неудобно.

Всед за этим придет РосВсёЗабан и история повторится.

Выполнения требование по мониторингу трафика владельцами homeserver'ов либо не создаст проблемы (e2eee потому что либо комната и так публичная) либо невозможно (привязки к телефону, ну не поддерживается это)

Блокировать придется именно по протоколам потому что куча серверов (и кстати с миграцией между homeserver'ами все чуть лучше чем кажется, хотя все еще плохо) и конкретная комната - на всех homeserver'ах сразу где ее участники.

Конкретные homeserver'ы могут быть внутри России (ну и добавить в пакет софта homeserver'а Технические Средства Предотвращения Угроз Цензуры не так и сложно).

Для использования внутри компании, при необходимости подключая партнёров/клиентов, очевидно. После блокировки Signal серьёзно об этом задумался. Своим-то сотрудникам через наш VPN я всё что угодно "разблокирую", но вот у сторонних пользователей с VPN часто проболемы, которые я точно не хочу за них решать.

Верно.

Есть такое эмпирическое правило: чтобы люди перешли с привычного им продукта на новый, нужно чтобы ценность этого нового продукта для пользователя была минимум в 10 раз выше.

То есть, чтобы люди перешли с Telegram/Whatsapp на какой-то другой мессенджер, нужно, чтобы этот новый мессенджер работал был в 10 раз "лучше". Ни matrix, как протокол, ни клиентские приложения такими не являются.

Просветите, в чем профит банить сервера РКН?

Чтобы случайно не нашли чего НЕ надо, в том числе - автоматизированным сканированием.

У китайцев научатся с левых ip адресов сканировать. Дело времени

В любом случае, в копилочку "готовое решение на всякий случай"

Вопрос такой: Есть какие-то особые требования к VPS если будет использован coturn  для видеосвязи? Ну то есть проц там надо помощнее и оперативы, и вообще если использовать ваш мануал для создания - какие требования минимальные к серверу, если будет примерно до 60 человек общаться?

НЛО прилетело и опубликовало эту надпись здесь

я дошел до пункта регистрации пользователя
doccker exec -it synapse_synapse_1 register_new_matrix_user https://YOUR_DOMAIN:8448 -c /data/homeserver.yaml -u USERNAME -a -p PASSWORD
И команда не работает почему то
Зашел по id контейнера - нет регистрации
Зашел непосредственно в сам контейнер и команда register_new_matrix_user not found - что я не так сделал?

приветствую, у вас тут минимум две ошибки, команда должна начинаться так: docker exec -it matrix_synapse_1 register_new_matrix_user

Есть какие-то особые требования к VPS если будет использован coturn  для видеосвязи?

Я пару лет назад, когда РКП игрался с блокировкой Телеги, пытался (скорее для попробовать, чем для дела) поднять сервер на впске с одним ядром и гигом памяти. Собственно, умирать оно начало уже на этапе тестирования текстовой части. Когда дошел до голоса, уже перестало быть понятно - это оно глючит из-за настройки или сервер умер. Рискну сделать бездоказательное предположение, что для 60 человек с видео (да еще наверняка захочется федерацию и бриджи) речь уже будет идти про железный сервер (ну хотя бы потому, что он будет дешевле аналогичной по характеристикам впски).

В плане спецификаций железа - посмотрите конфигурации и что они могут у https://etke.cc/order - эти товарищи собственно хостингом Matrix (в том числе) и занимаются.

Здесь обратите внимание, важно заменить YOUR_DOMAIN на ваш домен. И давайте пройдемся, что из этого что.

Таки лучше в композах использовать переменные, а их значения задавать в .env

Что касается собственно продукта. Переползли на него контрой с тимзы, которая какое-то время была бесплатной, а потом халява закончилась. Параллельно еще тестили rocketchat, он мне нравится больше (и ближе по фукнциональности к тимзе/слаку), но нам нужны видеособрания, а в рокетчате на тот момент с этим было печально. Только через джитси, причем интеграция на низком уровне - просто открывается окно джитси. Тут все поинтереснее
Дык вот - хоть продукт и неплохой, но для домашнего использования слишком суров, как по мне:

  1. Для управления юзерами-группами и т.д., а это может потребоваться рано или поздно, придется изучить rest api. Несложно, но, скажем, на телефончике крайне неудобно

  2. End-to-end шифрование требует передачи ключей на все подключаемые устройства пользователя (если их больше одного). И хранения ключей, чтобы переписку можно было расшифровать при переустановке приложения. Опыт даже небольшой команды показывает, что осилить расшифровку чата на свежедобавленном устройстве могут не только лишь все ©. А если еще в настройках комнаты указано, что никогда не отправлять сообщения в комнату, если есть неверифицированные устройства, то вообще будет беда.

P.S. Кстати, веб-клиента можно и не разворачивать, а использовать публичный. Просто там указать, на какой сервер цепляться

root@eae445417e9e:/# Sending registration request...
Success!

Ввел команду в контейнере для регистрации пользователя - такой ответ
Проверил в БД postgresql - в таблице users появился пользователь которого создавал
Открываю Element - ввожу данные сервера и данные пользователя - Invalid username or password
В логах synapse
synapse.handlers.auth - 1435 - WARNING - POST-77 - Failed password login for user @deymon:matrix.deymonster.ru

НЛО прилетело и опубликовало эту надпись здесь

Используем в компании. Клиент Element. Худшее сочетание из того, чем пользовался.

Работает плохо, видео и демонстрация экрана регулярно отваливается.

Принципиальная структура с комнатами - крайне неудобно. Если я общаюсь с человеком и решаем пригласить третьего - всё, вернуться в прошлое состояние с сохранением истории переписки с ним уже нельзя. В норме чат двоих и групповой различаются. При приглашении создаётся групповой чат без разрушения чата на двоих. Здесь - не так, и это плохо.

Поисков по чату, считай, нет.

Извещения о сообщениях появляются далеко не сразу - особенно в мобильном клиенте, там можно неделями ничего не увидеть, пока сам не запустишь.

НЛО прилетело и опубликовало эту надпись здесь

С уведомлениями - в Element'е на мобилке тест Push-нотификаций стоит запустить, там могут быть ньюансы. И да - у меня более менее нормально работает (но у меня вообще в Element стоят нотификации через ntfy + свой сервер ntfy, через гуглосервисы у меня в среднем хуже работает)

да, это всё понятно. Вот только всё равно тормозит - десктопный клиент тоже. Даже извещение о сообщении выскакивает - а сообщения нет, как не было. На десктопе, повторюсь.

А сколько там косяков...

Там много хитрых приколов.

Synapse workers например полезная штука на практике чтобы хоть как то быстро работало

А еще - есть некоторые особенности в протоколе из-за которых первоначальная (и не только) синхронизация больших групп/вход в них это тихий ужас.

Для чего и придуман в частности Sliding Sync (поддерживается Element X как клиент (в некоторых других клиентах тоже есть) и sliding-sync-proxy(пока так) на стороне сервера).

По памяти - Jabber работал сильно быстрее. Когда работал.

концепция комнат в любом случае крайне неудобна.

НЛО прилетело и опубликовало эту надпись здесь

главная проблема матрикса - что это сборная солянка, написанная абсолютно разными командами, которые вообще не знают что делают другие.
отсюда и тормоза и глюки и несовместимости сервера/клиента (фича есть на сервере, команда клиента не знает о ней)
да и сильно переусложненный протокол, в результате чего тормоза, тормоза, тормоза....

НЛО прилетело и опубликовало эту надпись здесь

UranusExplorer, ты месяц-два назад кричал "Никакой свободы врагам свободы", когда только-только заговорили о замедление Ютюба в РФ. В других статьях ты тоже выкрикивал примерно такие же лозунги - "угнетают нас в РФ, ужас! Не то, что в Европе и США - там свобода слова и интернета". Ну вот, Дурова во Франции арестовали, ставя под вопрос свободу слова в Телеграме. Франция - это Европа. Арестовали, скорее всего, по запросу США.

Вопрос: ты покричал в сторону Франции и США, про ущемление свободы слова, и беспредела? И собираешься-ли вообще?

НЛО прилетело и опубликовало эту надпись здесь
Ой, а это что?
Ой, а это что?

А это что?

Подождёшь вердикт, говоришь? Ну, допустим. Но, уже свершившийся факт в том, что Дурова задержали и предъявили обвинения, связанные именно со свободой слова в интернете. И именно в Европе. И именно по запросу США.

Где твои действия? Как ты свободу слова защищаешь в данном случае? Где гневная статья про Францию и США?

Ты выкручиваешься, как балерина на балете. "Не, чёрное - оно как бы немного и белое. И вообще, чёрное бывает даже по-белее белого. Ну и вообще, давайте подождём: говорят, что белое раз в 10 лет становится чёрным. Как незаряженное ручьё на стенке"

НЛО прилетело и опубликовало эту надпись здесь

Здравствуйте! Не хочет запускаться.

НЛО прилетело и опубликовало эту надпись здесь

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Исправил но теперь проблема с сертификатом

НЛО прилетело и опубликовало эту надпись здесь

Здравствуйте! Почему то не работает watsappbot

НЛО прилетело и опубликовало эту надпись здесь

Вот смотрю я на ваши мучения, и думаю... Возможно, системное администрирование - это просто не ваше? Оставьте это тем, у кого получается этим заниматься. Купите настройку сервиса под ключ, в конце концов. У автора данной статьи, у меня или еще у кого-то, без разницы. Из личного опыта: правка конфигов это во многом поиски лишнего пробела или недостающей запятой. Если вы настолько невнимательны, что не можете сконцентрироваться даже чтобы просто поднять сервис из уже готовых собранных образов докера, это уже не звоночек, это прям целый набат в полный рост.

Это классная вещь, все вспомнила симбиан и его баян. Спасибо за статью.

Домен... TLS-сертификат... Что за повальная мода? Нет, я не против безопасности, но можно использовать просто IP и самоподписной сертификат? А то получается что мы такие независимые, но будь любезен купи домен и его поддерживай, оформи сертификат и его поддерживай...

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации