Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Openfire (Wildfire/Jive Messenger)

Автор: igor1944
Дата сообщения: 08.05.2015 13:30
Ni9999

Цитата:
С последней 10 не работает пандион.

кхм , у меня истерика вчера целый день перетряхивал сервак с ног на голову поставил 10-ый и не работает...
кстати транспорты проверял кто нибудь в 10-ом транспорты вроде как тоже не работают при попытке подключиться из пандиона в ICQ говорит мол имя пользователя или пароль неверные
со спарком та же фигня 2.7.0 и не хочет по GSSAPI соединяться
с какой версией openfire нормально работает?
Автор: dnskuznetsov
Дата сообщения: 15.05.2015 15:43
Всем привет!
Ребят, помогите, первый раз поднимаю джаббер сервер.
Openfire 3.9.3 установлен на 2008 сервере, клиент - Spark, LDAP.
Как сделать чтобы можно было отправлять файлы оффлайн пользователю, как обычные сообщения?
То есть Вася отправил Пете файл пока Петя был в отпуске, за это время Вася ушёл в отпуск, Петя вышел из отпуска и получает файл от Васи.
Извините если где-то обсуждалось, не смог найти ответа.
Автор: zepki
Дата сообщения: 16.05.2015 23:37
[more] openfire + mysql
настраиваю при подключении к базе данных


Код: 2015.05.16 23:43:30 org.jivesoftware.util.log.util.CommonsLogFactory - Prototype
java.sql.SQLException: null, message from server: "Host '192.168.0.2' is not allowed to connect to this MySQL s$
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:973)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1112)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2506)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2539)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2321)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:832)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
at sun.reflect.GeneratedConstructorAccessor12.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:417)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:344)
Автор: Ni9999
Дата сообщения: 18.05.2015 10:50
dnskuznetsov, никак.
zepki И в чем вопрос? То что 192.168.0.2 не разрешен для мускуля? Так это очевидно и так)
Автор: Ink0gnit0s
Дата сообщения: 20.05.2015 08:13
dnskuznetsov
Сделайте доступным в сети каталог на общедоступном сервере или на своём компьютере, назначив соответствующие права доступа. Скиньте туда файл, предназначеный адресату. Далее, напишите сообщение, указав ссылку на файл.
Автор: lexuzmain
Дата сообщения: 21.05.2015 09:43

Цитата:
lexuzmain cn - для "встроенных" папок и для аккаунтов юзеров, ou - для созданых ручками ОЮшек

Ну... на половину был прав))
Значит еще можно попробовать вот так:
cn=ЮЗВЕРЬ,ou=ПАПКА,cn=ПОДПАПКА,dc=ad,dc=ru
Автор: fromkg
Дата сообщения: 22.05.2015 06:37
Есть какие-нибудь новости по избавлению загруженности проца на 100% в последней версии OpenFire или есть смысл откатываться назад?
Автор: omsk_mail
Дата сообщения: 22.05.2015 09:37
Всем доброго времени суток!
Сделал перенос базы со встроенной на внешнюю!
но есть ошибки, Вы не могли бы помочь или подсказать почему эти ошибки и как их исправить (критичны или нет)!


Спасибо!
Автор: zepki
Дата сообщения: 22.05.2015 19:19
[more] точно. я слепень не увидел. это победил.
сейчас новая беда.
создал базу данных CREATE DATABASE `openfire` CHARACTER SET utf8 COLLATE utf8_general_ci;
пользователя, назначил права. установил Openfire. захожу в админку, добавляю пользователей, группы.(на русском) все работает, перезагружаю openfire захожу в админку пользователей нет, групп нет, только пишет сколько групп и пользователей, клиенты к серверу не подключаются.(нет пользователя)
если латиницей все хорошо. можно как то исправить? в базе данных пользователи группы на русском есть.

Добавлено:
победил при настройке указывал
jdbc:mysql://localhost:3306/openfire?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8

в конфиге получалась строка
<serverURL>jdbc:mysql://localhost:3306/mesdb?useUnicode=true&amp;amp;characterEncoding=UTF-8&amp;amp;characterSetResults=UTF-8</serverURL>

в файле openfire.xml сделал вот так <serverURL>jdbc:mysql://localhost:3306/openfire?characterEncoding=UTF-8</serverURL> и заработало

