初学者搭建服务器时会遇到很多问题,明明程序没有问题,但是服务器运行后却没有反应,IP没有问题,那么端口可能出现问题.
比如此处我建立了8888端口的服务器,一直没有连接成功,最后才想起来,linux需要打开端口才能使用.
下面进入正题,教你如何打开端口(CentOS7版本,其它也大同小异)
查看防火墙状态
firewall-cmd --state
如果返回的是 “not running”,那么需要先开启防火墙;
开启防火墙
systemctl start firewalld.service
再次查看防火墙状态,发现已开启!
开启指定端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
显示 success 表示成功
–zone=public 表示作用域为公共的
–add-port=443/tcp 添加 tcp 协议的端口端口号为 443
–permanent 永久生效,如果没有此参数,则只能维持当前 服 务生命周期内,重新启动后失效;
重启防火墙
systemctl restart firewalld.service
系统没有任何提示表示成功!
重新加载防火墙
firewall-cmd --reload
显示 success 表示成功
其他命令
#查看已开启的端口 firewall-cmd --list-ports
#关闭指定端口 firewall-cmd --zone=public --remove-port=8080/tcp --permanent systemctl restart firewalld.service firewall-cmd --reload
#查看端口被哪一个进程占用 netstat -lnpt |grep 5672 # centos7默认没有 netstat 命令,需要安装 net-tools 工具: # 安装 net-tools yum install -y net-tools
# 临时关闭防火墙 systemctl stop firewalld.service # 或者 systemctl stop firewalld
# 永久关闭防火墙(必须先临时关闭防火墙,再执行该命令,进行永久关闭) systemctl disable firewalld.service # 或者 systemctl disable firewalld