关于firewall防火墙一些常用方法

关于从学习Linux开始,我对防火墙防火墙一直很迷惑我接触的有firewall\iptalbe\selinux,这几者的关系一直没搞清楚,而且在centos里它们还同时存在。上网查了半天只搞清如下关系:

SELinux、Netfilter、iptables、firewall和UFW五者关系
1、SELinux是美国国家安全局发布的一个强制访问控制系统
2、Netfilter是Linux 2.4.x引入的一个子系统,作为一个通用的、抽象的框架,提供一整套的hook函数的管理机制
3、iptables是Linux下功能强大的应用层防火墙工具。
4、firewall是centos7里面新的防火墙管理命令
5、ufw是Ubuntu下的一个简易的防火墙配置工具。

其他系统我不太了解,但好象在centos7中可以这么理解,selinux没什么用,关了吧,firewall是iptable的代替品,虽然firewall最终还是做iptable的活,所有应该只学firewall就可以了。(我也不知道对不对)下面只对firewall使用总结一下:
1、运行、停止、禁用firewalld

启动: systemctl start firewalld
查看状态: systemctl status firewalld 或者 firewall-cmd --state
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
查看firewall是否运行,下面两个命令都可以
systemctl status firewalld.service
firewall-cmd --state

2、查看default zone和active zone

我们还没有做任何配置,default zone和active zone都应该是public
firewall-cmd --get-default-zone
firewall-cmd --get-active-zones
(至于这个public是什么意思还不清楚)

3、查看当前开了哪些端口

firewall-cmd --list-services
其实一个服务对应一个端口,每个服务对应/usr/lib/firewalld/services下面一个xml文件。
(但有一个问题,我的ssh端口已经改为3384,但在ssh.xml里面还是显示:,这是怎么回事?现在也还不清楚)

4、永久打开关闭端口

永久打开端口3384
firewall-cmd --zone=public --add-port=3384/tcp --permanent
永久关闭端口3384
firewall-cmd --permanent --zone=public --remove-port=3384/tcp
–permanent 表示永久的意思。

5、查看还有哪些服务可以打开

firewall-cmd --get-services
可以看到有一大堆的内容,但哪个管什么还是不知道。

6、查看所有打开的端口:

firewall-cmd --zone=public --list-ports
我的是显示:3384/tcp 445/tcp,因为我只开了这两个。

7、查询某一端口是否打开。

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

8、更新防火墙规则:

firewall-cmd --reload

我感觉常用的就这些了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章