跳至主要內容

pve防火墙

chensino原创大约 2 分钟

参考:https://www.xh86.me/?p=11324open in new window

一、防火墙简介

pve有3个层级防火墙:

  1. 数据中心的防火墙
  2. 节点防火墙(主机防火墙)
  3. 虚拟机防火墙

20240929173211

1.1 数据中心防火墙

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

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

1.2 主机防火墙

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

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

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

说的直白一点就是这个防火墙控制的就是pve那个debian系统本身,比如pve的web管理页面(8006端口)、ssh等

1.3 虚拟机防火墙

这个就是系统级别的防火墙了,和我们平时用的物理机防火墙就是一样的了

二: 防火墙配置文件

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

#数据中心防火墙

/etc/pve/firewall/cluster.fw

#主机防火墙

/etc/pve/nodes/<nodename>/host.fw

#vm和lxc的防火墙

/etc/pve/firewall/<VMID>.fw

三、实际配置

3.1 配置主机防火墙

目的是实现pve系统收到保护,我不想让别人的ip随便登录我的pve管理界面,以及远程我的sshd服务

1、 开启数据中心防火墙(必须开,否则所有防火墙就不生效)

20240929174029

2、设置别名

在数据中心设置一个别名,方便在其他地方引用,当然也可以在虚拟机防火墙设置也行,这里我犯了一个严重错误导致浪费很长时间。我的目的是想让所有192.168内网都放行,结果我写成192.168.0.0/24,这个放行的其实是192.168.0.1到192.168.0.255,正确写法应该是192.168.1.0/24

20240929174255

3、在主机防火墙引入上一步设置的别名

20240929174733

4、开启主机防火墙

20240929174802

3.2 开启虚拟机级别防火墙

1、2步同上,3、4步也差不多,不过要点到对应的虚拟机再设置。

20240929174925

20240929174938