修改tomcat bin目录下的catalina.sh 文件
添加
JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.1.20
-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.port=8999
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false"
修改jmx远程访问授权。默认为JAVA_HOME/jre/lib/management下jmxremote.access、jmxremote.password(缺省系统提供了个模版jmxremote.password.template改下名就成)
linux下需要的授权:chmod 600 jmxremote.access、chmod 600 jmxremote.password
java -Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
在这个基础上,再修改增加几个配置就能使用认证连接,使用方法如下。
java -Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.access.file=./jmx.access
-Dcom.sun.management.jmxremote.password.file=./jmx.password
这里将 authenticate 设置为 true,然后增加了一个访问权限和访问密码的文件。
这两个文件内容分别如下。
访问权限 jmx.access:
user readonly
admin readwrite
访问权限说明:
readonly 只能读取 MBean 的属性和接受通知。
readwrite 还允许设置属性,调用方法,创建和删除 MBean。
访问密码 jmx.password:
user user
admin password