Честно говоря, тут минимум готовых рецептов, но надо уже куда-то выгрузить найденную инфу, иначе я окончательно ее потеряю.
Ну, прежде всего — это развитие прошлой заметки на тему соответствия 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 — шифрованные сообщения нельзя подгрузить с сервера — т.е., все хранение переписки лишь на усмотрение клиентов.
Из минусов — у конференции установлена опция «Сделать комнату постоянной» — т.е., сервер постепенно будет заполняться пустыми временными конференциями.