本文详细介绍如何设定执行Java的Linux安全环境
连接埠难题
单独执行 Tomcat 的一个大问题是它无法存取标准 HTTP 连接埠 80,除非是作为 root 使用者执行。作为 root 使用者执行服务器应用程序的想法通常并不是上串流公司所讨论的问题,因此我将完全放弃这个想法﹗使用除 80 以外的连接埠是一个更好的选择(例如,Tomcat 缺省连接埠 8080)。这通常适用于测试,但当使用者正在存取服务时,它会导致杂乱的 URL,因为需要在请求中清楚地说明连接埠号。使用非标准连接埠还意味着如果需要外部存取,就需要重新组态所有的防火墙。
xinetd 解决方案
幸好,Linux 支持一些利用 Tomcat(或任何其它使用者方式应用程序)处理连接端口 80 请求的简便方式。一种常用方式是透过 xinetd.xinetd 是带有广泛存取控制和日志记录支持的因特网服务守护程序,它还拥有方便的重新导向特性。重新导向让您将系统组态成接受一个连接埠上的进入请求,然后将请求传递到另一个连接埠或者甚至另一个 IP 地址进行处理。
如果您想要在系统上设定 Tomcat 以处理连接埠 80 请求,就需要加入 xinetd 组态文件来实作这一目的。假设按一般在正常路径上安装了 xinetd,那么您可以透过对 /etc/xinetd.d 目录加入一个文件(以 root 使用者身份)来执行这一作业。清单 1 提供了用于 Tomcat 的一个样本组态文件。
清单 1. xinetd 重新导向组态
# Redirects any requests on port 80
# to port 8080 (where Tomcat is listening)
service tomcat
{
socket_type = stream
protocol = tcp
user = root
wait = no
port = 80
redirect = localhost 8080
disable = no
}
责编:豆豆技术应用
正在加载评论...