1 准备OS账户
安全起见,本着最小权限原则,生产系统决不同意使用root账户来执行tomcat。为此,建立新账户tomcat,并设定登录password。
useradd tomcat passwd tomcat
2 配置防火墙放行8080port并做80port映射
在/etc/firewalld/services/文件夹下新建一个名为tomcat.xml的文件,内容例如以下:
<?xml version="1.0" encoding="utf-8"?
> <service> <short>Tomcat Webserver</short> <description>HTTPS is a modified HTTP used to serve Web pages when security is important. Examples are sites that require logins like stores or web mail. This option is not required for viewing pages locally or developing Web pages. You need the httpd package installed for this option to be useful.</description> <port protocol="tcp" port="8080"/> </service>
然后把此服务增加防火墙规则中
firewall-cmd --reload firewall-cmd --add-service=tomcat firewall-cmd --permanent --add-service=tomcat
因为非root用户不能侦听1023下面端口,所以这里採用一个变通的方法。就是利用firewalld在数据包路由之前进行端口转发。把全部发往80的tcp包转发到8080就可以。
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toport=8080
此后tomcat就相当于同一时候侦听80和8080两个port了。
此后的步骤均是在tomcat账户环境下进行。
3 以tomcat用户绿色安装JDK和TOMCAT
Tomcat真的是很的简洁,属于纯绿色软件,直接下载下来解压就完毕了安装。稍加配置就可以顺利执行,详细的配置步骤參见$CATALINA_HOME/RUNNING.txt文件,说的很清楚。基本原理是:Tomcat已经做了控制启动与停止的脚本bin/catalina.sh。此脚本顺利执行的唯一必须前提是,知道JDK安装路径。Tomcat官方建议新建一个bin/setevn.sh的文件,并在当中环境变量设置JAVA_HOME。由于catalina.sh文件中会自己主动读取setenv.sh。启动脚本会依据JAVA_HOME自己主动设置CLASSPATH以及CATALINA_HOME等其它环境变量。无需用户直接參与。
此后就能够通过bin/catalina.sh start来启动。通过bin/catalina.sh stop来关闭Tomcat了。