linux、centos系统防火墙iptable,firewalld常用命令

一、下面是red hat/centos7关闭防火墙的命令!

1:查看防火状态
systemctl status firewalld
service iptables status

2:暂时关闭防火墙
systemctl stop firewalld
service iptables stop

3:永久关闭防火墙
systemctl disable firewalld
chkconfig iptables off

4:重启防火墙
systemctl enable firewalld
service iptables restart

5:永久关闭后重启
//暂时还没有试过
chkconfig iptables on

二、firewalld

Centos7默认安装了firewalld,如果没有安装的话,可以使用 yum install firewalld firewalld-config进行安装。

1.启动防火墙
systemctl start firewalld

2.禁用防火墙
systemctl stop firewalld

3.设置开机启动
systemctl enable firewalld

4.停止并禁用开机启动
sytemctl disable firewalld

5.重启防火墙
firewall-cmd –reload

6.查看状态
systemctl status firewalld或者 firewall-cmd –state

7.查看版本
firewall-cmd –version

8.查看帮助
firewall-cmd –help

9.查看区域信息
firewall-cmd –get-active-zones

10.查看指定接口所属区域信息
firewall-cmd –get-zone-of-interface=eth0

11.拒绝所有包
firewall-cmd –panic-on

12.取消拒绝状态
firewall-cmd –panic-off

13.查看是否拒绝
firewall-cmd –query-panic

14.将接口添加到区域(默认接口都在public)
firewall-cmd –zone=public –add-interface=eth0(永久生效再加上 –permanent 然后reload防火墙)

15.设置默认接口区域
firewall-cmd –set-default-zone=public(立即生效,无需重启)

16.更新防火墙规则
firewall-cmd –reload或firewall-cmd –complete-reload(两者的区别就是第一个无需断开连接,就是firewalld特性之一动态
添加规则,第二个需要断开连接,类似重启服务)

17.查看指定区域所有打开的端口
firewall-cmd –zone=public –list-ports

18.在指定区域打开端口(记得重启防火墙)
firewall-cmd –zone=public –add-port=80/tcp(永久生效再加上 –permanent)
firewall-cmd –zone=public –add-port=80/tcp –permanent

注:开启后需要重启防火墙才生效

【重启命令】: firewall-cmd –reload

其他常用命令:

firewall-cmd –state ##查看防火墙状态,是否是running
firewall-cmd –reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd –get-zones ##列出支持的zone
firewall-cmd –get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd –query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd –add-service=ftp ##临时开放ftp服务
firewall-cmd –add-service=ftp –permanent ##永久开放ftp服务
firewall-cmd –remove-service=ftp –permanent ##永久移除ftp服务
firewall-cmd –add-port=80/tcp –permanent ##永久添加80端口
firewall-cmd –remove-port=80/tcp –permanent ##永久移除80端口
firewall-cmd –zone=public –list-ports ##查看已开放的端口

iptables -L -n ##查看规则,这个命令是和iptables的相同的
man firewall-cmd

1、开放端口
firewall-cmd –zone=public –add-port=5672/tcp –permanent # 开放5672端口
firewall-cmd –zone=public –remove-port=5672/tcp –permanent #关闭5672端口
firewall-cmd –reload # 配置立即生效

2、查看防火墙所有开放的端口
firewall-cmd –zone=public –list-ports

3.、关闭防火墙
如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估
systemctl stop firewalld.service

4、查看防火墙状态
firewall-cmd –state

5、查看监听的端口
netstat -lnpt
PS:centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools

6、检查端口被哪个进程占用
netstat -lnpt |grep 5672

7、查看进程的详细信息
ps 6832
​​
8、中止进程
kill -9 6832

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

三、iptable防火墙:

service iptables status #查看iptable防火墙状态
iptables -L -n -v #查看iptable防火墙规则
systemctl start iptables #打开iptable防火墙
service iptables stop #关闭iptable防火墙
yum install iptables -y #安装iptable防火墙
systemctl enable iptables #开机自启iptable防火墙
systemctl disable firewalld #开机自动关闭iptable防火墙
iptables -F #清空iptable的规则
service iptables save #保存iptable防火墙规则

iptables -A INPUT -p tcp –dport 80 -j REJECT #禁止来自80端口访问的数据包
iptables -A INPUT -p tcp –dport 80 -j ACCEPT #允许来自80端口访问的数据包

iptables -A OUTPUT -p tcp –sport 80 -j REJECT #禁止从80端口出去的数据包
iptables -A OUTPUT -p tcp –sport 80 -j ACCEPT #允许从80端口出去的数据包

总结
firewall和iptable都是Linux的防火墙,firewall调用了iptable的command去执行内核的netfilter,也就是底层还是使用 iptables 对内核命令动态通信包过滤,firewall是Centos7里的新防火墙命令,相当于iptables 的孩子。

原创文章,作者:EASY,如若转载,请注明文章出处:
© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容