Установка jabber-сервера в локальной сети

()

Jabber это открытый протокол для быстрого обмена сообщениями и информацией о присутствии между любыми двумя пользователями сети. В последне время jabber становится всё более популярным, что можно объяснить его простотой и открытостью.

Очень часто jabber используется как средство обмена сообщениями и файлами внутри компании. В этом случае можно сильно экономить на трафике, поскольку весь обмен сообщениями и файлами идёт только внутри локальной сети (в отличии от ICQ/Yahoo!/MSN, когда сообщения передаются через центральный сервер, установленный за пределами вашей локальной сети).

В этой заметке будет описан запуск простого jabber-сервера для локальной сети. В качестве сервера будет использован jabberd-1.4, который хоть и считается устаревшим, является одним из самых простых в настройке, и при этом стабильных серверов. В качестве операционной системы будет использована Gentoo Linux, однако приводимые тут инструкции в большинстве случаев будут справедливы и для других дистрибутивов.

Итак, приступаем к установке. Наверное сразу хочется выполнить команду:

emerge net-im/jabberd

Однако это не правильно, поскольку по умолчанию jabberd собирается с поддержкой ipv6, и отказывается запуска если у вас нет ipv6-адреса ни на одном из интерфейсов. Кроме того, поскольку мы собираем самый простой сервер, нам можно выключить так же поддержку различных баз данных и SSL (В локальной сети SSL не очень актуально). Для этого нужно добавить в файл /etc/portage/package.use строчку:

net-im/jabberd -ipv6 -mysql -postgres -ssl

И только после этого наконец можно выполнить команду:

emerge net-im/jabberd

После установки открываем в любом редакторе файл /etc/jabber/jabberd.xml и приступаем к настройке сервера.

Для начала находим строчку:

<host><jabberd:cmdline flag="h">localhost</jabberd:cmdline></host>

И заменяем в ней localhost, на имя нашего сервера:

<host><jabberd:cmdline flag="h">jabber.company.net</jabberd:cmdline></host>

В принципе этого достаточно. Далее вы можете поправить по своему усмотрению информационные сообщения сервера. Так же можно запретить авторизацию открытым текстом, закомментировав строку:

<mod_auth_plain>/usr/lib/libjabberdsm.so</mod_auth_plain>

Для тех кто не силён в XML, приведу пример закомментированной строки:

<!--
<mod_auth_plain>/usr/lib/libjabberdsm.so</mod_auth_plain>
-->

Всё. Теперь можно запускать jabber-сервер:

rc-update add jabber default
/etc/init.d/jabber start

Если на сервере настроен файрволл, то нужно разрешить доступ к порту 5222 со стороны локальной сети:

iptables -A INPUT -m tcp -p tcp --dport 5222 -s 192.168.0.0/255.255.255.0 -j ACCEPT

Кроме того, если вы хотите взаимодействовать с другими jabber-серверами, то вам нужно открыть порт 5269 для всех:

iptables -A INPUT -m tcp -p tcp --dport 5269 -j ACCEPT

После чего нужно сохранить правила iptables:

/etc/init.d/iptables save

Если вы хотите отключить публичную регистрацию, то раскомментируйте строчку:

<noregister/>

И закомментируйте строки:

<register notify="yes">
  <instructions>Choose a username and password to register with this server.</instructions>
  <name/>
  <email/>
</register>

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

/etc/init.d/jabber restart

Надеюсь что эти инструкции будут для вас полезными.

Ключевые слова: jabber, jabberd, iptables.

Подписаться на обновления: RSS-лента Канал в TamTam Telegram канал Канал в ICQ

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

Новый комментарий

Жирный текстКурсивный текстПодчёркнутый текстЗачёркнутый текстПрограммный кодСсылкаИзображение




© 2006-2024 Вадим Калинников aka MooSE
Политика конфиденциальности