Jabber сервер под Ubuntu (EJabberd)

Дата публикации: 02-04-2012 | Автор: MelfisFettel | Рубрика: Ubuntu Server

Установка Jabber сервера на Ubuntu LinuxОчень часто внутри предприятия требуется организовать обмен сообщениями, так что бы они (эти сообщения) не покидали пространства сети самого предприятия. Вариантов организовать обмен такого рода на самом деле просто великое количество. Кто то покупает программы для обмена сообщениями типа Vypress Chat и п.р. Кто то регистрирует всех в ICQ или каком то другом месседжере типа MSN, и так далее. Если на вашем предприятии есть Ubuntu Server (В принципе подойдет большинство *nix подобных систем), то наверное установка Jabber сервера будет одним из лучших решений. Кроме того для использования сервисов типа ICQ, пришлось бы подключать пользователей к сети интернет, ну или подключать клиента через прокси, это было бы не совсем «корпоративно». Ведь пользователь может сидеть в ICQ и общаться «не по работе», а впустую. В этой статье пойдет речь об установке Ejabberd сервера.

Сразу хочу оговорится. Ejabberd сервер позволяет производить не только обмен сообщениями внутри корпоративной сети, но так же может выступать в роли транспортного сервера к другим сервисам сети интернет, например ICQ или IRC. Да и кроме того, в Ejabberd есть возможность авторизации через LDAP, что позволит вам использовать для авторизации пользователей Active Directory, эта функция может оказаться чрезвычайно полезной.

Установка Ejabberd сервера как всегда производится всего одной командой, и так для начала:

1
2
sudo apt-get update
sudo apt-get upgrade
sudo apt-get update
sudo apt-get upgrade

Установим сам Jabber сервер:

1
sudo apt-get install ejabberd
sudo apt-get install ejabberd

Сервер установлен, теперь выполним предварительные настройки для работы пользователей. Все настройки Ejabberd хранит в файле по адресу:

1
/etc/ejabberd/ejabberd.cfg
/etc/ejabberd/ejabberd.cfg

Открываем этот файл:

1
sudo nano /etc/ejabberd/ejabberd.cfg
sudo nano /etc/ejabberd/ejabberd.cfg

И в первую очередь раскомментируем строку:

1
override_local.
override_local.

Двигаясь вниз по файлу, найдите строку

1
2
%% Admin user
{acl, admin, {user, «», «localhost»}}
%% Admin user
{acl, admin, {user, «», «localhost»}}

Приводим эту строку к такому виду (Указав имя администратора сервера Jabber и DNS имя локального компьютера. У меня это Jadmin — имя администратора Jabber сервера и Jserver — имя локального компьютера.)

1
2
%% Admin user
{acl, admin, {user, «JAdmin», «Jserver»}}
%% Admin user
{acl, admin, {user, «JAdmin», «Jserver»}}

Теперь двигаемся еще ниже и находим строку:

1
2
%% Hostname
{hosts, [«SERVER NAME»]}
%% Hostname
{hosts, [«SERVER NAME»]}

Вместо SERVER NAME вводим DNS имя компьютера. (В моем случае это Jserver). Вот что у меня вышло:

1
2
%% Hostname
{hosts, [«Jserver»]}
%% Hostname
{hosts, [«Jserver»]}

Теперь разрешим пользователям регистрироваться на сервере самостоятельно, без Вашего участия. Спускаемся к секции:

1
%%% ACCESS RULES
%%% ACCESS RULES

Находим там строку:

1
{access, register, [{deny, all}]}
{access, register, [{deny, all}]}

и приводим ее к виду:

1
{access, register, [{allow, all}]}
{access, register, [{allow, all}]}

Теперь сменим Вашему серверу «язык по умолчанию». Ниже ищем:

1
{language, «en»}
{language, «en»}

и меняем соответственно на

1
{language, «ru»}
{language, «ru»}

Так как у нас корпоративный сервер, то все пользователи должны видеть друг друга не добавляя контакты вручную. Согласитесь, было бы не удобно если бы корпоративная сеть состояла скажем из 100 пользователей, и каждому из них пришлось бы добавлять друг друга. По этому настроим сразу общую группу для нашего Jabber сервера. Так что, ниже ищем строку:

1
%%{mod_shared_roster, []}
%%{mod_shared_roster, []}

и просто ее раскомментируем:

1
 {mod_shared_roster, []}
 {mod_shared_roster, []}

На этом настройка закончена. Сохраняем изменения в Вашем файле конфигурации и закрываем его.

Далее Вам нужно зарегистрировать учетную запись администратора для Jabber сервера. Вводим в консоль следующую команду:

1
sudo ejabberdctl register Jadmin Jserver Jadmin_password
sudo ejabberdctl register Jadmin Jserver Jadmin_password

где:

Jadmin — Имя пользователя администратора. Мы его указывали в файле конфигурации.
Jserver — Так же был указан в файле конфигурации.
Jadmin_password — Пароль для администратора Jabber сервера.

Теперь перезапускаем сервер командой:

1
sudo /etc/init.d/ejabberd restart
sudo /etc/init.d/ejabberd restart

Теперь нам требуется настроить сам список в общей группе о которой я говорил выше.
Для этого мы используем Web интерфейс настройки Jabber сервера. Перейдите в браузере на
http://Jserver:5280/admin/ и введите имя администратора Jabber сервера.

Так как мы с вами указали уже что сервер должен работать на русском языке, то думаю в дальнейшем у нас не возникнет проблем. Переходим на вкладку Virtual Hosts, и кликаем в правой части окна на имя вашего сервера. В моем случае это Jserver.

Переходим на вкладку «Группы общих контактов», Вводим имя группы и нажимаем «Добавить»

Общая группа в Jabber. Ubuntu server + Ejabberd

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

Установка Jabber сервера в Ununtu

Вот в принципе и все. Более пожалуй никаких настроек производить не надо. Если Вам нужно производить авторизацию на основании LDAP то найдите в конфигурационном файле сервера EJabberd секцию:

1
%% Authentication using LDAP
%% Authentication using LDAP

Так же не мешало бы изменить приветственное сообщение Вашего сервера. Оно находится в том же файле, в строке почти в самом конце файла:

1
{welkome_message, 
{welkome_message, 

Для работы с Вашим сервером вы можете использовать любой месседжер поддерживающий XMPP.

Понравилась статья? Расскажи друзьям:


Комментариев (1)

Конечно, спору нет.

Обсудить