Честно говоря, тут минимум готовых рецептов, но надо уже куда-то выгрузить найденную инфу, иначе я окончательно ее потеряю.
Ну, прежде всего – это развитие прошлой заметки на тему соответствия XMPP-сервера стандартам.
Честно говоря, тут минимум готовых рецептов, но надо уже куда-то выгрузить найденную инфу, иначе я окончательно ее потеряю.
Ну, прежде всего – это развитие прошлой заметки на тему соответствия XMPP-сервера стандартам.
Небольшая заметка на тему. Давненько уже перешел на использование сертификатов от Letsencrypt. В общем-то, сразу после того, как случайно просрочил сертификат от cacert.org, после чего не смог больше залогиниться у них на сайте – сертификат для логина, понятное дело, больше не подходил, а “обычный” логин выдавал ошибку. Пошел искать альтернативу и успешно ее нашел. По какому-то мануалу создал нужные сертификаты, с тех пор так и пользуюсь – правда, с обновлением только вручную. Пробовал найденные команды для автоматического обновления, получал ошибку, в подробности не вник – так и забросил, а раз в 3 месяца при получении письма от LE просто выполнял несколько команд.
Сейчас подошел очередной срок (письмо я, правда, в этот раз почему-то не получил), а так как в последние дни занимаюсь наведением порядка на сервере – решил подробнее разобраться и с этой темой.
Сегодня наконец-то нашел условия, при которых возможно шифрование в конференции – как минимум, в Conversations и, как я понимаю, в ConverseJS (видел там такую фичу). Помог README на странице Conversations’а: “OMEMO is only available in 1:1 chats and private (members-only, non-anonymous) group chats”. Вот, собственно, 2 опции в скобках и надо было проверить в настройках конференции – “Только для зарегистрированных” и “JID виден всем” – без этого даже значка шифрования не было. В Conversations, похоже, на момент теста баг с отображением опций конференции – показываются только две и в разных конференциях разные, так что преобразовать произвольную конференцию в шифрованную через него не выйдет (но можно с помощью другого клиента). Зато среди вариантов чатов есть “Создать закрытую конференцию”, которая сходу сконфигурирована так, как надо.
При старте переписки Conversations выдает список JID’ов с OMEMO-отпечатками и галочками для включения/выключения нужных участников. Интересно, кстати, что будет, если включить журналирование? Update: протестировал. В чатлогах есть только нешифрованные сообщения, на все шифрованные только добавляется запись “I sent you an OMEMO encrypted message…”. Проверил еще и message archive – шифрованные сообщения нельзя подгрузить с сервера – т.е., все хранение переписки лишь на усмотрение клиентов.
Из минусов – у конференции установлена опция “Сделать комнату постоянной” – т.е., сервер постепенно будет заполняться пустыми временными конференциями.