Ho configurato Apache Tomcat 8 utilizzando questo tutorial https://tomcat.apache.org/tomcat-7.0-doc/monitoring.html e ho generato il certificato SSL.Client JMX Java con SSL
JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://10.16.70.161:9999/jmxrmi");
HashMap environment = new HashMap();
String[] credentials = new String[]
{
"user", "passw"
};
environment.put(JMXConnector.CREDENTIALS, credentials);
JMXConnector jmxc = JMXConnectorFactory.connect(url, environment);
MBeanServerConnection server = jmxc.getMBeanServerConnection();
Set<ObjectName> s2 = server.queryNames(new ObjectName("Catalina:type=Server,*"), null);
for (ObjectName obj : s2)
{
ObjectName objname = new ObjectName(obj.getCanonicalName());
System.out.println("serverInfo " + server.getAttribute(objname, "serverInfo"));
System.out.println("address " + server.getAttribute(objname, "address"));
System.out.println("stateName " + server.getAttribute(objname, "stateName"));
}
In che modo è necessario estendere questo client JMX per poterlo utilizzare con il certificato SSL? Non riesco a trovare alcun buon esempio su Internet.
Perché si aggiunge SslRMIServerSocketFactory e SslRMIClientSocketFactory? È obbligatorio? –
Mi dispiace, è necessario solo quando si desidera creare un JMXServer. In questo caso, tutto ciò che devi fare è configurare il tuo negozio di fiducia e passarlo al tuo cliente quando inizi. – Val
Posso usare in qualche modo il codice Java per impostare la posizione e la password di trustStore senza un client JMX personalizzato completo? Ho creato un nuovo post qui http://stackoverflow.com/questions/34474023/replace-system-setproperty –