OPNsense支持在虚拟化环境下运行,本文介绍在Proxmox中安装配置OPNsense防火墙的过程。
这是一个简单示例,如果想让虚拟机获得最大性能,还需要调整接口设置,以及为网卡设置多队列选项等操作。
上传文件
下载OPNsense的 DVD ISO版安装镜像,将其上传到Proxmox 服务器。Proxmox支持通过 Web 界面创建虚拟机的ISO镜像。
创建虚拟机
单击 Web UI 右上角的蓝色“创建 VM”按钮。如果有多个 Proxmox 节点,可以在“节点”下拉列表中选择进行选择。
在“OS”部分,选择上传到Proxmox 的OPNsense ISO镜像。可以将“访客操作系统”保留为默认设置,也可以根据系统类型进行选择(FreeBSD12_x64)。
“系统”设置保留默认值。
选择虚拟机的存储位置。默认情况下,Proxmox 会在主引导硬盘上创建“local-lvm”或“local-zfs”存储,这取决于硬盘是否配置为使用 LVM 或 ZFS。如果创建了其他数据存储,也会显示在下拉列表中。本示例中,虚拟机存储在“local-zfs”上。
输入虚拟机硬盘占用量,官方建议40GB。“IO 线程”选项可以为每个存储设备分配一个额外的CPU线程用于IO/磁盘操作。当有多个磁盘分配给虚拟机时,请选中该选项。
CPU核心数选择4个核心,核心数应根据自身网络处理能力需要设置。为了提高路由性能,建议在高级选项中选中AES 指令集。
内存大小根据OPNsense防火墙运行的服务来确定,如果要运行Sensei,那么内存大小不能少于8 GB。
在网络部分,选择在“系统 > 网络”页面上创建的网桥。OPNsense的WAN 和 LAN 接口使用 2个单独的网桥。在向导阶段添加一个网桥,然后在创建 VM 后再添加另一个网桥。
在完成确认页面上,不要选中“创建完成后启动”选项,因为还需要添加另一个网络接口。
添加另一个网卡
从左侧窗格中单击新添加的OPNsense虚拟机。然后单击“硬件 > 添加 > 网络设备”。
选中第二个网桥。单击“添加”完成设备的添加。
启动虚拟机
单击左侧窗格中的 OPNsense虚拟机,然后单击页面右上角的“启动”。
启动虚拟机后,可以看到虚拟机的图标变为带有绿色箭头的黑屏。点击页面右上角的“>_Console”按钮打开虚拟机控制台。
安装OPNsense
OPNsense安装过程会显示几个屏幕,下图中中显示的内容是“按任意键启动配置导入程序”。本示例是全新安装,不需要按任何键。
提示“开始手动接口分配”时按任意键。
会看到两个接口和它们的MAC地址。可以参考Proxmox 中的MAC地址来仔细检查确认LAN和WAN的正确接口。输入“N”跳过配置 VLAN(或者直接按“Enter”,“N”是默认值)。
首先要输入WAN接口的名称,根据接口选择输入“vtnet0”或“vtnet1”。
再输入 LAN 接口名称。
对于其他附加接口,可以直接按“Enter”忽略。
完成后,屏幕上会显示分配给接口的地址。现在安装的OPNsense VM实际上是实时模式,无需实际安装即可试用 OPNsense,只是在重启后不会保留配置。下面我们要开始实际安装过程。
使用用户名“installer”和密码“opnsense”登录,开始实际的安装过程。
按“Enter”开始。
键盘映射和视频字体使用默认设置,按“Enter”确认。
选择“引导式安装”,然后按“Enter”。
由于只分配了一个硬盘用于安装,按“Enter”即可。
选择推荐的“GPT/UEFI 模式”。按“Enter”。
在内存设定足够的情况下,可以不需要使用交换空间。按“Enter”使用默认值。
现在开始进行安装。
安装完成,进入下面的屏幕,设定Root用户的密码并确认。
进入重启页面,在输入“Enter”之前,从虚拟机中移除OPNsense安装ISO镜像,以免再次从ISO镜像启动。
进入OPNsense 虚拟机的的“硬件”页面,点击“CD/DVD 驱动器”。然后选择“不使用任何媒体”。单击“确定”并返回到控制台窗口。
点击重启后显示的内容如下:
重启完成后,使用“root”用户名和前面设置的密码登录控制台。
根据需要来修改LAN接口地址了。输入选项“2”并按“Enter”。
输入“1”配置 LAN 接口。对于IPv4设置为“静态”,对于 IPv6 设置为“track6”。
输入“Y”设置LAN通过DHCP获取地址。在本示例中,由于网络中已经开启了DHCP服务器,分配的IP地址段为192.168.20.0/24,LAN接口将会自动获得192.168.20.x的IP地址。当然,这里也可以手动指定LAN接口IP地址。
对于 IPv6,跟踪WAN接口是将 IPv6 地址分配给本地网络的常用方法。由于示例是内部网络,WAN接口不会从ISP 获得 IPv6 地址,这里输入“N”。
如果希望通过DHCPv6从内部网络获取 IPv6 地址,请输入“Y”为LAN接口启用 DHCP6。如果不想将IPv6用于LAN接口,请输入“N”。
下图内容是提示是否使用HTTP协议访问防火墙的Web界面。本示例中,输入“N”,使用HTTPS协议访问防火墙。
输入“N”生成新的自签名证书。
继续输入“N”恢复Web GUI默认访问设置。
完成后,现在可以看到给LAN接口分配的192.168.20.x 地址和IPv6地址。现在可以通过屏幕上显示的LAN地址访问防火墙Web界面。
登录Web界面
在浏览器中输入https://192.168.20.x,打开防火墙的Web界面。使用“root”用户名和设置的密码登录。
至于后面OPNsense的详细安装配置,请参照OPNsense安装手册。
注意:在虚拟机中运行OPNsense,必须安装os-vmware插件以提高系统性能(系统>固件>插件)。如果发现防火墙网络吞吐能力大幅下降,请在接口>设置中,禁用三个硬件卸载选项。