7 февраля 2011 г.

Openfire

у меня уже проскальзывали маленькие заметки по его поводу
текущая не будет намного больше, но некоторые моменты будут рассмотрены более подробно
просто понадобилось вновь поставить данную систему, а я уж и подзабыл немного

Итак.
Ставим на windows server 2003, версия openfire - 3.6.4
Использовать будем ms sql express 2005 в качестве базы для хранения данных.
А также авторизацию пользователей в Active Directory.

Устанавливаем ms sql express 2005. Способ авторизации вначале я выбрал - авторизация Windows.
Создаем базу openfire с помощью Среда SQL Server Management Studio Express.
Выполняем в ЭТОЙ базе (обратить внимание) скрипт, предназначенный для ms slq (лежит в папке Openfire, в подпапке \resources\database

Также необходимо в настройках sql-сервера включить ip протокол, причем на всех интерфейсах, пока этого не сделал - не работало.
Проверить можно с помощью телнета
telnet localhost [порт]
Потом я создал в AD пользователя jabber, для аутентификации на сервере баз данных.
Но не пошло..
Копался-копался, сделал вывод, что если используете базу на Microsoft SQL, то пользователя на управление ей надо заводить в ней самой. С доменной учеткой Openfire категорически цепляться не хочет.
Создал учетку jabber на sql-сервере.
Дал ей полные права на базу openfire, и права sysadmin.
После этого при настройке базы стало пускать.

Строка для подключения базы у меня такая
jdbc:jtds:sqlserver://localhost:1433/openfire;appName=jive

При подключении к AD Base DN такой - DC=domen,DC=ru
И вот тут уже использовал учетку из AD - jabber, для связи.

Фильтры для юзеров и групп при установке не вводил, применял уже после установки
Для юзеров
(&(objectCategory=Person)(memberOf=CN=IMUsers,CN=Users,DC=domen,DC=ru)) 

таким образом берем только тех юзеров, которые есть в группе безопасности IMUsers

Для групп
(&(objectClass=group)(|(cn=IT)(cn=Отдел маркетинга)(cn=Отдел продаж))) 

и тп т.е. берем только те группы безопасности, которые указаны выше.

А вот затем возникли проблемы. Был скачан клиент citron для прозрачной авторизации доменных пользователей на сервере. Потом вспомнил, что сначала необходимо применить патч для NTLM. Как это делать - не помнил, потому действовал по инструкции в файле install и по найденным хау-ту в интернете. Итог - в админку не пускает =) После нескольких перестановок - вроде пустил. Хорошая инструкция здесь 
Приведу ее текст.

1) В каталоге Openfire найдите и откройте для редактирования файл \jre\lib\security\java.security. После строк
security.provider.8=sun.security.smartcardio.SunPCSC
security.provider.9=sun.security.mscapi.SunMSCAPI

добавьте строку
security.provider.10=net.za.darkskies.security.sasl.SSPIProvider

2) Далее потребуется NTLM-патч, который необходимо скачать и распаковать. Скопируйте из него файлы в соответствующие подкаталоги сервера:
bin\SaslSspi.dll
lib\sasl-sspi.jar
plugins\saslmechanisms.jar

и перезапустите сервер.

3) В веб-консоли сервера создайте/измените параметры (имя – значение)
sasl.approved.realms - пусто
sasl.mechs - ANONYMOUS,PLAIN,NTLM
sasl.realm - NetBIOS имя домена
xmpp.fqdn - FQDN имя джаббер-сервера

перезапустите сервер

Все сам сервак настроен. Теперь осталось прописать DNS записи на серваке чтобы конектится к нашему серваку, а не к домену =) Взято здесь.

заходим в оснастку DNS и прописываем там SRV записи
служба _xmpp-server протокол _tcp порт 5269 наш.комп.домен.
служба _xmpp-client. протокол _tcp порт 5222 наш.комп.домен.
служба _jabber. протокол _tcp порт 5269 наш.комп.домен.

(для нашего компа должна быть запись А)

При желании запустите 
openfire-service /install

из каталога Openfire\bin для того, чтобы сервер встал как служба Windows.

Также использовались в работе следующие источники: 

Если кого-то забыл - прошу прощения =)

1 комментарий:

  1. работает если запустить OpenFire Server , а как служба работать не хочет.. к серверу не подключается, хотя если запустить админку с самой машины то все работает, но если запустить spark не видно никаких пользователе...
    не понимаю что за глюк

    ОтветитьУдалить