需要帮助在 Centos/RHEL7 上使用 SELinux 和反向代理安装 ejabberd

需要帮助在 Centos/RHEL7 上使用 SELinux 和反向代理安装 ejabberd

我一直在尝试让 Web 客户端通过启用了 SELinux 的 Centos7 上的反向代理 (HAProxy) 在推荐端口 (5281) 上使用 EJabberd。我不熟悉 SELinux 上下文规则。

基本问题似乎是 HAProxy 无法打开端口 5281。我安装了该ejabberd-selinux软件包,认为这对代理系统和运行 EJabber 的系统都有帮助。ejabberd-selinux 似乎配置了除 5281 之外的标准端口,我随后尝试自己配置 5281。

答案1

您不能让两个程序监听同一个端口。要么应该是ejabberd,要么应该是haproxy。通常,您会haproxy在前面放置ejabberd,因此,如果您希望客户端连接到端口 5281,那么这就是haproxy需要监听的端口。然后,ejabberd在某个任意端口上,您可以将该端口号放在backend的部分中haproxy.cfg

答案2

  1. 您可以检查 ejabberd 是否仅在 localhost 接口或所有接口上监听端口 5281。
  2. CentOS 7 自带了firewalld作为默认防火墙管理工具,你可以使用这项服务来允许/打开特定端口到你的服务器

防火墙

如何使用firewalld 在 centos 7 上设置防火墙

相关内容