在使用Linux系统部署服务时,很多小伙伴会遇到这样的情况,明明服务已经成功启动了,在服务器上测试也成功了,但是使用外部设备就是访问不到服务。如果出现这种情况,很可能是因为服务器的防火墙设置不正确。那要如何来排查是否是因为防火墙引起的问题呢,下面这些常用命令可以帮助我们解决日常大部分的问题。
- 开启和关闭防火墙
// 开启防火墙
systemctl start firewalld.service
// 关闭防火墙
systemctl stop firewalld.service
- 查看防火墙状态
systemctl status firewalld
- 开放关闭指定端口
// 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
// 关闭3306端口
firewall-cmd --zone=public --remove-port=3306/tcp --permanent
// 使配置的端口生效
firewall-cmd --reload
- 查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports
- 查看监听的端口
// centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools
netstat -lnpt
- 检查端口被哪个进程占用
netstat -lnpt | grep 端口号
- 查看进程占用什么端口
netstat -anp | grep 进程名
学到老,活到老,多敲代码,不掉头发,微信公众号搜索【虚竹讲程序经】,关注获取更多技术干货!