jconsole远程连接centos7 服务器上的tomcat来查看服务器状况(有密码版)

继上一篇无密码登陆的jconsole远程连接centos7服务器,鉴于安全的问题,接下来出一篇有密码版的jconsole远程登陆,希望能帮助到遇到同样问题的朋友。

1.先修改catalina.sh文件

在之前的那个配置上再添加一行密码路径

if [ "$1" = "start" ];then
   echo "set console";
   JAVA_OPTS="-Djava.rmi.server.hostname=106.15.188.221 
-Dcom.sun.management.jmxremote.port=6969 -Dcom.sun.management.jmxremote.rmi.port=6969 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=true 
-Dcom.sun.management.jmxremote.pwd.file=/usr/local/java/jdk1.8.0_141/jre/lib/management/jmxremote.password" 
else
   echo "no startup";
fi;

注意:

//a.这个路径是在你的java的jre的相关的位置

-Dcom.sun.management.jmxremote.pwd.file=/usr/local/java/jdk1.8.0_141/jre/lib/management/jmxremote.password

//b.这个参数由原来的false改成true

-Dcom.sun.management.jmxremote.authenticate=true

2.配置你的权限文件,也就是和你的密码相关的文件

a.先进入java的jre的某个子目录的子目录的子目录。。。如下

cd /usr/local/java/jdk1.8.0_141/jre/lib/management
b.这里面有一个 jmxremote.password.template这个文件,把它复制出来命名为 jmxremote.password用于存放密码

cp jmxremote.password.template jmxremote.password

c.编辑这个文件,修改密码

划线部分为新密码,不要修改controlRole和monitorRole,这个是有权限的用户名,改了以后是无法用你自己设置的用户名登陆的

3.配置权限(还是在management这个目录里面)

chmod 600 jmxremote.password jmxremote.access

注意:这里一定要配置成600权限,配置其他权限是无法启动服务器的,已测试

4.然后再重启服务器

systemctl restart tomcat
systemctl status tomcat

如果状态码提示成功就可以去试试远程登陆了,用户名是controlRole,密码是123456789(密码是我设置的,你可以设置自己的)

注意:有的小伙伴可能会提示启动失败,如果之前安装tomcat设置过用户组(我前几篇是这样设置的),这可能是用户组权限的问题,你可以给用户组最高权限(这个我还没试),你也可以在启动设置用户组的时候注释掉用户和用户组即可。具体指令如下:

先找到你的tomcat.service文件并打开

vim /etc/systemd/system/tomcat.service

然后注释掉所属用户组,如图


然后需要重新加载文件并重启服务器

systemctl daemon-reload
systemctl restart tomcat
systemctl status tomcat

查看状态如果成功即可登陆,如果都这样了你都还没成功,那你就听天由命吧(反正我一个权限问题鼓捣了4个小时,有点小尴尬)

最后给大家看看有密码登陆:

输入ip:端口,用户名密码


确认不安全连接


远程登陆成功


好啦,很兴奋有没有,如果遇到困难一定要认真去解决哟,可以找小伙伴一起帮忙,要相信伙伴的力量(今天如果没有小伙伴一起帮忙想办法,打死我都不知道还有权限的问题,主要是之前还成功连接上了,鬼知道出了什么bug)



发布了49 篇原创文章 · 获赞 17 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/unhejing/article/details/79889931