*开启window本地的telnet
【控制面板】->【程序】->【程序和功能】->【启用或关闭Windows功能】
在【Telnet客户端】前面打勾然后点击【确定】,等待安装完毕即可。
telnet ip 端口号 方式测试远程主机端口是否打开
*查看java进程并杀死进程
[root@vultr ~]# jps
4909 Jstatd
4957 Jps
[root@vultr ~]# kill -9 4909
[root@vultr ~]# jps
4967 Jps
[root@vultr ~]#
*防火墙相关操作
Centos防火墙设置与端口开放的方法
查看防火墙开放的端口:
/etc/init.d/iptables status
添加端口:
vim /etc/sysconfig/iptables
重启防火墙:
service iptables restart
再查看:
1 jstatd连接
0)关闭防火墙
[root@vultr ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
[root@vultr ~]#
不关闭防火墙的方法见下面
1)新建jstatd.all.policy
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
2)启动jstatd
nohup jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=108.61.157.38 &
指定文件:-J-Djava.security.policy=jstatd.all.policy
指定jstatd服务所在的主机ip:-J-Djava.rmi.server.hostname=108.61.157.38(重要,不能少)
默认端口:1099
3)启动jvisualvm.exe
4)右键“远程”,添加远程主机
5)填入ip
6)确认,稍等一会
7)jstatd没什么用
8)不关闭防火墙的方法:
参考
-
查看Jstatd进程监听的所有端口(除了JMX server指定的监听端口号外,JMXserver还会监听一到两个随机端口号,):
lsof -i|grep pid
[root@vultr ~]# jps
5384 Jps
5038 Jstatd
[root@vultr ~]# lsof -i|grep 5038
jstatd 5038 root 13u IPv6 12739163 0t0 TCP *:45785 (LISTEN)
jstatd 5038 root 14u IPv6 12739173 0t0 TCP *:rmiregistry (LISTEN)
jstatd 5038 root 16u IPv6 12744204 0t0 TCP 108.61.157.38.vultr.com:45785->116.21.14.191:40699 (ESTABLISHED)
[root@vultr ~]# ^C
[root@vultr ~]#
- 所有监听的端口都开放到白名单,上面是45785 端口
2 JMX连接
1)启动命令带上参数:
nohup java -Djava.rmi.server.hostname=108.61.157.38 -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=8081 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar dynamic_compile-0.0.1-SNAPSHOT.jar > out.log &
- -Djava.rmi.server.hostname=108.61.157.38
- -Dcom.sun.management.jmxremote=true
- -Dcom.sun.management.jmxremote.port=8081(指定的端口)
- -Dcom.sun.management.jmxremote.ssl=false
- -Dcom.sun.management.jmxremote.authenticate=false
2)添加JMX连接
3)输入上面指定的端口、确定
4)稍等
5)防火墙问题
和上面一样,两个办法:1)关闭防护墙,2)开放相关端口
3 不启动jstatd,只启动jvm
这样才好。