我最近在学习向 Linux 上远程部署 javaWeb 项目,但是建立 tomcat remote 连接时,总是会遇到这样的异常:
java.net.ConnectException: Connection timed out: connect
我在主机和虚拟机上进行了连接测试,ip 和 port 都没有问题,JMX 端口也设置了防火墙开放,但就是不成功
后来查过资料发现是因为除了JMX server指定的监听端口号外,JMXserver还会监听一到两个随机端口号,这些端口号都是随机分配的,只有关闭防火墙才能成功连接
我认为这样降低了安全性,所以我想问问:有没有不用关闭防火墙的方法?
我是初学 Linux,我自己有一个想法,就是为远程调用写一个启动脚本,每次建立连接时暂时开放 JMXserver 需要的端口,不知道这个想法是否可以行?还望指教!
随机端口的问题:设置下列启动参数为同一个端口即可。
对 Java 7 update 25以后的版本有效。
安全及防火墙的问题:建议采用ssh隧道的方式进行访问,这是通用的安全远程访问方式,对所有类型的访问都有效。
参考
https://bugs.java.com/bugdata...
https://stackoverflow.com/que...
http://blog.csdn.net/u0137936...