佛西博客

您所在的位置:网站首页 如何暂停防火墙工作 佛西博客

佛西博客

2024-07-14 21:03| 来源: 网络整理| 查看: 265

安装docker会破坏防火墙功能。所以!要用防火墙,请卸载docker

一:防火墙简介

pve有3种防火墙:1、面对数据中心的防火墙。处理流出流入数据中心的流量2、面对虚拟化服务器的防火墙。处理主机的流量3、面对vm的防火墙。处理vm流出流出的流量。

初次接触,可能很搞昏,这么多的防火墙,搞锤子,到底是哪个管哪个?

实际上,他们的是独立的。互不干预,但是又有联系。

当我们进入pve-webgui面板。会看到数据中心——节点——vm。这3个模块。

1.1 数据中心防火墙

数据中心,是由节点组成的一个集群。可以说,数据中心防火墙,是专门处理集群流量的防火墙。

只有数据中心防火墙开启,才能开启集群内的防火墙,否则单独开启vm的防火墙是无效的。

1.2 主机防火墙

主机防火墙,只负责处理虚拟化服务器上的流量,比如一台服务器ip为192.168.1.2。

那么这个防火墙,只会关注192.168.1.2的流量。下面的虚拟机流量是独立开的。

这个防火墙的开关,不会影响vm的防火墙,所以要开启vm的防火墙,不必须开启这个防火墙,不同于数据中心防火墙

 

1.3 vm防火墙

这个不用介绍吧。

二: 防火墙配置文件

pve的防火墙配置文件在下面路径

#数据中心防火墙 /etc/pve/firewall/cluster.fw #主机防火墙 /etc/pve/nodes//host.fw #vm和lxc的防火墙 /etc/pve/firewall/.fw 2.1 数据中心防火墙的配置文件 OPTIONS] 该小节用于设置整个集群的防火墙配置项。 ebtables: (default = 1) 集群范围内启用 ebtables。 enable: (0 -N) 启用/禁用集群范围的防火墙。 log_ratelimit: [enable=] [,burst=] [,rate=] 设置日志记录速度阀值。 burst= (0 - N) (default = 5) 将被记录的初始突发包。 enable= (default = 1) 启用或禁用阀值 rate= (default = 1/second) 突发缓冲区重新填充频度。 policy_in: 流入方向的防火墙策略。 policy_out: 流出方向的防火墙策略。 [RULES] 该小节用于设置所有节点公共的防火墙策略。 [IPSET ] 整个集群范围内有效的 IP 集合定义。 [GROUP ] 整个集群范围内有效的组定义。 [ALIASES] 整个集群范围内有效的别名定义

对于web-gui来说,防火墙是能可视化编辑,对应【数据中心】——【防火墙】。当然还是需要了解这个东西,毕竟可能在某些环境中,关闭了GUI,需要进终端手动编辑。

2.2 主机防火墙配置文件 [OPTIONS] 该小节用于设置当前主机的防火墙配置项。 enable: 启用/禁用主机防火墙策略。 log_level_in: 流入方向的防火墙日志级别。 log_level_out: 流出方向的防火墙日志级别。 log_nf_conntrack: (default = 0) 启用记录连接跟踪信息。 ndp: 启用 NDP。 nf_conntrack_allow_invalid: (default = 0) 在跟踪连接时允许记录不合法的包。 nf_conntrack_max: (32768 -N) 最大的跟踪连接数量。 nf_conntrack_tcp_timeout_established: (7875 -N) 反向连接建立超时时间。 nosmurfs: 启用 SMURFS 过滤器。 smurf_log_level: SMURFS 过滤器日志级别。 tcp_flags_log_level: 非法 TCP 标志过滤器日志级别。 tcpflags: 启用非法 TCP 标志组合过滤器。 [RULES] 该小节用于设置当前主机的防火墙策略。 2.3 vm/lxc的防火墙配置文件 [OPTIONS] 该小节用于设置当前虚拟机或容器的防火墙配置项。 dhcp: 启用 DHCP。 enable: 启用/禁用防火墙策略。 ipfilter: 启用默认 IP 地址过滤器。相当于为每个网卡接口增加一个空白的 ipfilter-net地 址集合。该 IP 地址集合隐式包含了一些默认控制,例如限制 IPv6 链路本地地址为网 卡 MAC 生成的地址。对于容器,配置的 IP 地址将被隐式添加进去。 log_level_in: 流入方向的防火墙日志级别。 log_level_out: 流出方向的防火墙日志级别。 macfilter: 启用/禁用 MAC 地址过滤器。 ndp: 启用 NDP。 policy_in: 流入方向的防火墙策略。 policy_out: 流出方向的防火墙策略。 radv: 允许发出路由通知。 [RULES] 该小节用于设置当前虚拟机或容器的防火墙策略。 [IPSET ] IP 集合定义。 [ALIASES] IP 地址别名定义。

