CentOS7防火墙、端口开放常用命令

当然,你可以选择使用iptables来进行端口开放的操作,但是很多阿里云服务器用户会遇到
-bash: /etc/rc.d/init.d/iptables: No such file or directory这样致命的错误,这是由于安全组,阿里云亘古不变的安全组开放端口问题。

firewalld跟iptables比起来至少有两大好处:

1.firewalld可以动态修改单条规则,而不需要像iptables那样,在修改了规则后必须得全部刷新才可以生效。
2.firewalld在使用上要比iptables人性化很多,即使不明白“五张表五条链”而且对TCP/IP协议也不理解也可以实现大部分功能。

firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现,也就是说firewalld和 iptables一样,他们的作用都是用于维护规则,而真正使用规则干活的是内核的netfilter,只不过firewalld和iptables的结 构以及使用方法不一样罢了。

firewalld可以动态修改单条规则,而不需要像iptables那样,在修改了规则后必须得全部刷新才可以生效。
firewalld在使用上要比iptables人性化很多,即使不明白“五张表五条链”而且对TCP/IP协议也不理解也可以实现大部分功能。
firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现,也就是说firewalld和 iptables一样,他们的作用都是用于维护规则,而真正使用规则干活的是内核的netfilter,只不过firewalld和iptables的结 构以及使用方法不一样罢了。

一、防火墙(firewall)常用命令

开启防火墙:(如报错,参考第三项)

systemctl start firewalld.service

重启防火墙:

systemctl restart firewalld.service 

关闭防火墙:

systemctl stop firewalld.service 

查看防火墙状态:

systemctl status firewalld #方式一
firewall-cmd --state  #方式二

设置firewall开机启动

systemctl enable firewalld

禁止firewall开机启动:

systemctl disable firewalld.service 

二、端口开放命令

每次增删端口号都要重新启动防火墙才会生效!

查看监听(Listen)的端口

netstat -lntp

检查端口被哪个进程占用

netstat -lnp|grep 8080

开放端口:

firewall-cmd --zone=public --add-port=80/tcp --permanent
#--zone #作用域 
#--add-port=80/tcp #添加端口,格式为:端口/通讯协议 
#--permanent #永久生效,没有此参数重启后失效

添加区间端口

firewall-cmd --zone=public --add-port=1000-2000/udp --permanent
firewall-cmd --zone=public --add-port=1000-2000/tcp --perman

关闭端口

firewall-cmd --zone=public --remove-port=80/tcp --permanent

查看端口号是否开启,运行命令:

firewall-cmd --query-port=6379/tcp

查看已经开放的端口:

firewall-cmd --list-ports  

三、 可能会遇到的错误

1.Failed to start firewalld.service: Unit is masked.(已解决)


firewalld服务被锁定,解决方案如下:

systemctl unmask firewalld #取消服务的锁定

如需锁定服务:

systemctl mask firewalld #锁定服务

2. -bash: /etc/rc.d/init.d/iptables: No such file or directory(已解决)

 阿里云服务器ECS处于安全考虑默认自带安全组(仅开放了22号和3389号端口),Tomcat的默认端口号为8080,所以想使用Tomcat不开放8080端口是不行的。很多用户通过修改iptables来开放8080号端口,结果失败,这是由于安全组,阿里云亘古不变的安全组开放端口问题。
因此,ALIYUN ESC用户不必尝试这个方法了!
 我们使用iptables来操作服务器端口会遇到这样致命的错误
在这里插入图片描述
 目前,搜索很多博客,转载尝试比较多的是这一篇:
/etc/rc.d/init.d/iptables: No such file or directory 错误原因
参考链接:https://wangchujiang.com/linux-command/c/firewall-cmd.html

发布了71 篇原创文章 · 获赞 102 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qq_44717317/article/details/104074199
今日推荐