ejabberd:有没有办法配置不同的“cookie”?比“ejabberd”?

发布于 2024-08-04 21:08:35 字数 370 浏览 4 评论 0原文

我正在构建一个 ejabberd 模块。我需要此模块对同一 LAN (sname) 上的另一个节点执行 RPC 调用。据我了解,ejabberd 配置它拥有“cookie”,当然,它与我用于其他节点的 cookie 不同。

有没有办法强制 ejabberd 使用另一个 cookie?

编辑:ejabberd 在“ejabberd”用户名下启动其守护进程。

编辑:即使使用适当的cookie创建/home/ejabberd/.erlang.cookie(用户名:ejabberd,组:ejabberd),它仍然不起作用。

编辑:解决问题的一种方法(不太好)是将预期的 .erlang.cookie 文件复制(具有适当的权限)到 /var/lib/ejabberd

I am building an ejabberd module. I require this module to perform RPC calls to another node on the same LAN (sname). From what I understand, ejabberd configures it owns "cookie" which, of course, will differ from the cookie I use for my other nodes.

Is there a way to force ejabberd to use another cookie?

EDIT: ejabberd starts its daemon under the "ejabberd" username.

EDIT: even when creating /home/ejabberd/.erlang.cookie (username: ejabberd, group: ejabberd) with an appropriate cookie it still does not work.

EDIT: one way to go around the problem (which isn't so nice) is to copy (with the proper permissions) the intended .erlang.cookie file to /var/lib/ejabberd

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

南街九尾狐 2024-08-11 21:08:35

ejabberdctl 脚本设置主目录,以便 cookie 文件位于 /var/lib/ejabberd/.erlang.cookie。 Erlang 本身会检查文件的权限,因此它们必须是正确的。

您有几个选项可以强制使用特定的 cookie:

  • 更改文件的内容 - ejabberd 不会更改它。
  • 更改 ejabberdctl 脚本,以便将 -setcookie 'SomeCookieValue' 传递给 erl。
  • 更改 ejabberdctl 以设置不同的主目录。

如果 cookie 文件不存在,则会创建该文件,但如果存在,则不会在背后更改它。构建 ejabberd 集群或通过 erlang 发行版与 ejabberd 集成需要使用通用 cookie。

The ejabberdctl script sets the home directory so that the cookie file lives at /var/lib/ejabberd/.erlang.cookie. Erlang itself checks the permissions of the file, so they must be correct.

You have a few options to force the use of a particular cookie:

  • Change the contents of the file - ejabberd won't alter it.
  • Change the ejabberdctl script so that it passes -setcookie 'SomeCookieValue' to erl.
  • Change ejabberdctl to set a different home directory.

The cookie file will be created if it doesn't exist, but won't be changed behind your back if it does exist. Using a common cookie is required to build ejabberd clusters or to integrate with ejabberd via erlang distribution.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文