0

在新的 CentOS6.4 上安装了最新的 Jenkins (1.534)。

为附加参数“httpsKeyStore”和“httpsKeyStorePassword”修改了 /etc/init.d/jenkins 和 /etc/sysconfig/Jenkins。然后设置'JENKINS_HTTP_PORT=-1'。我也禁用了 AJP 端口(也将其设置为“-1”)。然后配置 HTTPS 设置...

例如设置'JENKINS_HTTPS_PORT=8181'。现在开始:

'# service jenkins start'

=> everything works fine !!!

但是:如果我现在想在默认的 HTTPS 端口 '443' => 'JENKINS_HTTPS_PORT=443' 上运行 Jenkins,Jenkins 启动会失败,并出现 winstone.logger 的 Java 异常......好像其他东西已经分配了端口 443 ! ??

但是,查看系统正在侦听的端口(使用“# ss -l”)我在该端口上看不到任何侦听器!系统没有安装(也没有启动)会阻塞这个端口的 apache(或类似的)。

我在这里错过了什么吗?

4

1 回答 1

0

1024 以下的端口在 Linux 系统上是保留的。只有 root 用户可以使用它们。

这并不意味着您应该以 root 用户身份运行您的服务器(分离用户是件好事)。但是,您必须在高于此限制的端口上运行它。

为了让您的系统在端口 443 上侦听,传统的方法是:

  • 使用反向代理(在这种情况下,您不一定要通过 HTTPS 使用 Java 服务器本身,而是通过 HTTP,并让反向代理处理 SSL/TLS 连接)。
  • 使用防火墙规则将端口 443 重定向到内部的实际端口。

您可以查看此文档,例如: http: //www.eclipse.org/jetty/documentation/current/setting-port80-access.html

于 2013-10-11T14:04:07.663 回答