看不懂,没关系!都是由GUI的

三:GUI里的防火墙

这部分好难写呀!

3.1 GUI防火墙2步走

GUI防火墙,总的来说,只有2个选项。

3.1.1 自定义防火墙规则

就是点击【防火墙】三个字,出现自定义防火墙界面。

这里重点介绍一下。点击【添加】,我们会出现下面这个界面

这里可以看到这些选项,因为是GUI特别好理解

【方向】:“in”指进入的流量,“out”出去的流量。【启用】:勾选之后,才会启用这个防火墙规则。【操作】:“accept”接受,“drop”丢弃,“reject”拒绝。【宏】:是官方预定义的参数,比如“https”就是tcp/443,不用再选协议和端口了。【接口】:是vm的网络接口,具体是网络接口,可以查看vm-【硬件】选项里的“网络设备",后面接了个net1,这个就是网络接口。【协议】:自选协议【源】:源地址,可以是一个ip,也可以是ip集合,也可以是一段网络,用英文逗号分开。【源端口】:源地址的端口, 端口范围例如800:900,开放800-900端口 【目标】:目标【目标端口】:目标端口,端口范围例如800:900,开放800-900端口【备注】:就是备注而已!

注意!如果上述选项,为空,就代表所有。协议为空,就代表所有协议

例1,我要给VM开放一个任何人都可连接的22-ssh端口。那么这里ssh是基于TCP的,所以就需要开通一个TCP/22的端口。在想一下。这个22端口,是所有人都可以连接的,于是源和端口都应该为空,如下图

防火墙启用之后,会有一段生效的时间,大概是几秒钟吧。

例2:我要给一个主机访问vm的所有网络权限。给一个主机,单个网络权限。

在192.168.4.221的主机上,只能ping,无法ssh

在192.168.4.2主机上,能ssh。

有其他例子,稍后会给大家展现。

3.1.2 官方预设防火墙规则

如下图所述,我简单介绍下。

在这些选项中,可以设定vm/主机/防火墙的开关。

输入/输出策略。是默认策略。这里需要强调一下。

如果,默认输入是accept,那么自定义防火墙,输入必须是reject和drop,才会生效。因为已经默认了可以输入!所以,再去自定义输入规则是无效的。同理!如果默认是drop,你得设置accept或者reject才行,不然设置是多余的!

3.2 IPSET和别名

ip分组能够简化管理员的管理。

3.2.1 什么是ipset和别名

在pve里,有两个ip群组概念。

1、别名:别名是一个ip段的集合。例如192.168.1.1/24 我可以设置名称为local2、IPSET:这是一个别名的集合。

3.2.2 区别

一个别名只能对应一个ip段。

可以看到只能填写ip/CIDR

注意的是,不管是别名还是ipset,名称都需要是英文,否则创建别名/ipset会提示错误,备注可以使用中文 。

ipset是别名中的集合。

例如有两个ip别名local别名:192.168.1.0/24local本地别名:10.13.14.0/24创建ipset的时候,可选别名或者自定义ip段

3.2.3 例子

ipset和集合具体应用可以看下图

在设置ipset和别名之后,可以选择ipset或者别名。相当方便,能够显著的减少防火墙规则数目。

四 开启防火墙步骤

1、在数据中心的防火墙,开启tcp/8006端口

2、在主机防火墙,开启tcp/22,8006端口

3、在面板里面,开启数据中心防火墙、开启主机防火墙、开启VM的防火墙。

PVE官方文档说的是,开启防火墙之后,默认开放8006/22端口,但是我有一次失败了,所以,还是先开启端口,再开总的防火墙吧,免得出意外了。

之后,就可以按照上面的介绍,按照需求来了。

 

在PVE的角色权限中,只有VMADMIN/VMnetwork权限才能使用防火墙,vmuser不行

 

更多例子,请见 pve的防火墙配置例子

更多教程,请看pve教程汇总



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3