技术博客的可读性非常重要,这也是技术博客写作的重要原则。

有关防火墙的问题,之前接触的windows的比较多一些,但是仅止于这个名词,对于更多的功能不甚知晓。

以前有一个同学电脑上没有安装什么防病毒软件,因为周围病毒有些泛滥,所以选择了一个瑞星的防火墙。就是下面这一款

centos 关闭防火墙 docker centos中关闭防火墙的命令_ViewUI

对那件事非常印象深刻,勒索病毒风行那段时间,我还按照网上教程,关闭了电脑的445端口等,不过windows电脑长期开更新,所以很难中那个病毒。

最近接触到了linux这一块的防火墙,很是新鲜,虽然网络上有很多有关防火墙的命令知识,但是还是想要适当总结一下,就算是一种温习吧。

首先明确这里的防火墙针对的是centos7服务器系统

1、systemctl stop firewalld.service    停止防火墙运行

2、systemctl disable firewalld.service    禁止防火墙开机启动

3、systemctl status firewalld.service    查看防火墙目前状态

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

5、firewall-cmd ---reload    重新载入防火墙配置(修改完配置以后),更改完后一定要重载防火墙

6、firewall-cmd --get-zones    列出支持的zone

7、firewall-cmd --get-services    列出支持的服务

8、firewall-cmd --query-service ftp    查看ftp服务支持与否

9、firewall-cmd --add-service=ftp    临时开启ftp服务

10、firewall-cmd --add-service=ftp --permanent    永久开放ftp服务

11、firewall-cmd --remove-service=ftp --permanent    永久关闭ftp服务

12、firewall-cmd --add-port=80/tcp --permanent    永久添加80端口

13、firewall-cmd --remove-port=80/tcp --permanent    永久关闭80端口

14、man firewall-cmd    查看帮助

补充部分

15、firewall-cmd --get-default-zone    列出默认区域,显示public

16、fire-cmd --set-default-zone=dmz    改变默认区域到dmz

17、firewall-cmd --zone=dmz --add-service=https --permaent    永久添加http规则,同样适用于https

18、firewall-cmd --zone=dmz --add-service=smtp --permanent    永久添加smtp,开启25端口,同样可以对应imap、imaps、pop3、pop3s

19、firewall-cmd --zone="public" --add-forward-port=port=80:proto=tcp:toport=123    同一台服务器的80端口流量转至123端口

20、firewall-cmd --zone=public --add-masquerade    激活masquerade,remove可以关闭

firewall-cmd --zone="public" --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.0.66    本地80端口流量转至ip为192.168.066的8080端口

21、firewall-cmd --set-default-zone=dmz

firewall-cmd --zone=dmz --add-interface=eth0    将eth0的默认区域设置为dmz

22、firewall-cmd --zone=dmz --list-all    显示出dmz区域的状态

23、firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" source address=192.168.0.10 accept'   允许来自192.168.0.10的所有流量

24、firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" source address=“192.168.0.10” port port=22 protocol=tcp reject '

拒绝主机192.168.0.10到22端口的ipv4的tcp流量

25、firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" source address=192.168.0.10 port port=80 protocol=tcp to-port=6532 '

接受主机192.168.0.10到80端口的ipv4的tcp流量,并且转向6532端口

26、firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" forward-port port 80 protocol=tcp to-port=8080 to-addr=192.168.0.11'

接受主机192.168.0.10到80端口的ipv4的tcp流量,并且转向192.168.0.11主机的8080端口,但是需要提前激活masquerade

这里需要说明,firewalld是iptables的前端控制器,可以极大的方便服务器防火墙的控制。如果后面需要可以适当介绍一下有关iptables的知识。

延伸:

http服务是80端口

https服务是443端口

ssh服务是22端口

需要提及的一点是linux中国上知识总结非常标准化,可以进入技术区多多参考。