由于国内运营商封堵常用端口,使用pfSense自带的动态DNS程序远程访问防火墙非常困难,现在可以借助DDNSTO来实现。DDNSTO是由KoolShare小宝开发的一款稳定、快速、简单易用的内网穿透工具。 可以让用户在公司、旅行途中都能够使用浏览器方便的访问家庭内的网络设备。
DDNSTO的优点:
- 无需公网 IP,不被网络环境限制。
- 无需购买域名或服务器,省去了服务器年费和带宽要求以及域名购买、备案等等繁琐操作。
- 全部的安装、配置、使用都在浏览器完成,对小白用户非常友好。
- 支持http2,访问家庭内部网络速度更快。
- 借助独家远程应用中心配合,可以支持远程电脑桌面,远程下载,远程文件管理等更多丰富的功能。
由于DDNSTO目前只支持在linux下安装,无法直接在pfSense或OPNsense上使用,所以要使用DDNSTO对pfSense或OPNsense进行远程访问,还必须在pfSense后面设置OpenWrt旁路由。下面以我的网络配置为例,介绍具体的设置方法。
示例网络环境:
主路由:pfSense,LAN访问地址:192.168.100.254:5678
旁路由:OpenWRT,LAN访问地址:192.168.100.1
安装DDNSTO
浏览器输入OpenWrt访问地址,进入系统>TTYD 终端菜单,输入以下任一命令安装:
使用curl:
sh -c "$(curl -sSL http://firmware.koolshare.cn/binary/ddnsto/openwrt/install_ddnsto.sh)"
使用wget
sh -c "$(wget --no-check-certificate -qO- http://firmware.koolshare.cn/binary/ddnsto/openwrt/install_ddnsto.sh)"
其他方法
cd /tmp; wget --no-check-certificate http://firmware.koolshare.cn/binary/ddnsto/openwrt/install_ddnsto.sh; sh ./install_ddnsto.sh
安装完成后如下:
启用DDNSTO
进入OpenWrt菜单项,导航到服务>DDNS.to内网穿透,打开DDNSTO配置页面,输入DDNSTO的令牌(使用微信注册获取),保存并应用。
配置DDNSTO
进入DDNSTO网站配置后台,按提示输入主域名和目标主机地址,主域名必须输入6个以上字符,后缀由系统自动处理。本例中,由于要访问pfSense防火墙,目标主机地址输入:http://192.168.100.254:5678,如果是访问OpenWrt,则输入http://192.168.100.1。
pfSense配置
配置完成后,稍等片刻,就可以使用域名访问pfSense防火墙。不出意外,会出现以下出错提示:
这是由于pfSense默认启用了DNS Rebind(重绑定)保护所致,还需要对pfSense的设置进行调整。
浏览器输入pfSense防火墙的访问地址,进入系统>高级设置>管理员访问选项卡,选中禁用DNS重绑定检查选项,或在备用主机名栏,输入DDNSTO上映射的主域名。保存并应用更改即可。
OPNsense的设置与pfSense类似,如下图所示:
再次使用域名访问pfSense防火墙,就可以正常访问了。