пятница, 4 марта 2016 г.

OpenFire Active Dirictory Ubuntu Server 14.04 MySQL

Давеча понадобилось скрафтить связку OpenFire+Active Dirictory+MySQL+архивирование логов. Как обычно я всё делаю на бубунте 14.04, штабильно, и всё  просто.

Так вот, выбор на openfire не зря пал, пушо он активно пилится, куча манов и все такое. Представим, что есть базовые навыки в сосольке, и мы имеем голую систему. Для начала нужно поставить Java, т.к. openfire без нее никак.

# apt-get install openjdk-7-jre-headless

потом проверочку
# java -version
и там все должно быть окей. И да, Java только 7-я, пушо с другими версиями нет дружбы.

Далее накатываем mysql

# apt-get install mysql-server

Во время установки будет реквестовать пас для рута, лучше вбить и записать/запомнить/етц

После установки, нужно создать БД, юзака в мускуле, и дать правушки (это надо все потом для openfire)

ну шо, понеслась!

# mysql -u root -p
Password: 
> CREATE DATABASE openfire CHARACTER SET='utf8';
> CREATE USER 'openfire'@'localhost' IDENTIFIED BY 'samepassword';
> GRANT ALL PRIVILEGES ON `openfire`.* TO 'openfire'@'localhost' WITH GRANT OPTION;
> FLUSH PRIVILEGES;
> quit

Так-с, система относительно готова для инсталяции самого openfire, теперь можно его скачать с сайта (к сожалению в официальных реапах его нет, так что ручками качаем, ручками ставим)

# wget -O openfire_4.0.1.deb http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_4.0.1_all.deb

После скачивания, ставим его 

# dpkg -i openfire_4.0.1.deb

В целом установка на этом этапе завершена. Теперь самое интересное - конфигурация самого openfire. Заходим на (предполагается, что создана dns-запись в соотвествующей зоне, с соотвествующим именем) http://myjbr.domain.com:9090
И тут всё в классике, Хэллоу, итс ми, го конфижиться, выбирай язык, создавай локального юзка. 

1. Выбираем язык (даже есть русский, но ломаный, и стремный, но есть)

2. Добавляем локального админа 
user: admin
pass: admin

3. Теперь подключение базы данных (мускул = внешняя БД)
3.1 База данных драйвера (чет-там): 
MySQL
3.2 Драйвер клас:
Тут чет стандартное, так что пофиг
3.3 База данных URL:  

jdbc:mysql://localhost:3306/openfire?characterEncoding=UTF-8

Т.е. само слово openfire в данной строчке обозначает имя базы данных. А вот то, что идет после вопросительного знака - дает нам возможность складировать логи, а потом читать их! Иначе одни ????? вместо нормальных исконно русских слов. 

3.4 Имя пользователя:
openfire
      Пароль:
**********
Жмем "ДАЛЬШЕ".

4. Подключение к Active Dirictory

Можно упороться, и подключиться через аккаунт Администратора, а можно создать отдельного юзака в AD, и получать учетки так. Отдельная учетка с точки зрения политики безопасности лучше, чем под админом работать. Я создал отдельного

Тип сервера:
Active Dirictory
Хост (можно ip, можно имя):
dc1.example.com
База DN:
DC=example,DC=com
Администратор DN:
CN=j-user,CN=Users,DC=example,DC=com
Пароль:
*******

На следующей странице настроек, нужно вместо uid вписать sAMAccountName в строчку с Profile settings
и жмакать ДАЛЕЕ (там тест, выхлоп, все дела)

Теперь надо в AD создать группу, допустим j-users, и эта группа будет 

5.  Настройка фильтров

Group field            cn
member field         member
Description field   description

и тут не всё! А жмем волшебную пимпу, 

Дополнительные настройки:
в поле  Filter 
вбиваем:

(&(objectClass=group)(cn=j-users))

И таким образом мы добавим только тех, кто в данной группе. 

6. Настройка закончена, если войти на данный джаббер-сервер, в списке доступных пользователей мы увидим.. никого! Потому что надо его создать.

Заходим в раздел Пользователи/группы, далее переходим в Группы, кликаем на единственную группу J-users

7. Ага, теперь перетягиваем ползунок
* Включить совместный список контактной группы
и в поле вбиваем имя этого списка roster к примеру. 
Далее жмем "Схоронить сия поделия", и у подключенных юзаков должен появиться список. 

8. Рекомендуется использовать клиент Psi+ или Pidgin, учетка добавляется следующим образом 

username@jbr.example.com

9. Архивация логов делается через плагин

Monitoring Service
Который доступен в списке доступных плагинов. После установки он не будет сразу писать логи! Надо это дело включить:


жмем
Archive one-to-one chats    *
Archive group chats            *

Логи не "налету" пишутся, а с небольшой задержкой. На этом пожалуй всё.

UPD 14.06.16

Можно меня поздравить с подключением. В общем, если кто-то юзает SAMBA AD DC, и openfire не коннектится, надо доставить два пакета, и сменить порт подключения к контроллеру домена. Т.е. устновить 636 порт, поставить Enable SSL

sudo apt-get install slapd ldap-utils


После этого должно работать.

Комментариев нет:

Отправить комментарий