OPNsense 防火墙系列一:安装、基础配置(PPPoE、IPv6、更换软件源)

说明

OPNsense 其实是我第一次使用的路由防火墙系统,按照官方说法:“OPNsense® 是一个开源的、易于使用和易于构建的基于 FreeBSD 的防火墙和路由平台。”

这里 OpenWrt 不算,OpenWrt 其实只能算是路由器固件或路由操作系统。本来我也只是想要一个支持 PPPoE 和 IPv6 防火墙的路由系统,但经过我的体验, OpenWrt 高度客制化,相当复杂和不稳定,被我放弃。后来,我看到 iKuai 爱快路由系统又试了试,但由于 iKuai 做了产品线切割还售卖硬件防火墙,不能说 iKuai 路由的 IPv6 防火墙聊胜于无,只能说懂得都懂。

后来转念一想,我为什么不找个专业 IPv6 防火墙,只需要它支持 PPPoE 呢?我就网上搜了搜相关内容,选择了 OPNsense 。

经过我的体验, OPNsense 支持功能如下表,可作为选择时的参考。

功能 是否支持 说明
PPPoE
IPv4 防火墙
IPv6 防火墙
IPv4 端口转发
IPv6 端口转发
IPv4-IPv6 相互解析 FreeBSD 不支持,但通过插件 HAProxy 实现,请参阅后文。
入侵检测
负载均衡
REST API
简体中文
WOL 网络唤醒 通过下载官方插件实现
DDNS 不支持阿里云、腾讯云等国内动态域名解析。通过下载官方插件实现 Cloudflare 等外国 DDNS 。
—— —— ——
Docker FreeBSD 不支持
阿里云 DDNS 后续手动通过脚本支持

本文仅记录通过 U 盘/ TF 卡安装启动过程。

若要写入硬盘,则请参考: Yogile / OPNsense_Toss_Notes

包含以下文章:

  1. OPNsense安装
  2. 系统配置并首次系统更新
  3. 分配网络接口
  4. 设置DHCPv4
  5. 设置DHCPv6
  6. 设置路由器通告
  7. 设置Unbound
  8. 设置防火墙
  9. 设置系统参数

先前准备

一个 4G 大小以上的 U 盘或 SD 卡。

官网下载 OPNsense Nano: 下载 - OPNsense®是真正的开源防火墙等 ,建议家用安装 Nano 版本即可,且仅有 Nano 版本支持 U 盘/ TF 卡。

烧写工具: Rufus - 轻松创建USB启动盘

安装主机:

要求 支持 建议满足最低值 说明
架构 x86 仅支持 x86 架构
内存 ddr3、ddr4(ddr2 未试过) 1G及以上
安装盘 硬盘/ U 盘/ SD 卡 4G及以上
网口 RJ45 2 个及以上 可以通过 USB / Type-C 扩展,但支持程度要去查一下

烧写安装

运行 rufus ,选择目标 U 盘,选择下载的 .img.bz2 镜像文件,点击 开始

rufus

烧写好后,插入目标主机,进 BIOS 设置 U 盘启动顺序最优先,重启。

启动配置

登录

在主机命令行登录 root 账户:

账户 密码
root opnsense

显示 主界面


  0) Logout                                         7) Ping host
  1) Assign interfaces                        8) Shell
  2) Set interface IP address             9) pfTop
  3) Reset the root password          10) Firewall log
  4) Reset to factory defaults          11) Reload all services
  5) Power off system                       12) Update from console
  6) Reboot system                           13) Restore a backup

Enter an option: 

终端连接 LAN 口

一般来说会自动绑定一个网口到系统 LAN 口,通过 主界面 键入 8 进入 Shell 命令行。

ifconfig 找到,默认绑定 LAN 口(一般固定 IPv4 为 192.168.1.1),确认绑定成功:

root@OPNsense:~ # ifconfig
igb0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        description: LAN
        options=4802028<VLAN_MTU,JUMBO_MTU,WOL_MAGIC,NOMAP>
        ether xx:xx:xx:xx:xx:xx
        inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
        ......

然后内网终端网线连接 LAN 口,配置终端网络地址自动获取,浏览器输入 192.168.1.1 即可访问 WEB UI 。

webui

配置向导

向导

System -> Wizard 中,点击 Next ,通过向导初始化配置。

向导

