禁用pfSense的DNS解析器/转发器
登录到pfSense防火墙Web UI,转到“服务”>“ DNS解析器”,取消选中“启用”,单击“保存。如果启用了DNS转发器,执行相同的取消操作。
安装AdGuardHome
转到AdGuardHome的发布主页,下载适用于FreeBSD的AdGuard的最新版本。如果防火墙是64位版本,那么下载AdGuardHome_freebsd_amd64.tar.gz。如果是32位,那么下载AdGuardHome_freebsd_386.tar.gz。
使用Putty或SSH SSH登录到pfSense的Shell界面,然后执行以下命令来下载程序:
cd /
mkdir opt
cd opt
fetch https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.104.0-beta2/AdGuardHome_freebsd_amd64.tar.gz
tar -xvf AdGuardHome_freebsd_amd64.tar.gz
cd AdGuardHome
./AdGuardHome
配置AdGuardHome
在浏览器上输入”http://192.168.5.1(防火墙LAN地址):3000”进入AdGuard Home的Web配置界面。配置方法可以搜索相关教程,这里不再赘述。
为了确保AdGuard可以正确获取过滤器,还需要安装ca_root_nss。
进入pfSense shell环境运行以下命令:
pkg install ca_root_nss
接下来,安装screen,确保关闭ssh也可以运行AdGuard。
pkg install screen
还可以安装nano文本编辑器,以方便编辑简单的文本文件。
pkg install nano
最后,安装shellcmd插件,让AdGuard Home可以在开机的时候随防火墙一起启动。导航到“系统”>“插件管理”>“可用插件”,找到shellcmd插件,点击右侧的安装按钮进行安装。
设置开机启动
转到服务> shellcmd,然后单击添加:
Command: /usr/local/bin/screen -S AdGuardHome_screen -d -m /opt/AdGuardHome/AdGuardHome
Shellcmd Type: shellcmd
Description: AdGuard
单击“保存”,然后重新启动。AdGuardHome将随pfSense防火墙一起启动。
使用AdGuard DNS
转到pfSense Web界面的“系统”>“常规设置”菜单,将DNS服务器设置为192.168.5.1,删除所有其他DNS。
现在,AdGuard Home已经在pfSense上启动并运行。
局域网客户端的DNS设为pfSense防火墙的LAN接口地址192.168.5.1,也可以在DHCP中把DNS设为192.168.5.1。
测试
进入pfSense Shell环境并输入:
dig @192.168.5.1 pfschina.org
它应该输出本博客的IP地址。
在Windows上,执行以下命令:
nslookup pfschina.org 192.168.5.1
测试是否输出本博客的IP地址。