我编写了一个批处理Java 7应用程序,应该由JMX客户端控制。JMX 服务已启动并正在运行,我可以从我的机器使用 jConsole 连接到它。
我设置了选项 -Dcom.sun.management.jmxremote.local.only=true 以避免除 127.0.0.1 之外的任何传入连接。
但。。。当我尝试从另一台计算机进行连接时,我的连接没有被过滤掉,我能够远程访问 JMX。
这是 java 调用:
java -Dcom.sun.management.jmxremote ^
-Dcom.sun.management.jmxremote.port=7000 ^
-Dcom.sun.management.jmxremote.local.only=true ^
-Dcom.sun.management.jmxremote.authenticate=false ^
-Dcom.sun.management.jmxremote.ssl=false ^
-cp lib/*;hns-consumer.jar it.andrearota.com.Main %1
看起来尚未考虑该选项。
有什么帮助吗?
我正在寻找一种方法来限制 JMX 服务器仅在本地主机上接受请求,并偶然发现了这个问题。现在可以使用标志-Dcom.sun.management.jmxremote.host=localhost
.有关类似问题,请参阅此评论。