嘘~ 正在从服务器偷取页面 . . .

使用OPNsense实现跨区域组网


简介

OPNsense是一个开源的,易于使用和易于构建的基于FreeBSD的防火墙和路由平台。OPNsense提供了
大多数在昂贵的商业防火墙中才有的功能特性。OPNsense是pfSense的一个分支,由Deciso b.v.出
资创建。

OPNsense是一个功能非常丰富强大的开源防火墙及路由平台,本篇主要来介绍如何使用OPNsense来实
现跨区域组网。实现不同地域的局域网通过OPNsense进行直接互联和通信。在逻辑上如同在同一个局
域网中。

环境准备

如下图,本次实验模拟在Beijing和Shenzhen两地的数据中心或者是两地的Office办公室通过OPNsense
进行互联,实现两地可以通过私有IP地址进行通信,组成公司内部网络。
隧道网络地址:10.0.0.0/24
Beijing Datacenter:
内部网络地址:192.168.1.0/24
OPNsense服务器:OPNsense-Server-BJ IP:192.168.3.1/24
Shenzhen Datacenter:
内部网络地址:192.168.3.0/24
OPNsense服务器:OPNsense-Server-SZ IP:192.168.3.2/24
注:本次实验使用私有IP地址来模拟公网IP

下载安装映像

通过如下网址下载安装映像:
https://opnsense.org/download/
OPNsense提供多种安装映像,可根据实际需求选择下载:
dvd: ISO安装程序映像,具有在VGA模式下运行的实时系统功能。在amd64平台上支持UEFI引导。
vga: USB安装映像与实时系统功能运行在vga模式作为GPT引导。在amd64平台上支持UEFI引导。
串行:USB安装映像与实时系统功能运行在串行控制台(115200)模式,MBR模式启动。
nano:以MBR模式启动,适用于采用U盘、SD卡或CF卡的预装映像文件

安装准备

1,本次采用VMware虚拟机的方式进行安装,安装前确保已经在ESXi中配置好相应的vSwitch。
2,创建虚拟机时,虚拟机类型选择FreeBSD。
3,虚拟机硬件配置最小化即可,比如1G内存,1vCPU,10G硬盘。也可以按照OPNsense网站上的
建议进行配置。
4,虚拟机需要配置两个网卡,一个连接公网,一个连接内部局域网。第一个网卡用来连接内部局
域网,也就是LAN口。第二个网卡用来连接公网,也就是WAN口。所以如第一条强调的,需要先确保
已经在ESXi中配置好相应的vSwitch对应这两个网卡接口。
5,需要安装两个OPNsense服务器和相应的Client系统用来演示跨区域组网。如下图,本次演示一
共使用了5台虚拟机。
6,可以先将Client虚拟机安装完成,然后再安装OPNsense。安装时注意不同区域的VM选择正确的
网卡。

开始安装

1,使用下载的安装映像启动虚拟机

2,在启动过程中,会提示是否要手动配置LAN/WAN端口。这里可以先不配置,端口会自动配置完成,
如果前面所讲的网卡顺序正确,这里就不会有问题。一直等到出现如下界面。这时OPNsense的服务
已经可以使用,如果不向硬盘中安装,就会一直以LiveCD的模式运行。

3,在上图的登录界面使用”installer”登录进入安装界面,默认密码为:opnsense

4,直接按回车键选择接受

5,直接按回车选择向导式安装

6,直接按回车选择磁盘

7,安装模式,选择GPT/UEFI模式

8,直接按回车创建交换分区

9,直接回车,这里我们先不修改密码

10,安装结束,重启系统

11,安装完成后,通过”root”账号登录,默认密码:opnsense,然后选择第2项根据规划修改WAN口
和LAN口的IP地址,如下图是两台服务器的IP配置。配置完成后,确保两台服务器的WAN口之间可以
相互PING通,使用第7项进行PING测试。

修改WAN口,由于我们是使用私有IP地址模拟公网IP,所以需要修改WAN口属性允许私有IP流量通过。
因为默认情况下,路由端口是不允许私有网络地址的流量通过的。在OPNSense的WAN设置中,取消
“ 拦截私有网络”和“ 拦截bogon网络”。

配置跨区域组网

1,首先配置OpenVPN服务器,通过浏览器登录Beijing OPNsense服务器,选择VPN–OpenVPN–服
务器。我们通过在两地之间建立VPN隧道来实现跨区域组网。

描述:VPNServer-BJ
服务器模式:端对端(共享秘钥)
协议:UDP
设备模式:tun
接口:WAN
本地端口:1194
加密算法:AES-256-CBC(256bit key,128 bit block)
认证摘要算法:RSA-SHA512(512-bit)
IPv4隧道网络:10.0.0.0/24
IPv4本地网络: 192.168.1.0/24
IPv4远程网络: 192.168.2.0/24

2,配置防火墙
需要配置”WAN”和”OpenVPN”的防火墙规则,这里为了方便演示,将防火墙规则都配置为全部放行。

3,查看状态
如下图,完成以上配置以后,OpenVPN的链接状态为”waiting”

4,配置OpenVPN客户端
通过浏览器登录Shenzhen OPNsense服务器,选择VPN–OpenVPN–客户端。

描述:VPNServer-SZ
服务器模式:端对端(共享秘钥)
协议:UDP
设备模式:tun
接口:WAN
Remote server:192.168.3.1 端口:1194
预共享秘钥:将在服务器端生成的秘钥复制粘贴过来
加密算法:AES-256-CBC(256bit key,128 bit block)
认证摘要算法:RSA-SHA512(512-bit)
IPv4隧道网络:10.0.0.0/24
IPv4远程网络: 192.168.1.0/24

5,同样配置防火墙规则为全部放行
6,查看OpenVPN的链接状态,等待片刻,可以刷新一下状态。可以看到状态为”UP”。证明隧道网络已
经建立,如果是其它状态,则说明OpenVPN的链接没有成功。到这里,跨区域组网就完成并且两边的
网络就可以正常通信了。

验证跨区组网络通信

1,分别的两边的Client主机中PING对方的网络,由于两端的网络掩码均为24,属于不同的网段,正常
情况是不互通的。通过跨区域组网,两边网组已经互通。
在IP地址为192.168.1.100的主机上PING对方192.168.2.10主机,确认可以PING通
在IP地址为192.168.2.10的主机上PING对方192.168.1.100主机,确认可以PING通

2,在Shenzhen site的主机上访问Beijing site的OPNsense服务器,确认可以正常登录。

3,在Beijing site创建一台Web服务器,并验证能够在Shenzhen site访问此web。

在Shenzhen site的主机上可以正常打开此web页面

4,测试文件共享
在Beijing的主机上创建一个共享文件夹和几个文件

在Shenzhen site可以正常打开此共享文件夹

到这里,全部测试结束。可以看到通过此方法可以轻松让两地的局域网组合起来形成一个逻辑上的单
一网络,这对用户来说非常有好处,通过此方法可以实现组建公司内部网,或者进行异地数据备份,
甚至建立异地双活等高可用解决方案。相对价格高昂的付费软件,OPENsense是一个不错的选择。
OPNsense功能非常丰富,后期我们再对其它功能进行演示。


文章作者: kclouder
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 kclouder !
  目录