Currently JMX over RMI doesn't play nicely with remote machines without lots of work and still you have to be careful that the service is running on the same port. An alternative to JMX over RMI is JMXMP which although old works over a single TCP connect and so is much more firewall/remote machine friendly. As such it's easy to just use ssh port forwarding to access a remote JMXMP connection.
The downside is that JMXMP although written by Sun isn't part of the standard JDK so needs to be added to both the client and the server. However the JAR is freely available and can be added to the classpath of client tools.
The license of the JMXMP implemention can be CDDL which is compatible with ECL.