ejabberd сервисы (доступность для всех)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

banzai
Сообщения: 18

ejabberd сервисы

Сообщение banzai »

Подскажите, плз, хочу сделать сервисы своего джаббер-сервера доступными для всех юзеров, в т.ч. которые зарегистрированы на других серверах. Больше всего интересует MUC - чтоб в конференциях могли все учавствовать. Под учеткой своего сервера могу зайти в MUC на jabber.ru. А под учеткой с jabber.ru на свой сервер зайти не могу - пишет сервер не доступен. Хотя просто общаться (соединение сервер-сервер) работает нормально. Использую ejabberd 1.1.2, Debian Etch с последними обновлениями. Вот пример моего конфига:

Код:

override_global. override_local. override_acls. {acl, admin, {user, "admin", "my_server.org"}}. {hosts, ["my_server.org"]}. {acl, local, {user_regexp, ""}}. {access, pubsub_createnode, [{allow, all}]}. {access, configure, [{allow, admin}]}. {access, register, [{allow, all}]}. {welcome_message, {"Welcome!", "Welcome to Debian Jabber Service. " "For information about Jabber visit http://jabber.org"}}. {access, announce, [{allow, admin}]}. {access, c2s, [{deny, blocked}, {allow, all}]}. {shaper, normal, {maxrate, 1000}}. {shaper, fast, {maxrate, 50000}}. {access, c2s_shaper, [{none, admin}, {normal, all}]}. {access, s2s_shaper, [{fast, all}]}. {access, muc_admin, [{allow, admin}]}. {access, muc, [{allow, all}]}. {access, local, [{allow, local}]}. {auth_method, internal}. {max_user_sessions, 10}. {language, "ru"}. {listen, % Ordinary client-2-server service [{5222, ejabberd_c2s, [{access, c2s}, {max_stanza_size, 65536}, starttls, {certfile, "/etc/ejabberd/ejabberd.pem"}, zlib, {shaper, c2s_shaper}]}, % SSL-enabled client-2-server service {5223, ejabberd_c2s, [{access, c2s}, {max_stanza_size, 65536}, tls, {certfile, "/etc/ejabberd/ejabberd.pem"}, {shaper, c2s_shaper}]}, % Server-2-server service {5269, ejabberd_s2s_in, [{shaper, s2s_shaper}, {max_stanza_size, 131072}]}, % HTTP service (You may choose options HTTP-polling and Web-administering) % When commenting out, be careful with commas {5280, ejabberd_http, [http_poll, web_admin]} ]}. % Use STARTTLS+Dialback for S2S connections {s2s_use_starttls, false}. {s2s_certfile, "/etc/ejabberd/ejabberd.pem"}. %{domain_certfile, "example.org", "/etc/ejabberd/example_org.pem"}. %{domain_certfile, "example.com", "/etc/ejabberd/example_com.pem"}. % If SRV lookup fails, then port 5269 is used to communicate with remote server {outgoing_s2s_port, 5269}. % Used modules: {modules, [ {mod_adhoc, []}, {mod_announce, [{access, announce}]}, % Depends on mod_adhoc {mod_register, [{access, register}]}, {mod_roster, []}, {mod_privacy, []}, {mod_configure, []}, % Depends on mod_adhoc {mod_configure2, []}, % {mod_disco, [{extra_domains, ["users.jabber.org"]}]}, {mod_disco, []}, {mod_stats, []}, {mod_vcard, []}, {mod_offline, []}, % {mod_echo, []}, {mod_private, []}, {mod_irc, []}, % Default options for mod_muc: % host: "conference." ++ ?MYNAME % access: all % access_create: all % access_admin: none (only room creator has owner privileges) {mod_muc, [{access, muc}, {access_create, muc}, {access_admin, muc_admin}]}, % {mod_muc_log, []}, % {mod_shared_roster, []}, {mod_pubsub, [{access_createnode, pubsub_createnode}]}, {mod_time, []}, {mod_last, []}, {mod_version, []} ]}. % vim:set ft=erlang: % Local Variables: % mode: erlang % End:
Спасибо сказали:
Аватара пользователя
Alexxx
Сообщения: 892
Статус: --==XXX==--
ОС: Archlinux current

Re: ejabberd сервисы

Сообщение Alexxx »

1. Судя по всему, дело в файерволе. Нужно открыть наружу порты 5222, 5223, 5269.
2. Имя твоего сервера ресольвится?
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

Нужно открыть наружу порты 5222, 5223, 5269.

Если не требуется клиентом снаружи логиниться на этот сервер, первые два порта можно не открывать.
Спасибо сказали:
Аватара пользователя
Alexxx
Сообщения: 892
Статус: --==XXX==--
ОС: Archlinux current

Re: ejabberd сервисы

Сообщение Alexxx »

rm_ писал(а):
27.01.2009 08:06
Нужно открыть наружу порты 5222, 5223, 5269.

Если не требуется клиентом снаружи логиниться на этот сервер, первые два порта можно не открывать.
+1, но
хочу сделать сервисы своего джаббер-сервера доступными для всех юзеров, в т.ч. которые зарегистрированы на других серверах
ответил as is as.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

Alexxx писал(а):
27.01.2009 08:31
хочу сделать сервисы своего джаббер-сервера доступными для всех юзеров, в т.ч. которые зарегистрированы на других серверах
ответил as is as.