[/more]
Автор: omsk_mail
Дата сообщения: 26.05.2015 16:07
Помогите пожалуйста победить этот плагин Мониторинга пользователей (переписка)
На 3.9.3 перестал работать! на 3.10.0 работает.
В БД нашел где хранится переписка но поле Дата заполнено значениями уж явно не похожими на дату
Создал такой вот запрос

SELECT `fromjid`, `tojid`, `body`, `sentdate` FROM `ofmessagearchive` WHERE (`ofmessagearchive`.`tojid`='admin@server7' or `ofmessagearchive`.`tojid`='glbuh@server7') and (`ofmessagearchive`.`fromjid`='admin@server7' or `ofmessagearchive`.`fromjid`='glbuh@server7') and `ofmessagearchive`.`sentdate` LIKE '%%' ORDER BY `SENTDATE` ASC

Может кто поможет переконвертировать sentdate в нормальный формат!
Автор: DeisGood
Дата сообщения: 27.05.2015 08:19
Уже почти год порывался это сделать, наконец собрался и сделал
Офлайновое обновление ростера Openfire для нескольких доменов(лесов) (встроенная БД + Ldap)
Уже 6 год подряд используем Openfire. Причем как говорится не все так просто: имеется 6 виндовых доменов территориально удаленных, на каждом крутится свой Openfire – типа корпоративная аська.
Долгое время мучились со связкой серверов (в плане пользователи удаленных серверов добавляются ручками, но где админ проленился, где не доглядели…) Ростер раздувался был жутко большим, не актуальным… Openfire торомозил и глючил, вообщем геморрой еще тот… Уж как только не пытались решать проблему, подключали Hazelcast, списывались с Томом Эвансом (разработчиком Openfire), синхронизировали sql, вообщем много сил положили бестолку... Но в конце 2013 года при очередном мозговом штурме наткнулся на небольшую статью в инете, которая махом решила все проблемы и в разы облегчила жизнь нам (админам) и заставила работать Openfire красиво и без сбоев.
Основная суть решения проблемы – оффлайновое обновление ростера Openfire (для виндузятников). Попытаюсь описать основную концепцию. Скрипты написаны по моей просьбе на питоне моим коллегой админом, сам я в питоне не бум-бум, и скрипты заточены под нашу контору, и не все может Вас устроить. Если уважаемых форумчан тема заинтересует, может сделать совместное более универсальное решение, которое значительному облегчит жизнь нашему брату админу. Сразу оговорюсь: большими специфическими знаниями в этом вопросе не обладаю и если ошибусь в каких технических моментах поправляйте на здоровье.

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

Кратко общая схема реализации:
- По расписанию на всех контроллерах домена запускается скрипт сбора информации из AD о пользователях, формируется файл в формате csv.
- По расписанию ведущий сервер копирует себе в общую папку полученные файлы со всех серверов, составляет общий файл списка и затем копирует этот готовый файл на все сервера.
- По расписанию на всех серверах с Openfire запускается скрипт, который останавливает Openfire, формирует ростер на основе общего файла списка и затем запускает Openfire.

Общая идея обновления ростера

А это пожалуй самое основное, как я писал выше решения проблемы с другими доменами чтобы отображался не jid а нормальное человеческое имя типа Паша Степанов я искал давно, не зная с какой стороны подойти. Во время очередной попытки открыл файлик openfire.script скопировал строчку из него в гугл и нашел описание, вот к сожалению, ссылку утерял. Главное я понял, что Openfire при выключении сохраняет данные ростера в файл, а в дальнейшем при запуске подхватывает их и продолжает работу. На этом моменте и родилась идея поправить этот файл и дальше скормить его опенфайеру. Почитав немного профильных форумов я нашел в каких строках какие данные необходимо указывать, какие строки можно безболезненно удалить – почистить ростер от старых записей. Попробовав на нескольких пользователях и получив положительный эффект я привлек штатного программиста ибо наполнение ростера руками практически невозможно. Получившийся скрипт делает полное обновление ростера меньше минуты (для ~150 пользователей). Забегая вперед – эффект превзошел все ожидания: из громоздкой неповоротливой базы с дикими тормозами с размерами более нескольких сотен Мегабайт за последние два года размер базы не вышел за пределы 10Мб, при этом всё отлично работает, обновляется.

Чуть подробнее о формировании файла ростера.
База данных ростера формируется строками:
INSERT INTO OFPRESENCE VALUES – создание пользователя на серевере
INSERT INTO OFROSTER VALUES – добавление пользователю других пользователей в ростер
INSERT INTO OFROSTERGROUPS VALUES – группа в которую добавляем другого пользователя.

