Установка и настройка ejabberd

Установка для FreeBSD:
В /etc/make.conf прописываем
WITHOUT_JAVA=yes
WITHOUT_ODBC=yes
Это нужно чтобы erlang собрался без Java.
Далее как всегда
cd /usr/ports/net-im/ejabberd/ && make install clean

Для Debian всё гораздо проще:
aptitude install ejabberd

Настройка Ejabber
Открываем в любимом текстовом редакторе конфиг ejabberd.cfg Комментарии начинаются с %
% acess lists прописываем кто у нас будет админ. через запятую
{acl, admin, {user, "bum"}}.

% локальные пользователи, в данном случае все.
{acl, local, {user_regexp, ""}}.

% кто может создавать субноды, только админ
{access, pubsub_createnode, [{allow, admin}]}.

% кто конфигруить будет
{access, configure, [{allow, admin}]}.

% определение правил регистрации
{access, register, [{allow, all}]}.

% кто имеет право анонсировать сообщения пользователям
{access, announce, [{allow, admin}]}.

% доступ только для незаблокированных пользователей
{access, c2s, [{deny, blocked}, {allow, all}]}.

% правиля для MUC
{access, muc_admin, [{allow, admin}]}.
{access, muc, [{allow, all}]}.

% авторизация средствами ejabberd
{auth_method, internal}.

% hostname
{hosts, ["status.ks.ua"]}.

% язык по умолчанию для сообщений сервера
{language, "ru"}.

% порты которые будут открыты для ejabber
{listen,
[{5222, ejabberd_c2s, [{access, c2s}, 
{ max_stanza_size, 65536}, starttls, {certfile, "/etc/ssl/status.pem"}]},

{5223, ejabberd_c2s,[{access, c2s},
{max_stanza_size, 65536}, tls, {certfile, "/etc/ssl/status.pem"}]},

{5269, ejabberd_s2s_in, [{max_stanza_size, 131072}]},

% порт для доступа к web-admin {5280, ejabberd_http, [http_poll, web_admin, tls, {certfile, "/etc/ssl/status.pem"}]},

% этот порт будет использовать транспорт jabber <-> icq
{5347, ejabberd_service, [{access, all}, {hosts, ["icq.status.ks.ua"], [{password, "password"}]}]}
]}.

% пути к сертефикатам для соединений сервер <-> сервер
{s2s_use_starttls, true}.
{s2s_certfile, "/etc/ssl/status.pem"}.
{domain_certfile, "status.ks.ua", "/etc/ssl/status.pem"}.

% порт по умолчанию для соединений сервер <-> сервер
{outgoing_s2s_port, 5269}.

% модули выберите по вкусу. там я ничего не менял.

После всего запускаем сервис и смотрим логи. должно заработать.
регистрируем своего админа из любимого клиента и наслаждаемся жизнью.
Для продвинутых настроек и статистики используйте web-admin
https://hostname:5280/admin/ логин и пароль ваши, логин должен быть полный JID.
Настройка транспорта в ICQ

Каким бы убогим не был протокол, но многие им пользуются. Настроим для этого PyICQ.
Открываем конфиг jabber-pyicq.xml
<jid>icq.status.ks.ua</jid>
<spooldir>/var/spool/ejabberd</spooldir>
<pid>/var/spool/ejabberd/PyICQt.pid</pid>
<mainServer>IP servers</mainServer>
<port>5347</port>
<secret>password</secret>
<lang>ru</lang>
<encoding>windows-1251</encoding>
<icqServer>login.icq.com</icqServer>
<icqPort>5190</icqPort>
Стартуем сервис и наслаждаемся жизнью.
  • +1
  • 18 июня 2010, 11:58
  • BUM

Комментарии (3)

RSS свернуть / развернуть
Это нужно чтобы erlang собрался без Java.

А зачем эрлангу ява, если он может жить без неё?
0
  • avatar
  • Q2W
  • 19 июня 2010, 21:22
Вот поэтому мы ее и отключаемс)
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.