Jabber-сервер для нескольких доменов

Дата: 5.04.2009

Рубрики: *NIX, Technology

Продолжаю цикл заметок о

Давайте рассмотрим следующую ситуацию, есть два проекта один — корпоративный сайт (super-corp.ru, второй — информационно развлекательный портал (super-portal.ru), оба принадлежат одной конторе и для каждого нужно сделать Естественно — для корпоративного сайта нужно чтобы он был в домене super-copr.ru и на нем нельзя было регистрироваться кому попало, а для портала напротив нужно разрешить публичную регистрацию. Ставить два сервера было бы весьма расточительно в плане расхода ресурсов и материальных средств, но разработчики сервера ejabberd позаботились о такой ситуации, данный сервер умеет работать с т.н. виртуальными хостами, позволяя их по разному настраивать, назначать разных администраторов и т.п. Сегодня на простом примере мы рассмотрим как эту функцию можно использовать.

Как всегда возьмем самый обычный VDS, под управлением ОС FreeBSD.

Лирическое отступление:

Почему я всегда ставлю на VDS? Да все просто, потому что аренда сервера требует более серьезных денежных вливаний, а ставить свои эксперименты на живом сервере, где помимо моих крутятся еще чьи-то сайты мне не позволяет воспитание. Естественно если требуется обслуживание большого количества клиентов нужно арендовать выделенный сервер в Швейцарии. Почему в Швейцарии, да просто так, как пример.

Ejabberd мы уже установили и настроили в одной из предыдущих статей, поэтому останавливаться на этом смысла нет.

Идем в конфигурационный файл /usr/local/etc/ejabberd/ejabberd.cfg и ищем там

% Host name:
{hosts, ["domain.ru"]}.

Приводим вот к такому виду.

% Host name:
{hosts, ["domain.ru", "domain2.ru"]}.

Идем в начало конфига, ищем

{acl, admin, {user, «admin»}}.

Приводим к виду

{acl, admin, {user, «admin», «domain.ru»}}.

Это нужно чтобы администратор имел доступ к администрированию всех доменов, обслуживаемых сервером.

И что же это нам даст? А даст нам это возможность иметь разные настройки для разных доменов

{host_config, «domain.ru»,
[
{access, register, [{allow, all}]}
]
}.
{host_config, «domain2.ru»,
[
{access, register, [{deny, all}]}
]
}.

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

Связанные записи

Метки: , , ,

Комментариев нет на запись "Jabber-сервер для нескольких доменов"

Ваш комментарий может быть первым :) .

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

Имя:
E-mail:
Сайт:
Вы можете использовать OpenID
или зарегистрироваться.