Например:
INSERT INTO OFPRESENCE VALUES('operator',NULL,'001432486807808')
где: 'operator' – пользователь кому будем формировать ростер
'001432486807808' – время последнего логина пользователя в систему
INSERT INTO OFROSTER VALUES(11721,'operator','ivanov@dom2',3,-1,-1,'\u0418\u0432\u0430\u043d\u043e\u0432 \u0415\u0432\u0433\u0435\u043d\u0438\u0439')
где: 11721 – уникальный номер добавляемого пользователя во всём ростере,
'operator' – имя пользователя которому добавляем контакт
'ivanov@dom2' – jid пользователя которого мы добавляем к контакту
3,-1,-1 – здесь 3 – значение которое делает контакты видимыми друг для друга, остальные не знаю
'\u0418\u0432\u0430\u043d ' – имя пользователя в кодировке Unicode (здесь сокращено, ибо не входит) в данном случае содержит имя пользователя из домена DOM2 – Иванов Евгений.
INSERT INTO OFROSTERGROUPS VAL-UES(11721,0,'\u0422\u043e\u043b\u044c\u044f\u0442\u0442\u0438')
где: 11721 – уникальный номер пользователя во всём ростере, который был добавлен предыдущей строкой
'\u0422\u043e\u043b\u044c ' – имя группы в кодировке Unicode (здесь сокращено, ибо не входит), в которой будет лежать пользователь Иванов Евгений у пользователя 'operator', в данном случае под юнико-дом скрывается слово «Тольятти»
Итак если мы добавим эти 3 строки в ростер то у пользователя operator в мессенджере появиться Группа «Тольятти», в которой будет лежать пользователь «Иванов Евгений», обратите внимание, не jid - 'ivanov@dom2' а именно нормальный пользователь – Иванов Евгений.
Более того, после того как сервера соединяться (S2S), в Информации о контакте Иванов Евгений мы увидим все данные которые предоставит нам AD о данном человеке, а именно, внутренний номер телефона, почтовый адрес, отдел и должность (т.е. то что мы не поленились внести в AD, и всё что запрашивается Openfire’ом при обращении к AD), например как это выглядит в QIP:


Естественно, что формирование ростера сделать «вручную» нереально, вот например мы имеем 5 доме-нов, по 50 пользователей в среднем в домене, для одного пользователя добавляем:
1(добавление пользователя на сервер) +5групп*50пользователей*2(относим каждого пользователя в группу) = 501 строка
Для всех пользователей в домене соответственно:
50пользователей*501строку(создадим ростер каждому пользователю) = 25050 строк.
А 50 пользователей в домене это не так уж и много .
Какие строки убираются из ростера?, расписывать их не буду, можно попробовать поискать в интернете (кстати, я уверен что список удаляемых строк можно еще расширить, но это всё экспериментально, и для людей которые больше в этом разбираются):
INSERT INTO OFUSER VALUES
INSERT INTO OFPRIVATE VALUES
INSERT INTO OFVCARD VALUES
INSERT INTO OFPRIVACYLIST VALUES
INSERT INTO OFOFFLINE VALUES
INSERT INTO OFPUBSUBNODE VALUES
INSERT INTO OFPUBSUBAFFILIATION VALUES
INSERT INTO OFPUBSUBITEM VALUES
INSERT INTO OFPUBSUBSUBSCRIPTION VALUES
INSERT INTO OFSECURITYAUDITLOG VALUES
INSERT INTO ENTCONVERSATION VALUES
INSERT INTO ENTCONPARTICIPANT VALUES
INSERT INTO OFCONVERSATION VALUES
INSERT INTO OFCONPARTICIPANT VALUES
INSERT INTO OFGROUPPROP VALUES


Описание работы скриптов, сами скрипты и подробный мануал

