Tomcat部署(Linux)

一、安装JAVA-JDK

1.1 通过RPM包安装JAVA-JDK

1.1.1 下载JAVA-JDK RPM包

https://www.oracle.com/java/technologies/downloads/

下载x64 RPM Package

1.1.2 安装RPM包
rpm -ivh jdk-8u341-linux-x64.rpm
#安装RPM包

java -version
#查看java版本,验证安装。

java version "1.8.0_341"
Java(TM) SE Runtime Environment (build 1.8.0_341-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)
#安装完毕
warning: jdk-8u341-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:jdk1.8-2000:1.8.0_341-fcs        ################################# [100%]
Unpacking JAR files...
    tools.jar...
    plugin.jar...
    javaws.jar...
    deploy.jar...
    rt.jar...
    jsse.jar...
    charsets.jar...
    localedata.jar...
#RPM包安装过程

1.2 通过二进制包安装JAVA-JDK

1.2.1 下载JAVA-JDK 二进制包

https://www.oracle.com/java/technologies/downloads/

下载x64 Compressed Archive

1.2.2 安装JAVA-JDK
mkdir /usr/local/java -p
#创建安装目录

tar -xf jdk-8u341-linux-x64.tar.gz -C /usr/local/java
#解压缩

ln -s /usr/local/java/jdk1.8.0_341 /usr/local/java/jdk
#建立软连接(可选)

cat << EOF >> /etc/profile

#JAVA
export JAVA_HOME=/usr/local/java/jdk
export PATH=\$PATH:\$JAVA_HOME/bin
export JRE_HOME=\$JAVA_HOME/jre
export CLASSPATH=.:\$JAVA_HOME/lib:\$JRE_HOME/lib
EOF
#添加环境变量

source /etc/profile
#重新载入环境变量

java -version
#查看java版本,验证安装。

java version "1.8.0_341"
Java(TM) SE Runtime Environment (build 1.8.0_341-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)
#安装完毕

二、安装Tomcat

2.1 下载Tomcat

https://tomcat.apache.org/

下载core中的tar.gz包

2.2 安装tomcat

useradd tomcat -s /sbin/nologin -M
#创建tomcat用户

mkdir /apps/apache-tomcat -p
#创建安装目录

tar -xf apache-tomcat-10.0.23.tar.gz -C /apps/apache-tomcat/
#解压缩

ln -s /apps/apache-tomcat/apache-tomcat-10.0.23 /apps/apache-tomcat/tomcat
#建立软连接(可选)

cat  << EOF > /usr/lib/systemd/system/tomcat.service
[Unit]
Description=Tomcat
After=network.target

[Service]
Type=forking
ExecStart=/apps/apache-tomcat/tomcat/bin/catalina.sh start
ExecReload=/apps/apache-tomcat/tomcat/bin/catalina.sh restart
ExecStop=/apps/apache-tomcat/tomcat/bin/catalina.sh stop
User=root
Group=root
Environment=JAVA_HOME=/usr/local/java/jdk

[Install]
WantedBy=multi-user.target
EOF
#创建systemd-service文件

systemctl daemon-reload
#重新载入service文件

systemctl enable --now tomcat
#启动tomcat

systemctl status tomcat
#查看tomcat服务状态

netstat -nlptu
#查看tomcat监听端口,默认8080

2.3 注意事项

2.3.1 运行时错:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
  • 使用Systemd-Service管理和启动Tomcat时出现启动失败并报错。
  • 直接使用catalina.shstartup.sh启动时则正常。
  • JAVA-JDK使用二进制包安装,而非RPM包安装。

方法一:在systemd-service中指定环境变量

#tomcat.service

[service]
Environment=JAVA_HOME=/usr/local/java/jdk
#在service块中添加JAVA_HOME环境变量

方法二:在tomcat/bin/catalina.sh中指定环境变量

#catalina.sh

JAVA_HOME=/usr/local/java/jdk
#在文件行首添加JAVA_HOME环境变量

2.4 访问Tomcat服务

使用浏览器登陆

http://192.168.1.10:8080

三、管理工具

3.1 启用Server Stauts和Manager App功能

编辑配置文件conf/tomcat-users.xml,添加用户名与密码。

<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
#修改用户配置文件

systemctl restart tomcat
#重启Tomcat服务

修改远程访问权限

编辑配置文件tomcat/webapps/manager/META-INF/context.xml,修改远程访问规则。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
#初始配置

allow="\d+\.\d+\.\d+\.\d+" />
#允许所有地址访问

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.\d+\.\d+" />
#允许192.168.x.x网段的主机访问

<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
#或整段注释掉

3.2启用HostManager功能

编辑配置文件conf/tomcat-users.xml,添加用户名与密码。

<role rolename="admin-gui"/>
<user username="tomcat" password="s3cret" roles="admin-gui"/>
#修改用户配置文件

systemctl restart tomcat
#重启Tomcat服务

修改远程访问权限

编辑配置文件tomcat/webapps/host-manager/META-INF/context.xml,修改远程访问规则。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
#初始配置

allow="\d+\.\d+\.\d+\.\d+" />
#允许所有地址访问

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.\d+\.\d+" />
#允许192.168.x.x网段的主机访问

<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
#或整段注释掉

四、安全配置

4.1 修改telnet

使用telnet到8005端口,发送“SHUTDOWN”可以关闭tomcat运行。

通过修改配置文件tomcat/conf/server.xml关闭。

<Server port="8005" shutdown="SHUTDOWNy3tL3Uzs">
#修改SHUTDOWN为复杂密码。

<Server port="-1" shutdown="SHUTDOWN">
#端口修改为-1,关闭端口监听。

4.2 自定义Tomcat Server

修改配置文件tomcat/conf/server.xml

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" Server="10.0.0"/>

可自定义浏览器中报文头Server内容。

标签: none

添加新评论