|
Bog BOS: jabber (XMPP) |
Последние изменения: |
Последнее изменение файла: 2011.10.19
Скопировано с www.bog.pp.ru: 2024.11.23
Протокол jabber (XMPP - Extensible Messaging and Presence Protocol, RFC 3920 и 3921, порт для клиентов - 5222, порт для обмена между серверами - 5269) используется в системах мгновенного обмена сообщениями (Jabber Software Foundation переименован в XMPP Standards Foundation). Поддерживает текстовые сообщения, голос и видео, а также передачу файлов и информацию о присутствии контрагентов. Система является децентрализованной, т.е. можно запустить свой сервер со своими пользователями и обмениваться с другими серверами XMPP (например, Facebook, Google Talk, Яндекс и LiveJournal), аналогично SMTP. Шифрование на транспортном уровне с помощью SSL/TLS (сертификат сервера можно получить в xmpp.net), внутреннее шифрование с помощью PGP/GPG. Расширения: обмен файлами, мониторинг, совместная работа. 70% трафика составляют сообщения о присутствии. Сервера (включает менеджер сеансов, маршрутизатор, транспорты и шлюзы): jabberd, DJabberd (ЖЖ), ejabberd (jabber.ru, Erlang). Клиенты: pingin, miranda, kopete, empathy, gajim, psi, Vacuum-IM. Шлюзы в AIM, ICQ, MSN, Yahoo, SMTP, SMS через специальные сервисы (для доступа к сервисам используется XMPP, пользователь должен зарегистрироваться на шлюзе). Идентификатор пользователя (Jabber ID, JID) состоит из имени пользователя, символа '@' и доменного имени сервера (как в SMTP). Пользователь может одновременно иметь несколько подключений, называемых ресурсами. Имя ресурса дописывается после идентификатора пользователя после символа '/'. Сообщения могут быть отправлены как по адресу целого пользователя, так и по адресу ресурса. Сервер хранит список контактов (ростер). Сервер может поддерживать хранение сообщений (offline). Для конференнций (chat, room) необходим сервер с поддержкой MUC (multi user conference, XEP-0095).
Сервер jabberd 2.2.11 (EPEL5, группа jabber/251, пользователь jabber/251 - /var/lib/jabberd) состоит из маршрутизатора, менеджера сессий (sm), интерфейса между клиентами и сервером (c2s), интерфейса между серверами (s2s) - пропал resolver. Для аутентификации используется GnuSASL (PAM (добрая душа добавила pam_nologin.so в /etc/pam.d/jabberd), OpenLDAP, BDB, MySQL, PostgreSQL). Для хранения сообщений можно использовать MySQL (/usr/share/jabberd/db-setup.mysql), PostgeSQL (/usr/share/jabberd/db-setup.pgsql), Oracle (/usr/share/jabberd/db-setup.oracle), SQLite ("cat /usr/share/jabberd/db-setup.sqlite | sqlite3 /var/lib/jabberd/db/sqlite.db" и права) или Berkeley DB. Скрипт запуска серверов /etc/rc.d/init.d/jabberd настраивается с помощью /etc/sysconfig/jabberd (какие части запускать - START_DAEMONS (убрать s2s); запускать c2s под пользователем root - C2S_AS_ROOT, требуется для аутентификации PAM).
Настройки DNS сервера:
jabber A адрес # для клиентов, отличающих имя домена от имени сервера _xmpp-client._tcp SRV 0 0 5222 jabber # для неотличающих, но умеющих STARTTLS _xmpp-client._tcp SRV 0 0 5223 jabber # для неотличающих и не умеющих STARTTLS A адрес # для клиентов, не умеющих работать с SRV
Настройки в /etc/jabberd/:
Данные хранятся в /var/lib/jabberd/:
Установка mu-conference 0.8 (расширение XEP-0045, MUC, порт 5347):
Пароль хранится в открытом виде в файле ~/.purple/accounts.xml.
Позволяет управлять комнатами (чатами).
Отказывается завершать работу.
Транспорты (bytestream):
|
Bog BOS: jabber (XMPP) |
Последние изменения: |