介意Ankon酒店 感謝這個和沒有防火牆端口來打開。 對我來說,SOCKS代理不起作用。
-Dcom.sun.management.jmxremote =真
-Dcom.sun.management.jmxremote.ssl =假
-Dcom.sun.management.jmxremote.authenticate =假:
與選項啓動JVM
-Dcom.sun.management.jmxremote.port = [端口1]
-D java.rmi.server.hostname =本地主機
-Dcom.sun.management.jmxremote.rmi.port = [ port2]
重要的部分是「server.hostname = localhost」。此外,您明確定義了兩個端口(連接+「隨機」RMI端口),「jmxremote.rmi.port」至少需要Java 7更新4(我在某處閱讀,未檢查此信息 - 在您的「lsof -i」服務器機器來檢查真正使用的端口)。
(當然,你可以使用身份驗證或SSL)
連接通過SSH服務器,並轉發當地端口1和PORT2爲localhost:端口1 | 2的服務器。
在VisualVM中打開一個到localhost:port1的JMX連接(沒有任何代理設置)。
唐設置兩個端口你不得不連接到來自VisualVM的遠程主機?我現在沒有機器可以測試,但是您只創建了一個襪子代理,但您仍然需要對其進行操作。 – 2009-10-22 21:26:21
感謝您的評論 - 我嘗試了幾個'變化',但他們都沒有工作。 – bgraves 2009-10-23 11:55:03
截至2015年,你可以隧道兩個jmx和rmi端口看[我的答案](http://stackoverflow.com/a/32418821/241986) – 2015-09-06 09:52:43