От себя добавлю работаем по данной схеме с 2013года пока нареканий и проблем не было . Надеюсь кому-нибудь пригодиться
Автор: kaskad
Дата сообщения: 27.05.2015 11:21
Всем привет ) Вопрос вроде по адресу: возжелал тут обновить 3.9.3 на 3.10, порылся в apt-get своей Ubuntu 14.04.2 LTS в поисках версии 3.10, а там только 3.9.3. Может я какие репы не обновил? Может подскажет кто? )
Автор: Zhainbay
Дата сообщения: 29.05.2015 13:01
Доброго времени суток. Прошу помощи.
Соединили 2 сервера через server-server. Имеется ли возможность как-нибудь настроить поиск пользователя из одного домена в другом для добавления в контакты ?
Автор: zepki
Дата сообщения: 29.05.2015 15:08
я проверял с jabber.ru, логинился на своём сервере, потом добавлял пользователя с jabber.ru. все работало сразу.

вопрос можно ли сделать чтобы в логах авторизации прописывался ip адрес с какого пытались войти
Автор: Atsha
Дата сообщения: 05.06.2015 05:18
Привет всем! Подскажите как решается проблема с кириллицей? После установки openfire'a большую часть пользователей не видно, и если просматривать конкретную группу - все пользователи написанные на кириллице помечены звездочкой и написано: Примечание: Удаленные пользователи должны принять наличие подписки автоматически
В моем случае домен имеет имя dc1.company.local - соответственно, в настройках сервера я прописываю:
хост: dc1.company.local
база DN: dc=company, dc=local
Если в поле база ДН прописать dc=ad,dc=ru проверка соединения пройдет успешно, но на следующем этапе проверки пользователей будет ошибка, что никто не найден.
Уже всю голову себе сломал, но решения так и не нашел. Помогите пожалуйста.
Автор: omsk_mail
Дата сообщения: 05.06.2015 07:22
Оно??
Автор: Atsha
Дата сообщения: 05.06.2015 08:51
omsk_mail, суть в том что база у меня встроенная, а не внешняя. Домен на Win2008r2, так что описанный способ не подходит
Автор: DeisGood
Дата сообщения: 05.06.2015 09:23
Atsha

Цитата:
хост: dc1.company.local
база DN: dc=company, dc=local
Если в поле база ДН прописать dc=ad,dc=ru проверка соединения пройдет успешно, но на следующем этапе проверки пользователей будет ошибка, что никто не найден.

База с интеграцией LDAP?
А если в поле база DN прописываешь, т.к. написал:
база DN: dc=company, dc=local
что происходит?
Автор: ssi
Дата сообщения: 07.06.2015 14:30
может кто подскажет подскажет последовательность действий? Требуется перенести 3.7.1 версию с Windows 2003 на Windows 2008r2. База внутренняя, с LDAP интеграцией.
Автор: DeisGood
Дата сообщения: 08.06.2015 05:12
ssi
Если имя компьютера на котором установлен Openfire не меняется. Просто скопировать папку Openfire в новую систему и запустить установку, он всё автоматически подхватит .
Автор: Atsha
Дата сообщения: 08.06.2015 05:23
DeisGood

Цитата:
Atsha

Цитата:
хост: dc1.company.local  
база DN: dc=company, dc=local
Если в поле база ДН прописать dc=ad,dc=ru проверка соединения пройдет успешно, но на следующем этапе проверки пользователей будет ошибка, что никто не найден.  

База с интеграцией LDAP?
А если в поле база DN прописываешь, т.к. написал:
база DN: dc=company, dc=local
что происходит?


Происходит как раз описанная ситуация. Все что кириллицей помечено звездочкой и никак не подсвечивается. Через поиск такие пользователи не находятся
Автор: DeisGood
Дата сообщения: 08.06.2015 10:04
Atsha
Я про лдап уточнял потому что меня строчка вот эта смущает:

Цитата:
В моем случае домен имеет имя dc1.company.local - соответственно, в настройках сервера я прописываю:  
хост: dc1.company.local

может быть все-таки dc1 - контроллер домена?
Иначе получается неправильно прописано у тебя.
В хосте имя контроллера указывается, ну и далее всё по теории.
Автор: russpray
Дата сообщения: 08.06.2015 10:57

Цитата:
DeisGood

Цитата:
Atsha  
 
Цитата:
хост: dc1.company.local  
база DN: dc=company, dc=local  
Если в поле база ДН прописать dc=ad,dc=ru проверка соединения пройдет успешно, но на следующем этапе проверки пользователей будет ошибка, что никто не найден.  
 
База с интеграцией LDAP?  
А если в поле база DN прописываешь, т.к. написал:  
база DN: dc=company, dc=local  
что происходит?  

 
Происходит как раз описанная ситуация. Все что кириллицей помечено звездочкой и никак не подсвечивается. Через поиск такие пользователи не находятся

