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

Избавляемся от дополнительных настроек jabber-клиента в Google apps

Время на прочтение2 мин
Количество просмотров7K
Судя по количеству плюсов к посту про использование google apps в качестве сервера jabber эта тема волнует хабрапользователей. Поэтому я решил внести свои пять копеек.

В документации гугла сказано, что при настройке кастомного клиента нужно вводить в свойствах соединения сервер talk.google.com и порт. Это очень не удобно, так как надо всё время помнить эти настройки, да и затрудняет настройку клиента вашими родственниками/знакомыми, которых пугает только одно слово порт :) Почему-то в документации к google apps этого не сказано, но прописать адрес и порт, которые должны быть использовать при подключении, можно в srv записях dns, да именно там, где вы указаывали адреса для федеративных сетей.

Добавляем запись типа:

_xmpp-client._tcp.yourdomain.com. IN SRV 5 0 5222 talk.google.com.


И вауля, клиент коннектится безо всяких танцев и дополнительных настроек.

Стоит добавить, что:
  1. Клиент должнен поддерживать чтение srv записей.
    Протестированы клиенты:
    Работают:

    Не работают:
    • Bombus — чтение записей происходит, но из-за несоответствия сертификата соединение обрывается.
    • Kopete Bug 133097 (TiGR)

  2. Клиент должен выдать ошибку о несовпадении сертификатов серверов, проверьте, что это сертификат действительно принадлежит Google, Inc. Если да, то спокойно кликайте ok
  3. На обновление записей может потребоваться существенное время, так что не стоит ждать, что всё заработает через минуту. Проверить, видит ли ваш локальный dns сервер новые записи можно так:
    # nslookup
    > set type=srv
    > _xmpp-client._tcp.ivlis.com
    Server:         195.208.192.19
    Address:        195.208.192.19#53
    
    Non-authoritative answer:
    _xmpp-client._tcp.ivlis.com     service = 5 0 5222 talk.google.com.
    
    Authoritative answers can be found from:
    
    
  4. Для большей надёжности можно прописать несколько серверов гугла для коннекта. Насколько это повышает надёжность, мне не известно. Взял из того же nslookup самого gmail.com
    • _xmpp-client._tcp.gmail.com service = 20 0 5222 talk1.l.google.com.
    • _xmpp-client._tcp.gmail.com service = 20 0 5222 talk2.l.google.com.
    • _xmpp-client._tcp.gmail.com service = 20 0 5222 talk3.l.google.com.
    • _xmpp-client._tcp.gmail.com service = 20 0 5222 talk4.l.google.com.
    • _xmpp-client._tcp.gmail.com service = 5 0 5222 talk.l.google.com.



  5. Спасибо за внимание, надеюсь кому-то этот пост будет полезен!
Теги:
Хабы:
Всего голосов 51: ↑49 и ↓2+47
Комментарии67

Публикации

Истории

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
11 сентября
Митап по BigData от Честного ЗНАКа
Санкт-ПетербургОнлайн
19 сентября
CDI Conf 2024
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
25 сентября
Конференция Yandex Scale 2024
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн