【问题标题】:XMPP, Ejebberd auth-mechanismXMPP,Ejebberd 身份验证机制
【发布时间】:2021-08-16 11:28:27
【问题描述】:

我想问一下是否有可能在 ejabberd 配置中强制使用身份验证机制。目前,ejabberd 服务器正在提供可用的身份验证机制列表。

在 ejabberd 日志中我们可以看到列表:

Send XML on stream = <<"<stream:features><mechanisms
xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>PLAIN</mechanism>
<mechanism>X-OAUTH2</mechanism><mechanism>SCRAM-SHA-1</mechanism>
</mechanisms><starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>
</stream:features>">>

一些用户(在我们的例子中是 CPE(路由器、机顶盒))能够使用 SCRAM-SHA,其中一些用户只能使用 PLAIN 方法等。

2021-07-20 14:42:09.763 [info]
<0.6716.0>@ejabberd_c2s:handle_auth_success:432 (tls|<0.6716.0>) Accepted
c2s SCRAM-SHA-1 authentication for acs01@test.ejabberd.com by sql backend
from 192.168.0.1
2021-07-20 14:42:31.765 [info]
<0.6721.0>@ejabberd_c2s:handle_auth_success:432 (tcp|<0.6721.0>) Accepted
c2s PLAIN authentication for 00b052101005@test.ejabberd.com by sql backend
from 88.229.19.19
2021-07-20 14:42:36.438 [info]
<0.6722.0>@ejabberd_c2s:handle_auth_success:432 (tcp|<0.6722.0>) Accepted
c2s SCRAM-SHA-1 authentication for 001565a36103@test.ejabberd.com by sql
backend from 103.217.240.30

是否可以强制 xmpp 服务器只提供一种方法?

【问题讨论】:

    标签: authentication xmpp ejabberd ejabberd-auth


    【解决方案1】:

    您可以使用以下方法禁用 SASL 机制 https://docs.ejabberd.im/admin/configuration/toplevel/#disable-sasl-mechanisms

    对于其他方法,查看源代码它们会自动启用/禁用: https://github.com/processone/ejabberd/blob/8afc320aba7bdb51f7a76973be2d9cbf200c6310/src/ejabberd_c2s.erl#L376

    当然,你可以简单的把你不想要的行删掉,重新编译安装。

    【讨论】:

    • 感谢您的回复,我在文档中完全忽略了这一点。
    猜你喜欢
    • 2014-10-31
    • 1970-01-01
    • 1970-01-01
    • 2016-06-04
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多