我已按以下方式在ejabberd中配置了mod_register_web模块..在listen部分添加了配置
{5281, ejabberd_http, [ %%tls, %% currently https not implemented %%{certfile, "/etc/ejabberd/certificate.pem"}, {request_handlers, [ {["register"], mod_register_web} ]} ]},
在模块部分
中添加了模块{mod_register_web,[]}
然后尝试了
http://localhost:5281/register/
和页面变得可用,没有任何身份验证意味着任何人都可以访问并可以添加用户。然后我试图用不同的组合来保证它的安全性。
{5281, ejabberd_http, [
http_bind,
http_poll,
web_admin,
{access, configure, [{allow, admin}]} %% actually admin has password
{request_handlers, [
{["register"], mod_register_web}
]}
]},
但它仍然没有要求任何密码。管理页面的端口5280受密码保护。任何人都可以指导我如何在mod_register_web模块上应用安全性,就像任何人通过IP访问那么它应该提示输入用户名和密码。
答案 0 :(得分:1)
可以通过修改源代码(mod_register_web.erl)来完成。
与'ejabberd_web_admin.erl'一样,调用get_auth_admin()并检查进程()的结果。