$ cd $JAVA_HOME/jre/lib/management
$ cp jmxremote.password.template jmxremote.password
$ chmod u=rw jmxremote.password
$ vi jmxremote.password
设置“monitorRole”和“controlRole”的密码:
monitorRole 12monitor
controlRole 55control
之后当我在我的机器上运行JMX服务器时,出现了以下错误。
# java -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.m
agement.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.ssl=false -D
java.rmi.server.host=47.168.96.31 com.example.Main
Error: Password file read access must be restricted: /root/Downloads/jdk1.6.0_29
/jre/lib/management/jmxremote.password
当我使用以下命令更改文件权限时,jmx server可以正常工作。
# chmod 400 jmxremote.password
或
# chmod 600 jmxremote.password
但我无法通过jmxremote.password文件中定义的用户名/密码连接它
答案 0 :(得分:5)
要为JMX授权添加新的用户名/密码,必须定义身份验证 通过将用户名添加到jmxremote.access文件中。它应该像添加用户名“admin”
一样>monitorRole readonly
>admin readonly
>controlRole readwrite \
create javax.management.monitor.*,javax.management.timer.* \
unregister