Автор Тема: [Решено] Ejabberd не проходит авторизация при коннекте на внешний ip  (Прочитано 2948 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Онлайн gardarea51

Друзья, добрый день!
Есть работающий ejabberd, которым пользуются клиенты локальной сети. Возникла надобность подключиться извне, но в логах ругается на то, что авторизация провалена. Подскажите что не так в моем конфиге: override_global.
override_local.
override_acls.

{loglevel, 4}.
{hosts, ["gw.urfu-nsk", "5.x.x.8"]}.
{s2s_default_policy, deny}.

{listen,
 [
  {5222, ejabberd_c2s, [
                        {access, c2s},
                        {shaper, c2s_shaper},
                        {max_stanza_size, 65536},
                        {certfile, "/etc/ejabberd/ejabberd.pem"},
                        starttls
                       ]},
%  {5269, ejabberd_s2s_in, [
%                          {shaper, s2s_shaper},
%                          {max_stanza_size, 131072}
%                         ]},
  {5280, ejabberd_http, [
                         %%{request_handlers,
                         %% [
                         %%  {["pub", "archive"], mod_http_fileserver}
                         %% ]},
                         captcha,
                         http_bind,
                         http_poll,
                         %%register,
                         web_admin
                        ]}
 ]}.

%{s2s_use_starttls, true}.
%{s2s_certfile, "/etc/ejabberd/server.pem"}.

{auth_method, internal}.
{shaper, normal, {maxrate, 1000}}.
{shaper, fast, {maxrate, 50000}}.
{max_fsm_queue, 1000}.

{acl, admin, {user, "gard", "gw.urfu-nsk"}}.
{acl, local, {user_regexp, ""}}.

{access, max_user_sessions, [{10, all}]}.                             
{access, max_user_offline_messages, [{5000, admin}, {100, all}]}.     
{access, local, [{allow, local}]}.                                   
{access, c2s, [{deny, blocked}, {allow, all}]}.                   
{access, c2s_shaper, [{none, admin}, {normal, all}]}.
%{access, s2s_shaper, [{fast, all}]}.                                   
{access, announce, [{allow, admin}]}.                                   
{access, configure, [{allow, admin}]}.                                 
{access, muc_admin, [{allow, admin}]}.                                 
{access, muc_create, [{allow, local}]}.                               
{access, muc, [{allow, all}]}.                                       
{access, pubsub_createnode, [{allow, local}]}.                       
{access, register, [{deny, all}]}.                                 


{language, "ru"}.

{modules,
 [
  {mod_adhoc,    []},
  {mod_announce, [{access, announce}]},
  {mod_caps,     []},
  {mod_configure,[]}, %требует mod_adhoc
  {mod_disco,    []},
  %{mod_http_bind, []},
  {mod_last,     []},
  %{mod_muc,      [
  %               {host, "rooms.smb.urfu-nsk"},
  %               {access, muc},
  %               {access_create, muc_create},
  %               {access_persistent, muc_create},
  %               {access_admin, muc_admin}
  %              ]},
  {mod_offline,  [{access_max_user_messages, max_user_offline_messages}]},
  {mod_ping,     []},
  {mod_privacy,  []},
  {mod_private,  []},
  %{mod_register, [
  %               {welcome_message, {"Здравствуйте!","Добро пожаловать на наш jabber-сервер."}},
  %               {registration_watchers, ["gard@smb.urfu-nsk"]},
  %               {ip_access, [{allow, "192.168.2.0/24"}, {deny, "0.0.0.0/0"}]},
  %               {access, register}
  %              ]},
  {mod_roster,   []},
  {mod_shared_roster,[]},
  {mod_stats,    []},
  {mod_time,     []},
  {mod_vcard,    []},
  {mod_version,  []}
]}.

При попытке подключения к серверу как gard@5.x.x.8 принимаю сертификат, а потом получаю ошибку авторизации. В логах ejabberd следующее:=INFO REPORT==== 2016-05-11 10:49:49 ===
I(<0.386.0>:ejabberd_listener:281) : (#Port<0.2123>) Accepted connection {{5,199,193,231},62144} -> {{5,x,x,8},5222}

=INFO REPORT==== 2016-05-11 10:49:51 ===
I(<0.1037.0>:ejabberd_c2s:802) : ({socket_state,tls,{tlssock,#Port<0.2123>,#Port<0.2125>},<0.1036.0>}) Failed authentication for gard@5.x.x.8

=INFO REPORT==== 2016-05-11 10:49:52 ===
I(<0.1037.0>:ejabberd_c2s:649) : ({socket_state,tls,{tlssock,#Port<0.2123>,#Port<0.2125>},<0.1036.0>}) Failed authentication for gard@5.x.x.8

Как же к нему подключиться? =)
« Последнее редактирование: 12 Мая 2016, 19:16:42 от gardarea51 »
 

Оффлайн oermolaev

может не все необходимые порты открыты/проброшены?
5222, 5223, 5269 ?
 

Онлайн gardarea51

Открыты в том и дело, только что добавил порт 5269 как написали вы:
Chain tcp_allow (1 references)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 5222,5223,5269
Но все равно не авторизуется :(

Cообщение объединено 12 Мая 2016, 08:25:36
В общем разобрался, все дело в этом: {hosts, ["gw.urfu-nsk", "5.x.x.8"]}.Раз я подключаюсь извне, то указываю при подключении другой хост и для него нужно было зарегистрировать пользователя, уже другого.
Трабл в том, что не могу общаться с пользователями с хоста gw.urfu-nsk, ростер пуст.
« Последнее редактирование: 12 Мая 2016, 08:25:36 от gardarea51 »
 

Оффлайн endru

gardarea51, я использую Openfire, и проблема точно такие же, поэтому все пользователи у меня заведены по имени внешнего хоста, никаких подключений по IP адресу.

а у тебя получается все подключались по IP адресу локальной сети? как вариант перенаправляй трафик iptables на нужный интерфейс и нужный порт. но это костыль к сожалению...

Оффлайн oermolaev

У меня работает как по ip, так и по имени (dns потому что), сам сервер внутри сети на виртуальной машине, порты проброшены с помощью iptables (почему костыль?)
hosts прописан по доменному имени:
{hosts, ["domenname.net"]}.
« Последнее редактирование: 12 Мая 2016, 09:23:16 от oermolaev »
 

Онлайн gardarea51

У нас есть внешний белый IP, а вот полного доменного имени нет.
Потому юзал я локальную днс-зону.
 
Сейчас в админке ejabberd есть у меня два виртуальных хоста: gw.urfu-nsk (к которому подключены пользователи конторы) и 5.х.х.8 (внешний белый IP, к которому подключен я чеез созданную новую учетку). Не могу сообразить как я gard@5.x.x.8 могу общаться скажем с юзером user@gw.urfu-nsk.

Как вариант перерегать всех юзеров на новый вирт. хост по IP.

ps: в админке заметил, что в обоих виртуальных хостах есть пункт "Узлы" и в обоих хостах "Работающие узлы ejabberd@gw).
« Последнее редактирование: 12 Мая 2016, 09:42:22 от gardarea51 »
 

Оффлайн oermolaev

Я делал так. Виртуальный хост у меня один единственный. Но общаться я могу и с пользователями других серверов, например jabber.ru
« Последнее редактирование: 12 Мая 2016, 10:03:08 от oermolaev »
 

Онлайн gardarea51

А у меня вот получается два хоста, и как юзерам с одного хоста общаться с юзерами другого непонятно.
Изначально жабер делался для общения только в пределах локальной сети, так и появился хост gw.urfu-nsk.
Теперича надо подключиться к чату не из локальной сети, а из внехи. Вот так и нарисовался второй хост - белый IP.

Cообщение объединено 12 Мая 2016, 11:46:56
oermolaev, спасибо, точно-ж!
Добавил в хостс на своем ноутбуке адрес с алиасом gw.urfu-nsk и спокойно подключился к жаберу в соответствующий вирт. хост.
« Последнее редактирование: 12 Мая 2016, 11:46:56 от gardarea51 »
 

Теги:
     

    [Решено] Настройка CUPS

    Автор vel

    Ответов: 6
    Просмотров: 5424
    Последний ответ 10 Марта 2014, 02:57:31
    от PbI6A
    postfix + spamassassin [РЕШЕНО]

    Автор dsdsda

    Ответов: 1
    Просмотров: 1114
    Последний ответ 15 Апреля 2020, 12:44:15
    от ChubaDuba
    [Решено] Как настроить в /etc/network/interfaces два IPv6-адреса?

    Автор Gamliel

    Ответов: 12
    Просмотров: 1097
    Последний ответ 23 Июня 2020, 15:34:17
    от Gamliel
    [РЕШЕНО] Debian 7 на Hyper-V

    Автор fingerskillz

    Ответов: 6
    Просмотров: 3806
    Последний ответ 09 Ноября 2014, 10:06:59
    от fingerskillz
    [Решено] Установка apache

    Автор cia

    Ответов: 2
    Просмотров: 2581
    Последний ответ 28 Октября 2011, 13:24:37
    от cia