Comment restreindre l'accès à l'API JMX de ActiveMQ seulement localhost / intranet?

StackOverflow https://stackoverflow.com/questions/1495882

  •  18-09-2019
  •  | 
  •  

Question

Je viens de commencer à utiliser JMX pour surveiller ActiveMQ, j'ai permis la surveillance à distance. Maintenant, la question est, comment puis-je autorise seulement localhost avoir accès à l'API JMX? Ou est-il un moyen que je peux utiliser l'API JMX sans activer la surveillance à distance ..

Était-ce utile?

La solution

Après avoir passé des heures de mon temps googler une solution, je suis tombé sur cet article https://wiki.internet2.edu/confluence/display/CPD/Monitoring+Tomcat+with+JMX qui montre comment configurer JMX pour tomcat et comment exposer JMX sur rmi. L'option « -Djava.rmi.server.hostname = test-idc.internet2.edu » indique le nom de l'hôte sur lequel tomcat est en cours d'exécution. Si vous donot spécifiez le nom d'hôte puis tente de se connecter à partir de la connexion a échoué "une machine retourne à distance.

Tout ce que vous devez faire est de définir la propriété -Djava.rmi.server.hostname = localhost dans votre script de démarrage ActiveMQ

if [ -z "$SUNJMX" ] ; then
  #SUNJMX="-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
  SUNJMX="-Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=localhost"
fi

Thats it ... redémarrer ActiveMQ et vous avez JMX accessible uniquement à partir de votre machine locale.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top