如何解决ejabberd 配置:域与服务器/主机及其 SSL 证书
在 documentation basics 中,我们找到以下配置 hosts
YAML 元素的示例:
Serving one domain:
hosts: [example.org]
Serving three domains:
hosts:
- example.net
- example.com
- jabber.somesite.org
(以上当然只是两种不同的写YAML“列表”的方式,一次使用括号表示法,一次使用缩进加连字符表示法)。
稍后,我们看到:
## This ejabberd server has three vhosts:
hosts:
- one.example.org
- two.example.org
- three.example.org
这令人困惑。
据我所知,一个 XMPP 域(例如 example.com
)可以由多个 服务器 或 主机(例如 { {1}}、one.example.com
、two.example.com
)。
配置似乎混合了 XMPP 域和服务器。
- XMPP 域是从服务器名推导出来的吗?例如,如果我输入
three.example.com
,XMPP 域是one.example.org
- 还是example.org
? - 如果我只在
one.example.org
下提供域名,是否必须将域名映射到 DNS 中的实际 IP 端点?
此外,还将通过 Acme 请求 SSL 证书
- 这将是 XMPP 域 (
hosts
) 或服务器 (example.com
) 的证书还是通配符证书? - 如果我已经拥有
one.example.com
的网络服务器的证书,那么 Acme 服务(例如 Letsencrypt 的)会给我一个example.org
的证书吗?
解决方法
你甚至可以:
hosts:
- example.net
- example.com
- jabber.somesite.org
- one.example.org
- two.example.org
- three.example.org
- 11.22.33.44
这设置了 7 个不同的 XMPP 虚拟主机,每个都有自己的特定帐户、MUC 服务、PubSub 服务...
客户可以对 jon@example.net、tim@two.example.org、bot7@11.22.33.44 等帐户进行身份验证,...
作为系统管理员,您有责任设置 DNS,以便 XMPP 客户端知道 ejabberd 正在侦听它们的 IP 地址。除了 11.22.33.44 的 IP 地址,显然客户端已经知道要连接到哪里。
注意你可以让 ejabberd 为 one.example.org 服务,相同或不同的 XMPP 服务器,在相同或不同的机器上,为 11.example.org 提供服务
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。