Шифрование в Jabber: различия между версиями

Материал из Мир Jabber
Перейти к навигацииПерейти к поиску
м (Ссылка на omemo.top)
 
(не показано 20 промежуточных версий 5 участников)
Строка 1: Строка 1:
==Введение==
==Введение==
Для обеспечения безопасного подключения к серверу, а также для сохранения конфиденциальности разговоров в сети Jabber используются разнообразные системы шифрования. При подключении к серверу вся сессия между клиентом и сервером (т.е., Ваш логин, [[Пароль|пароль]] и все то, о чем вы говорите) может шифроваться при помощи одного из протоколов - [[ru_wikipedia:SSL|SSL]] либо [[ru_wikipedia:TLS|TLS]]. Для большей конфиденциальности и для исключения перехвата трафика на сервере в дополнение к SSL/TLS можно использовать шифрование с использованием пары открытых и закрытых ключей - [[ru_wikipedia:GPG|GPG]] или [[ru_wikipedia:OTR|OTR]], а для сохранения конфиденциальности пароля используется SASL. Ниже разъясняется значение этих сокращений.
Jabber обладает широкими возможностями в области шифрования. Для обеспечения безопасного подключения к серверу, а также для сохранения конфиденциальности разговоров в сети Jabber используются разнообразные системы шифрования. Ниже рассмотрены самые распространенные.


==Терминология==
==Терминология==


* '''SASL''' - Один из способов передачи [[Пароль|пароля]]. При нем вместо пароля передается его хэш-сумма, поэтому получить [[Пароль|пароль]] недоброжелателю при таком способе логина проблематично
* Для безопасной передачи пароля при подключении используется механизм '''SASL'''. Суть его действия заключается в том, что сам [[пароль]] фактически не передается по каналу связи<ref>В некоторые клиентах, таких как [[Psi]], допущена ошибка - в настройках возможно включить передачу пароля открытым текстом, но на самом деле и в этом случае передача самого пароля не происходит. Однако мы настоятельно рекомендуем не включать эту опцию, так как она очень небезопасна по другим причинам.</ref>, поэтому получить его недоброжелателю в этом случае крайне тяжело. Этот механизм включен по умолчанию практически во всех клиентах, поэтому вам не требуется совершать какие-либо действия для его включения.


* '''SSL''' - традиционный способ шифрования. При включенном SSL шифрование начинается с самого начала передачи данных. SSL обычно использует специально выделенный порт 5223
* Для шифрования самих сообщений используются протоколы '''TLS''' и '''SSL'''. Благодаря этим технологиям, злоумышленнику будет значительно тяжелее перехватить вашу переписку. Эти протоколы очень похожи между собой, но TLS считается немного более современным. В большинстве клиентов для компьютеров TLS или SSL включены по умолчанию, а в клиентах для мобильных устройств требуется включить эту опцию в настройках. При желании вы можете добавить [[Сертификаты в TLS/SSL|сертификат]] из доверенного источника в ваш клиент - это повысит безопасность. Крайне важно отметить, что при использовании TLS или SSL Jabber-сервер производит расшифровку сообщений, ''поэтому администратор сервера имеет полный доступ к вашей переписке''.


* '''TLS''' - более новый способ шифрования, базируется на SSL. Сеанс начинается без шифрования и включается только в случае, если оно возможно. Работает на том же порту, что и Jabber без шифрования, обычно 5222.
* Если вы не доверяете своему серверу, то вам необходимо использовать '''[[E2EE|E2E]]'''-шифрование: '''[[OTR]]''', '''[[OMEMO]]''' или '''[[Настройка GPG-шифрования между Psi и Gajim|GPG]]'''. Первые два не требуют особых усилий для их использования, GPG же нуждается в некоторой настройке, но дает максимально возможную для Jabber степень безопасности.
 
* '''GPG''' - свободная реализация PGP. Используется для шифрования исключительно сообщений и проходит сервер в зашифрованном виде. Дешифруется на конечном клиенте по доверенному ключу. Для шифрования используется открытый и закрытый ключи.
 
* '''OTR''' - протокол шифрования, специально созданный для сетей обмена мгновенными сообщениями. Шифрует только сообщения. Не требует обмена ключами.
 
==Что использовать?==
 
