大家好,又见面了,我是你们的朋友全栈君。
今天在服务器上启动了一个http服务,代码中绑定的端口号是9706,没有绑定IP。
但是出现了一个问题,就是服务只能在本地访问,在别的机器上访问不了。
在别的机器上telnet这个端口也是不通的, 如下(ip脱敏处理了):
$ telnet <server-ip> 9707
Trying <server-ip>...
telnet: connect to address <server-ip>: Connection refused
telnet: Unable to connect to remote host
telnet不通应该是服务器的防火墙没有开放这个端口。于是学习了一下Centos防火墙操作端口的相关操作,这里记录一下:
Centos 防火墙操作
首先查看下服务器上开放的端口:
# firewall-cmd --zone=public --list-ports
5902/tcp 5903/tcp 5901/tcp 5900/tcp 10191/tcp
可以看到确实没有开放我绑定的9706端口,于是将该端口加入到开放端口中:
# firewall-cmd --zone=public --add-port=9706/tcp --permanent
success
# firewall-cmd --reload
success
再来看一下,会发现9706端口被加入到了开放端口中:
# firewall-cmd --zone=public --list-ports
5902/tcp 5903/tcp 5901/tcp 5900/tcp 10191/tcp 9706/tcp
此时,从外部机器上也能telnet通了:
$ telnet <server-ip> 9706
Trying <server-ip> ...
Connected to 1 <server-ip> .
Escape character is '^]'.
删除开放端口的操作:
$ firewall-cmd --zone=public --remove-port=9706/tcp --permanent
success
$ firewall-cmd --reload
success
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/149209.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...