如何在没有 apt-get 安装的情况下配置 Tomcat 9?

如何在没有 apt-get 安装的情况下配置 Tomcat 9?

我已经从这里安装了 Tomcat 9来源。刚刚下载了压缩文件文件并将其提取出来。

然后我进入 ../conf/server.xml 文件将端口从 8080 更改为 80。

在此处输入图片描述

然后我启动了 Tomcat 服务器。 在此处输入图片描述

问题:

在将端口从 8080 链接到 80 之前,我可以连接http://192.168.xx:8080在我的浏览器中。但是端口 80,iphttp://192.168.xx:80,我不能。

我该如何配置 Tomcat 9,以便其他计算机可以访问它?我肯定漏掉了什么?

答案1

1024 以下的端口只能由 root 开放。

您可以做以下三件事之一:

选项 1 - 以 root 身份运行 tomcat

$ sudo sh startup.sh

选项 2 - 使用 iptables 将端口 80 重定向到另一个端口

使用此选项,您可以让 Tomcat 在 1024 以上的端口上运行,并iptables使用向前该端口为 Tomcat。(例如 80 -> 8080)

$ sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

选项 3 - 将权限升级到 Java 应用程序

任何一个:

更改 CAP_NET_BIND_SERVICE,例如

`$ sudo setcap CAP_NET_BIND_SERVICE=+eip /path/to/java`

警告这将使所有 Java 应用程序能够打开低于 1024 的端口。

或者使用 authbind

$ sudo apt install authbind
$ sudo touch /etc/authbind/byport/80
$ sudo chmod 777 /etc/authbind/byport/80

相关内容