中文和 DNS 服务器

项目 说明
Language Chinese(Simplified) 设置中文
Primary DNS Server 223.5.5.5 阿里云DNS
Secondary DNS Server 114.114.114.114 114DNS

chinese_dns

NTP 服务器和时区

项目 说明
Time server hostname 0.time.pool.aliyun.com 1.cn.ntp.org.cn 2.ntp.ntsc.ac.cn 3.time1.cloud.tencent.com 替换
Timezone Asia/Shanghai

配置 WAN 接口

项目 说明
IPv4配置类型 PPPoE
阻止RFC1918私有网络 勾选
拦截bogon网络 勾选

配置 LAN 接口

自定义网段。

设置 root 密码

建议重设。

重新加载

在向导配置完成后,重新加载。

配置 WAN PPPoE + IPv6

接口 -> [WAN] 中,配置:

项目 子项目 说明
基本配置
启用接口 勾选
通用配置
阻止私有网络 勾选
拦截bogon网络 勾选
IPv4配置类型 PPPoE
IPv6配置类型 DHCPv6 配置 PPPoE
PPPoE配置
用户名 自行填入
密码 自行填入
DHCPv6客户端配置
配置模式 基本 配置 PPPoE
仅请求IPv6前缀 勾选 配置 PPPoE
使用IPv4连接 勾选 配置 PPPoE

WAN_1

WAN_2

保存,并执行更改。

刷新后,一分钟后在 接口 -> 概况 中可以看到可以看到 WAN 口 PPPoE 拨号情况。

pppoe

配置 LAN

DHCPv4

服务 -> DHCPv4 -> [LAN] 中,配置:

项目 说明
在LAN接口上启用DHCP服务器 勾选
范围 192.168.1.100192.168.1.199 前后未设置段可以自申请

lan_dhcpv4

最后还可以设置 DHCP 静态映射。

保存,并应用更改。

IPv6

接口 -> [LAN] 中,配置:

项目 子项目 说明
基本配置
启用接口 勾选
通用配置
阻止私有网络 不勾选
拦截bogon网络 不勾选
IPv4配置类型 静态IPv4
IPv6配置类型 跟踪接口
跟踪IPv6接口
IPv6接口 WAN

lan_ipv6_1

lan_ipv6_2

保存,并应用更改。

刷新后,一分钟后在 接口 -> 概况 中可以看到可以看到 LAN 口情况。

lan_ipv6_gal

更改软件源

由于 OPNsense 更新过于缓慢,

可以在 系统 -> 固件 -> 设置 中,选择 镜像dns-root.de(HTTPS, Cloudflare CDN)

保存,并应用更改,重启系统。

也可以修改软件源到 163 源,但是经过我的测试 163 源有时会提示“该镜像源无软件源”之类的,自己权衡,反正能改。

系统 -> 固件 -> 设置 中,选择 镜像(other) ,复制粘贴值:http://mirrors.163.com/opnsense 。保存,并应用更改,重启系统。

mirrors

系统 -> 固件 -> 状态 中,检查升级 ,后在 系统 -> 固件 -> 更新 中进行软件更新即可。

设置 AP

一般来说,设置 桥接 即可。

但我是用的华为 AX3 Pro,无法在桥接后管理 AP 。同时我入的是华为生态,桥接之后也无法通过“智慧生活” APP 看到华为生态设备。

所以建议华为/荣耀路由无线设备通过二级局域网 AP 连接 OPNsense ,而不是作为 AP 或用 OPNsense 开启无线。

二级无线路由设置:

项目 说明
上网方式 手动输入 IP (静态IP)
IP 地址 192.168.1.2
子网掩码 255.255.255.0
网关 192.168.1.1
IPv6 开启 实现 IPv6 中继

开始使用

现在, OPNsense 的初始简单配置就基本结束了,现在实现的功能有:

  • WAN PPPoE
  • LAN 终端 DHCPv4 连接互联网
  • LAN 内部局域网 DHCP 公网 IPv6
  • 完全禁止外部网络访问/

后续文章会配置:

  • OPNsense HTTP SSL 和监听端口修改
  • IPv6 端口转发
  • 阿里云 DDNS
  • WOL 网络唤醒
  • 等等

posted @ 2022-08-31 12:20  Yogile  阅读(24226)  评论(1编辑  收藏  举报