> ## Documentation Index
> Fetch the complete documentation index at: https://doc.lwops.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 2.1.1. Tomcat配置

#### 2.1.1.1. windows系统

1、修改中间件tomcat的安装目录下的catalina.bat文件

![2.1.1. Tomcat配置 操作截图 1](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-01.png)

 添加以下内容：

```plain theme={null}
set CATALINA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=*.*.*.* -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.rmi.port=12345
```

注：Djava.rmi.server.hostname=TOMCAT服务器IP地址，该IP必须能与ZABBIX Server能通信，某些情况下IP经过映射转换，那么需要使用转换后的地址；port为jmx监控端口这里的端口号12345可以自定义，如果同一台机器上有运行多个Tomcat程序，每个tomcat的监控操作步骤都一样，但是这里的监听端口每个Tomcat程序必须不同，否则端口会冲突。

![2.1.1. Tomcat配置 操作截图 2](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-02.png)

3、重启tomcat服务

```plain theme={null}
>shutdown.bat
>startup.bat
```

![2.1.1. Tomcat配置 操作截图 3](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-03.png)

4、查看端口是否监听

```plain theme={null}
> netstat -ano| findstr "12345"
```

![2.1.1. Tomcat配置 操作截图 4](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-04.png)

5、开放防火墙端口

如果系统防火墙处于启动状态，则需要开放jmx监控端口，才能正常监控。

注：如果您通过 Apache Tomcat Windows Service Installer（而不是向 CATALINA\_OPTS 添加选项）安装了 Apache Tomcat，那么请运行” /bin/Tomcat6w\.exe"或”/bin/Tomcat7w\.exe"，并在"属性"窗口的 Java 选项卡中添加选项。

```plain theme={null}
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
```

![2.1.1. Tomcat配置 操作截图 5](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-05.png)

若提示没有安装服务，则运行以下命令为Tomcat服务开启Apache服务管理功能：

```plain theme={null}
Tomcat6w.exe //MS//Tomcat "服务名"
```

![2.1.1. Tomcat配置 操作截图 6](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-06.png)

#### 2.1.1.2. linux系统

1、修改中间件tomcat安装目录下的catalina.sh文件

![2.1.1. Tomcat配置 操作截图 7](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-07.png)

添加以下内容：

> 2023.12.13日改

```plain theme={null}
# 找到 Execute The Requested Command 关键字行，在后面追加如下配置CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=*.*.*.* -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.rmi.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
```

<img src="https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-08.png" alt="2.1.1. Tomcat配置 操作截图 8" /> 注：Djava.rmi.server =TOMCAT服务器IP地址，该IP必须能与乐维服务器能通信，某些情况下IP经过映射转换，那么需要使用转换后的地址。

2、重启tomcat服务 <img src="https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-09.png" alt="2.1.1. Tomcat配置 操作截图 9" />

```plain theme={null}
# cd /tomcat/apache-tomcat-6.0.41/bin/# ./shutdown.sh# ./startup.sh
```

3、查看端口是否监听 单个服务进程时

```plain theme={null}
netstat –nlp | grep 12345
```

![2.1.1. Tomcat配置 操作截图 10](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-10.png)

如存在多个进程时，多个端口查看是否监听

```plain theme={null}
netstat –nlp | grep 12345
netstat –nlp | grep 12346
```

![2.1.1. Tomcat配置 操作截图 11](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-11.png)

4、开放防火墙端口

（1）iptables（service iptables status查看状态） centos6/redhat6及以下版本默认为iptables

```plain theme={null}
# iptables -A INPUT -m state --state -m tcp -p tcp --dport <端口> -j ACCEPT
# service iptables save
```

![2.1.1. Tomcat配置 操作截图 12](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-12.png)

（2）firewalld（service firewalld status查看状态） centos7/redhat7及以上版本默认为firewalld

```plain theme={null}
# firewall-cmd --zone=public --add-port=<端口>/tcp --permanent
# firewall-cmd --reload
```

![2.1.1. Tomcat配置 操作截图 13](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-13.png)

#### 2.1.1.3 tomcat 开启账号密码认证

可选，当客户要求安全性时候进行配置。 与2.1.1.2中的配置区别仅为是否启用加密及设定加密账密信息 1. Jmx开启账号、密码验证监控 1. 在jmx主机上找到远程连接用户、密码配置文件模板（jmxremote.access、jmxremote.password.template），一般在JAVA\_HOME/jre/lib/management/目录下。或者可以在主机上直接find文件所处路径。将jmxremote.access、jmxremote.password（修改命名）移动至CATALINA\_HOME/conf（jmx配置目录）下

```plain theme={null}
#find / -name jmxremote.access
#mv /appset/java/jdk1.6.0_37/jre/lib/management/jmxremote.access /usr/local/tomcat8.5/conf
#mv /appset/java/jdk1.6.0_37/jre/lib/management/jmxremote.password.template /usr/local/tomcat8.5/conf/jmxremote.password
```

1. 配置远程用户、密码认证文件内容。

# 该内容在文件jmxremote.access末位置，其中红框内为手动新增内容，用于创建认证用户user以及相应权限readonly.

![2.1.1. Tomcat配置 操作截图 14](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-14.png)

 :wq #创建以后即可保存退出

# 打开jmxremote.password，于文件末位置为用户user 设定密码 123456

![2.1.1. Tomcat配置 操作截图 15](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-15.png)

 :wq #保存退出。

3.配置CATALINA\_HOME/bin/catalina.sh文件 配置指定配置文件Catalina路径，在authenticate设置为true开启远程用户名和密码认证。指定远程用户、密码配置文件路径。

```plain theme={null}
#vim vim /usr/local/tomcat8.5/bin/catalina.sh
```

![2.1.1. Tomcat配置 操作截图 16](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-16.png)

```plain theme={null}
export CATALINA_HOME=/usr/local/tomcat8.5
CATALINA_OPTS="${CATALINA_OPTS} -Djava.rmi.server.hostname=192.168.7.13 -Djavax.management.builder.initial= -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=${CATALINA_HOME}/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=${CATALINA_HOME}/conf/jmxremote.access"
```

1.重启jmx控件。

![2.1.1. Tomcat配置 操作截图 17](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-17.png)

2.添加变量宏

![2.1.1. Tomcat配置 操作截图 18](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-18.png)

3.给监控项和自动发现 添加变量宏

![2.1.1. Tomcat配置 操作截图 19](https://lwweb.oss-cn-shenzhen.aliyuncs.com/docs/images/yuque/tomcat/image-19.png)
