阿里/腾讯云服务器中配置JMX连接失败问题解决记录
项目场景:
前段时间在阿里/腾讯云配置JMX,想在本地通过Jconsole进行探测。
问题描述:
频繁在不安全的SSL连接后,出现连接失败,经过检查本地已关闭防护墙、阿里云已开通JMX端口,仍是此问题。
原因分析:
通过netstat -nltp发现,开启JMX的8620 java进程莫名多出来2个端口43267、46069,在防火墙内进行规则添加,允许其访问。tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 966/sshd
tcp6 0 0 :::7441 ::😗 LISTEN 8620/java
tcp6 0 0 :::46069 ::😗 LISTEN 8620/java
tcp6 0 0 127.0.0.1:1527 ::😗 LISTEN 8615/java
tcp6 0 0 ::1:7001 ::😗 LISTEN 8620/java
tcp6 0 0 172.17.0.12:7001 ::😗 LISTEN 8620/java
tcp6 0 0 127.0.0.1:7001 ::😗 LISTEN 8620/java
tcp6 0 0 :::43267 ::😗 LISTEN 8620/java
解决方案:
1、配置本地hosts为互联网IP
vim /etc/hosts
118.25.88.222 VM-0-37-centos VM-0-33-centos
118.25.88.222 localhost.localdomain localhost
2、jvm启动参数种绑定jmx地址为互联网地址
-Djava.rmi.server.hostname=118.25.88.222
3、在防火墙策略内添加JMX额外的端口43267、46069,此端口为案例端口,具体请参照原因分析内的操作步骤,使用netstat -ntlp查看