日常运维-4

来源:互联网 发布:世界五大宫之首 知乎 编辑:程序博客网 时间:2024/05/17 08:19

10.19 iptables规则备份和恢复

  • 保存iptables规则
    (1)service iptables save//会把规则保存到/etc/sysconfig/iptables中

  • 备份iptables 规则

保存到其他文件中,可以使用iptables-save >文件名
这里写图片描述

  • 恢复iptables 规则
    (1)使用命令iptables-rstore < 文件名(里面保存着iptables规则)
    这里写图片描述

10.20 firewalld的9个zone

  • firewalld是centons7以及以后的版本会使用的防火墙机制。
  • 关闭iptables服务,打开firewallld服务
    这里写图片描述
  • iptables -nvL 默认是查看filter表, -t nat 可以指定查看nat的默认规则
    这里写图片描述

  • firewalld 有2个基础概念,分别是zone和service ,每一个zone里面有不同的iptables规则。默认一共9个zone,在censot7中的zone为public。

  • 查看系统所有的zone
    命令:firewall-cmd --get-zones
    这里写图片描述
  • 查看系统默认的zone
    命令:firewall-cmd --get-default-zone
    这里写图片描述
  • 简单介绍上面提到的9个zone
    (1)drop(丢弃):任何接收的网路数据包都被丢弃,没有任何回复。仅能有发送出去的网络连接。{最安全}
    (2)block(限制):任何接收的网络连接都被IPV4的icmp-host-prohibited信息和IPV6的icmp-host-prohibited信息所拒绝。
    (3)public(公共):在公共区域内使用,不能相信网络内的其他计算机不会对你的计算机造成危害,只能接收经过选取的连接。
    (4)dmz(非军事区):用于你的非军事区内的电脑,此区域内可以公开访问,可以有限地进入你的内部网络,仅仅接收经过选择的连接。
    (5)external(外部):特别是为路由器启用了伪装功能的外部网,你不能信任来自网络的其他计算,不能相信它们不会对你的计算机造成危害,只能接收经过选取的连接。
    (6)work(工作):用于工作区。你可以基本信任网络内的其他电脑不会危害你的电脑。仅仅接收经过选择的连接。
    (7)home(家庭):用于家庭网络,你可以基本信任网络内的其他电脑不会危害你的电脑。仅仅接收经过选择的连接。
    (8)internal(内部):用于内部网络。你可以基本信任网络内的其他电脑不会危害你的电脑。仅仅接收经过选择的连接。
    (9)trusted(信任):可接受所有的网络连接。

10.21 firewalld关于zone的操作

  • 指定默认的zone为其他的
firewall-cmd --set-default-zone=work

work就是指定的zone
这里写图片描述

  • 查看指定网卡所在的zone
firewall-cmd --get-zone-of-interface=ens33

这里写图片描述

如果查看另一块网卡ens37的zone,如果显示no zone ,那么需要配置下,步骤如下
(1)切换到/etc/sysconfig/network-scripts/下,拷贝ens33的配置文件修改网卡名为ens37
(2)重启网络服务

systemctl restart network.service

(3)之后再重新加载firewalld服务

systemctl restart firewalld

(4)如果还是没有,可以用到下面的命令,给指定网卡配置zone

firewall-cmd --zone=public --add-interface=ens37

这里写图片描述

(5)针对指定网卡更改zone,可以使用以下命令

firewall-cmd --zone=work --change-interface=ens37

这里写图片描述

(6)针对指定网卡删除zone

firewall-cmd --zone=work --remove-interface=ens37

这里写图片描述

(7)查看系统所有网卡所在的zone

firewall-cmd --get-active-zones

这里写图片描述


10.22 firewalld关于service的操作

  • services 就是针对一个服务(端口)做的iptables规则
  • 查看系统所有的services
 firewall-cmd --get-services

这里写图片描述这些service都是由一个个配置文件定义的,配置文件的模板在/usr/lib/firewalld/services/目录下,真正生效的配置在/etc/firewalld/services/目录下(默认为空)

  • 查看当前zone下有哪些service
firewall-cmd --list-services```![这里写图片描述](http://img.blog.csdn.net/20171201234310310?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2h1bnlhbmczMTU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)   - 也可以查看指定zone下的services  ![这里写图片描述](http://img.blog.csdn.net/20171201234636941?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2h1bnlhbmczMTU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)    默认block与trusted是没有service的 - 针对public进行操作  - 将http增加到public zone下面<div class="se-preview-section-delimiter"></div>

这里写代码片
“`

firewall-cmd --zone=public --add-service=http

这里写图片描述

这里写图片描述 现在以上的操作仅仅是在内存中,一旦重启后,就又需要重新添加,那就需要修改配置文件了

  • 更改配置文件,之后会在/etc/firewalld/zones目录下生成配置文件。
firewall-cmd -zone=public -add-service=http --permanent

这里写图片描述

  • 在修改完zones后,会在做一个备份文件,后缀名是.old 。因为还没有更改过services,所以默认是空的。
    这里写图片描述

  • 配置模板
    这里写图片描述

  • 实训操作
    1.需求:ftp服务自定义端口1121,需要在work zone下放行ftp
    2.操作过程
    (1)拷贝/usr/lib/firewalld/services/ftp.xml到/etc/firewalld/services/
    (2)然后进行编辑/etc/firewalld/services/ftp.xml
    把21端口改为1121
    这里写图片描述
    (3)接着将/usr/lib/firewalld/zones/work.xml拷贝到/etc/firewalld/zones/后 ,
    编辑/etc/firewalld/zones/work.xml
    增加一行
    这里写图片描述

  • 接着进行重新加载该服务

命令

firewall-cmd --reload

这里写图片描述

  • 查看是否成功
    这里写图片描述
原创粉丝点击