Для большей безопасности при общении в сети Jabber стоит как минимум использовать один из протоколов шифрования сессии - TLS либо SSL<ref>SSL считается устаревшим, поэтому рекомендуется использовать TLS.</ref>. Благодаря этому практически исключается перехват трафика (т.е., Ваших паролей и разговоров) в Вашей локальной сети либо на промежуточных узлах между клиентом и сервером. Сейчас практически не осталось серверов, не поддерживающих один из этих протоколов<ref>Сервер [http://livejournal.com/chat livejournal.com] принципиально не поддерживает шифрование SSL/TLS для снижения нагрузки, ограничиваясь SASL)</ref>, поэтому практически всегда сессия изначально защищена. Ценой безопасного общения становится немного увеличившееся время подключения к серверу и слегка возросший трафик<ref>Исключение составляет [[Tkabber]], при его использовании трафик не только не возрастает, но ещё и уменьшается.</ref>, но оно стоит того. Такого шифрования хватит для большинства случаев. Тем людям, для кого важна конфиденциальность передаваемой информации, стоит в дополнение к SSL/TLS использовать шифрование GPG или OTR. В любом случае не стоит забывать про необходимость иметь надежный [[Пароль|пароль]]. Также рекомендуется включать SASL логин, при его использовании количество переданного трафика и время соединения практически не увеличивается.


'''Примечания:'''
'''Примечания:'''
Строка 23: Строка 15:
== Ссылки ==
== Ссылки ==


[[Настройка GPG-шифрования между Psi и Gajim]]
* [[Настройка GPG-шифрования между Psi и Gajim]]
 
* [[OTR|Настройка OTR]]
[[OTR|Настройка OTR]]
* [[Сертификаты в TLS/SSL]]
 
* [[SJ|SJ - jabber клиент с упрощенной настройкой GPG]]
[http://ru.tkabber.jabe.ru/index.php/Между_офлайном_и_онлайном Немного о SSL/TSL и SASL] на [http://ru.tkabber.jabe.ru/ ткаббер-вики]
* [http://ru.tkabber.jabe.ru/index.php/Между_офлайном_и_онлайном Немного о SSL/TLS и SASL] на [http://ru.tkabber.jabe.ru/ ткаббер-вики]
 
* [http://psi-im.org/wiki/RU:Шифрование GPG в Psi]
[http://psi-im.org/wiki/RU:Шифрование GPG в Psi]
* [http://vonderer.blogspot.com/2007/07/xmpp-4.html Vonderer blog. "Безопасность и покой"]
 
* [http://habrahabr.ru/blogs/im/50982/ Шифруем сообщения в сети XMPP/Jabber с помощью алгоритма PGP]
[http://vonderer.blogspot.com/2007/07/xmpp-4.html Vonderer blog. "Безопасность и покой"]
* [https://omemo.top/ Поддержка OMEMO в разных клиентах]
 
[http://habrahabr.ru/blogs/im/50982/ Шифруем сообщения в сети XMPP/Jabber с помощью алгоритма PGP]


[[Category:Тонкости работы]][[Category:Термины]][[Category:Шифрование]]
[[Category:Тонкости работы]][[Category:Термины]][[Category:Шифрование]]

Текущая версия на 10:27, 17 мая 2022

Введение[править]

Jabber обладает широкими возможностями в области шифрования. Для обеспечения безопасного подключения к серверу, а также для сохранения конфиденциальности разговоров в сети Jabber используются разнообразные системы шифрования. Ниже рассмотрены самые распространенные.

Терминология[править]

  • Для безопасной передачи пароля при подключении используется механизм SASL. Суть его действия заключается в том, что сам пароль фактически не передается по каналу связи[1], поэтому получить его недоброжелателю в этом случае крайне тяжело. Этот механизм включен по умолчанию практически во всех клиентах, поэтому вам не требуется совершать какие-либо действия для его включения.
  • Для шифрования самих сообщений используются протоколы TLS и SSL. Благодаря этим технологиям, злоумышленнику будет значительно тяжелее перехватить вашу переписку. Эти протоколы очень похожи между собой, но TLS считается немного более современным. В большинстве клиентов для компьютеров TLS или SSL включены по умолчанию, а в клиентах для мобильных устройств требуется включить эту опцию в настройках. При желании вы можете добавить сертификат из доверенного источника в ваш клиент - это повысит безопасность. Крайне важно отметить, что при использовании TLS или SSL Jabber-сервер производит расшифровку сообщений, поэтому администратор сервера имеет полный доступ к вашей переписке.
  • Если вы не доверяете своему серверу, то вам необходимо использовать E2E-шифрование: OTR, OMEMO или GPG. Первые два не требуют особых усилий для их использования, GPG же нуждается в некоторой настройке, но дает максимально возможную для Jabber степень безопасности.

Примечания:

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

Ссылки[править]