3 liens privés
La galère enfin résolue mais c'est pas simple : jvisualvm over ssh
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=<jmx-remote-port>
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.local.only=false
-Djava.rmi.server.hostname=localhost
Attention au "-Djava.rmi.server.hostname=localhost", c'est ça qui fait que ça marche.
ps -ef | grep <java-processname>
netstat -lp | grep <process-id>
On récupère le deuxième port dynamique (le premier c'est le JMX)
Puis ouverture des tunnels (en cascade si on veut) :
ssh login@machine1 -L 15666:localhost:15666 -L 33429:localhost:33429
ssh login@machine2 -L 15666:localhost:15666 -L 33429:localhost:33429
Sur la jconsole ou visualvm :
service:jmx:rmi:///jndi/rmi://localhost:15666/jmxrmi
Et bing, ça marche....
Et si on n'a pas de tunneling SSH, il y a une option qui consiste à avoir un serveur HTTP qui sait exécuter du CGI : https://docs.oracle.com/javase/7/docs/platform/rmi/spec/rmi-arch6.html
On le configure pour exécuter le script cgi-bin/java-rmi.cgi. Par contre je pense que ça ne marche que pour faire des appels RMI distants et pas pour la JVisualVM... encore que, peut-être...
Pense-bête :
from Java 5.0, it is better to use the -agentlib:jdwp
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8000
Before Java 5.0, use -Xdebug and -Xrunjdwp
-Xdebug -Xrunjdwp:server=y,transport=dt_socket,suspend=n,address=8000
Pour avoir un tunnel inverse ouvert sur toutes les ip :
ssh -R *:8080:localhost:80 -N root@example.com
et
GatewayPorts yes dans le sshd_config
SSH reste bloqué lorsqu'un processus distant est démarré en arrière
-plan. La raison est que le processus hérite des flux stdin/stdout/stderr du shell d'origine et que openSSH ne ferme pas la connexion tant qu'un flux est ouvert.
java -jar batch.jar < /dev/null &> logs.txt &
ou
nohup java -jar batch.jar < /dev/null &
Partage de répertoire local vers le bureau à distance :
1) sélection l'option dans "mstsc" au moment du login, dans les options "ressources, autres..."
2) \tsclient
Easy, normalement...
Options du bureau à distance Windows
Connexion bureau à distance windows