在 Ubuntu 14.04.4 LTS 上配置 Wildfly 10.0.0 Final 以侦听端口 80 的首选方法是什么?

Gar*_*Dan 2 jboss ubuntu-14.04

我使用这个脚本在 Ubuntu 14.04.4 LTS 上安装了 Wildfly 10.0.0 Final 。

一切看起来都很好。

我的问题是wildfly 正在侦听端口28080(脚本安装默认值),我可以更改为8080 更新standalone.xml。但是我希望wildfly 在端口80 上监听,但是将standalone.xml 更改为使用端口80 不起作用。

看起来只有 root 可以侦听低于 1024 的端口,所以,问题是,在 Ubuntu 服务器上配置 Wildfly 以侦听端口 80 的首选方法是什么?

我试过用nginx也可以,但是奇怪的是有些文件,比如jboss默认主页的css,找不到。

HBr*_*ijn 5

developer.jboss.org上的 JBoss wiki列出了相当全面的选项列表,这些选项可能也适用于 Wildfly;主要变体:

  • 将应用程序服务器保持在非特权端口上,并使用在特权端口上侦听的东西将请求转发到该端口:
    • 即反向代理或负载平衡器
    • 即配置端口转发

这两个似乎是最常见的选择,而且非常受欢迎。

替代方案是:

  • 以 root 身份启动应用程序服务器以绑定到特权端口(不是很安全,而且是一个坏主意TM
  • 以 root 身份启动应用程序服务器以绑定到特权端口,然后删除特权并以非特权普通用户身份运行,对此我还没有找到文档支持。

最后但并非最不重要的是我个人最喜欢的:

  • 使用setcap允许Java二进制自身的能力绑定到特权端口,而不要求运行为root

    sudo setcap 'cap_net_bind_service=+ep' /path/to/jre/bin/java

唯一的缺点是这样做有点晦涩,但您的应用程序也没有任何外部依赖项。