У меня такая же проблема, вроде,
все пользователи логин которых написан кириллицей(коих большинство) не активны в настройки группы они есть, но с примечанием
остальные (на латинице) активны и даже заходят через клиент
А пробовал я разные базы и встроенную в том числе
Вот может есть какое_нибудь решение этой ситуации (только не переделка всех пользователей на английский логин)
Автор: DeisGood
Дата сообщения: 08.06.2015 13:49
Atsha
russpray

omsk_mail прав был когда подсказывал решение.
Дело именно в кодировке, судя по статье https://community.igniterealtime.org/thread/34403
. Там та же ошибка, но там пишут что если пользователь авторизуется на сервере под этим логином, на который ругается всё будет хорошо.
Однако имея русский логин авторизоваться не получиться. По моим ощущениям опенфайер воспринимает логин в русской кодировке как - ???????@myserver. Соответственно авторизацию пользователь пройти не может.
Рекомендуемое везде решение перекодировать базу опенфайера в utf-8. Как это сделать со встроенной базой, не подскажу.
Автор: russpray
Дата сообщения: 08.06.2015 16:40
Вот скрины показывают что при утф 8 происходит http://s015.radikal.ru/i333/1506/48/f2803745dda2.png
http://s020.radikal.ru/i722/1506/9a/552c9934f805.png
Автор: ssi
Дата сообщения: 08.06.2015 21:25
DeisGood

Цитата:
ssi
Если имя компьютера на котором установлен Openfire не меняется. Просто скопировать папку Openfire в новую систему и запустить установку, он всё автоматически подхватит .

спасибо!
Подскажите, а если внутренняя база openfire на 80 юзеров с LDAP авторизацией это плохо? Лучше ее на SQL пересадить или так сойдет?
И второе, а если имя машины сменится да еще с переносом базы на SQL тогда как?

Автор: alexeySTP
Дата сообщения: 08.06.2015 23:18
Вечер добрый!
Хотел установить Openfire на Debian, но наступил на грабли - не открывается админка. Да и открытого порта 9090 я тоже не вижу... В чем проблема??? В Java? Или точнее - в JAVA_HOME??? Или есть еще какие-то нюансы??? Как ее заставить запуститься? Опытные, дайте совет! Перечитывать все ветки - нереально! Google мало помог. Что пробовать?
Спасибо!
Автор: DeisGood
Дата сообщения: 09.06.2015 05:04
ssi
Да почему плохо, у нас 5 доменов в самом крупном около 100 пользователей, общий список составляет около 400 пользователей, проблем никаких нет, все работает быстро и без нареканий на встроенной базе.

Недавно в одном из доменов переносили опенфайера с сервера на сервер (т.е. имя компа поменялось) все прошло ровно и без проблем. Вы же на клиентах в мессенджерах указываете на какой сервер коннектится, а само внутреннее название сервера (в jid после @ ) может быть каким в голову взбредет и может не совпадать с именем самого компьютера. Так что и по второму варианту не проблема.

russpray
Я вчера не поленился добавил пользователя с кириллицей в логине, получил тот же эффект что и у Вас на первом скрине.
Вот что в логе Openfire:

Код: 2015.06.08 22:54:07 org.jivesoftware.openfire.roster.Roster - Groups ([jabber_bb]) include non-existent username (&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;)
Автор: russpray
Дата сообщения: 09.06.2015 08:08

Цитата:
russpray
Я вчера не поленился добавил пользователя с кириллицей в логине, получил тот же эффект что и у Вас на первом скрине.  
Вот что в логе Openfire:

Код:
2015.06.08 22:54:07 org.jivesoftware.openfire.roster.Roster - Groups ([jabber_bb]) include non-existent username (&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;)  

Не находит опенфайер его в домене, но у Вас же база на SQL, вот это пробовали?


пробовал только на postgre
эффекта нет или что-то с базой не то
попробую mysql пошагово посмотрим как будет
Автор: DeisGood
Дата сообщения: 09.06.2015 09:03
Блин, в теории, например здесь написано:

Цитата:
Jabber поддерживает юникод, по-этому допустимо использование кириллицы в качестве JID. Однако, этого делать не рекомендуется, так как большинство серверов всё-таки кириллицу не поддерживают.

Может в данном случае Openfire и не поддерживает.

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041

Предыдущая тема: DFL-260E не получает IP по DHCP


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.