使用 root 权限启动 tomcat webapp

使用 root 权限启动 tomcat webapp

我构建了一个使用 libpcap(通过 jpcap)的 webapp。

为了能够获取网络接口列表或绑定到网络接口,应用程序(在本例中是从 tomcat 服务器运行的 webaap)必须以 root 权限运行。

在开发过程中,我只是以 root 权限(sudo eclipse)运行 Eclipse,并且我的 webapp 与 Eclipse 的本地 tomcat 服务器配合得很好。

但是,当我尝试将我的 webapp 部署到“真实”的 tomcat 服务器时,它不起作用。我还尝试使用 sudo 启动 tomcat6 服务,并将 TOMCAT6_USER 定义(在 /etc/init.d/tomcat6 中定义)从“tomcat6”更改为“root”,但没有任何区别。

我应该怎么做才能让它发挥作用?

答案1

启动 tomcat可能会做你想做的事情Authbind=yes/etc/default/tomcat6

答案2

为什么为了安全起见不让 tomcat 以非 root 身份运行,并让 iptables 将端口 80 转发到 8080?

例如在 iptables 中:

-A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-port 8080

相关内容