В общем да, если вообще все сервисы, в том числе и коннект непосредственно к серверу со сторонних клиентов...
Но чтобы MUC и всякие транспорты сделать доступными, клиентские порты можно не открывать.
Спасибо сказали:
banzai
Сообщения: 18

Re: ejabberd сервисы

Сообщение banzai »

Alexxx писал(а):
27.01.2009 07:58
1. Судя по всему, дело в файерволе. Нужно открыть наружу порты 5222, 5223, 5269.
2. Имя твоего сервера ресольвится?


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

Сам сервер прямого доступа в инет не имеет - выходит через нат роутера. Роутер устанвливает соединение с инетом через DSL, айпишник динамический, обновляется через dyndns.com. Нужные порты пробрасываются с роутера на сервер с джабером. На этом же сервере отлично работает апач, доступен для всего инета.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

banzai
А как Вы пробуете заходить на MUC?
Если conference.вашсервер.org, то разве есть такой DNS-адрес?
Спасибо сказали:
banzai
Сообщения: 18

Re: ejabberd сервисы

Сообщение banzai »

rm_ писал(а):
27.01.2009 08:55
banzai
А как Вы пробуете заходить на MUC?
Если conference.вашсервер.org, то разве есть такой DNS-адрес?


Если есть вашсервер.org, то и есть conference.вашсервер.org, я так понимаю? К тому же если я захожу под учеткой, зарегистрированой на своем сервере, то conference.вашсервер.org открывается нормально и все сервисы доступны. Причем захожу с другого места в инете, не из локальной сети.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

Если есть вашсервер.org, то и есть conference.вашсервер.org, я так понимаю?

С чего бы это вдруг. Попробуйте в консоли

Код: Выделить всё

host вашсервер.org
ping вашсервер.org
host conference.вашсервер.org
ping conference.вашсервер.org


К тому же если я захожу под учеткой, зарегистрированой на своем сервере

Он-то сам знает, что у него где, а вот другим серверам могут потребоваться подсказки.
Спасибо сказали:
banzai
Сообщения: 18

Re: ejabberd сервисы

Сообщение banzai »

PING вашсервер.org (00.00.00.00) 56(84) bytes of data.
64 bytes from 00.00.00.00: icmp_seq=1 ttl=64 time=0.514 ms

ping: unknown host conference.вашсервер.org

rm_ писал(а):
27.01.2009 09:10
Он-то сам знает, что у него где, а вот другим серверам могут потребоваться подсказки.

Можно подробнее?
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

Можно подробнее?

Я бы попробовал на dyndns завести ещё одно имя, чтобы существовал не только вашсервер.dyndns.com, но и conference.вашсервер.dyndns.com. Оба указывающие на один и тот же адрес.
Спасибо сказали:
banzai
Сообщения: 18

Re: ejabberd сервисы

Сообщение banzai »

Все, решил проблему. Надо было в настройках аккаунта dyndns поставить галочку Create wildcard alias for "*.host.domain.tld". Всем большое спасибо =)
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

Все, решил проблему. Надо было в настройках аккаунта dyndns поставить галочку Create wildcard alias for "*.host.domain.tld". Всем большое спасибо =)

А, ну получилось то же самое, что и я выше писал (создался адрес conference..., идентичный основному).
Спасибо, теперь буду точно знать, что именно так и надо делать. :)
(джаббер-сервер у меня есть, но конференции на нём поднимать пока не пробовал)
Спасибо сказали:
Аватара пользователя
xman2005
Сообщения: 7
ОС: openSuse 11

Re: ejabberd сервисы

Сообщение xman2005 »

Поднял корпоративный ejabberd+pyICQt+mrim

ejabberd 2.0.3
pyicqt 0.8.1.2
mrim Revision 116

Python 2.5.4
Twisted 2.5.0
Imaging-1.1.6(PIL)

Проблема в том, что не видно аватарок/статуса ни у клиентов, ни мои

Может кто подскажет в каком направлении копать?
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

Проблема в том, что не видно аватарок/статуса ни у клиентов, ни мои

Под "клиентами" понимаются люди, сидящие через ICQ/mrim, или что?
Между двумя джаббер-эккаунтами на этом сервере, статусы и аватары видны?
Спасибо сказали:
Аватара пользователя
xman2005
Сообщения: 7
ОС: openSuse 11

Re: ejabberd сервисы

Сообщение xman2005 »

rm_ писал(а):
27.01.2009 11:56
Под "клиентами" понимаются люди, сидящие через ICQ/mrim, или что?
Между двумя джаббер-эккаунтами на этом сервере, статусы и аватары видны?

сорри
Между джаббер-эккаунтами на этом сервере все ок.
Не видно аватарки(всех), статус(только джабер клиентов нашего сервера) между нами и клиентами icq, mrim
У меня все сидят через Pandion, Psi.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: ejabberd сервисы

Сообщение rm_ »

xman2005
Я помню, что у PyICQt в конфиге включается/отключается поддержка аватаров. Посмотрите.
С сетью Mrim никогда не сталкивался (к счастью), поэтому не в курсе.
Спасибо сказали:
Аватара пользователя
xman2005
Сообщения: 7
ОС: openSuse 11

Re: ejabberd сервисы

Сообщение xman2005 »

rm_ писал(а):
27.01.2009 12:05
xman2005
Я помню, что у PyICQt в конфиге включается/отключается поддержка аватаров. Посмотрите.

уже смотрел
по очереди все включал/отключал
не помогло
Спасибо сказали: