Clash(现在使用mihomo替代)是一款功能强大的跨平台代理工具,主要用于管理代理规则和流量分流。支持多种代理协议(如 HTTP(S)、SOCKS5、Shadowsocks、VMess等)。提供灵活的规则分流功能,可根据域名、IP和GeoIP分流流量。支持YAML配置文件,易于配置和扩展。
Sing-Box是一款更现代化的代理工具,支持多种代理协议(如Shadowsocks、VMess、Trojan、HTTP(S) 等)。内置流量转发和复杂规则匹配功能。提供插件化设计,可扩展功能(如DNS、路由等)。
MosDNS是一款高性能的DNS解析工具,专注于解决DNS劫持、分流和缓存问题。支持多上游DNS查询,按规则分流。提供DNS-over-HTTPS (DoH)、DNS-over-TLS (DoT) 等加密查询支持。内置缓存功能,提高DNS解析效率。支持复杂的过滤和规则匹配,用于屏蔽广告或定向解析。可与Clash或Sing-Box集成,实现流量分流的DNS 解析。
Tun2Socks是一个将TUN虚拟网络接口流量转发到SOCKS5代理的工具,常用于透明代理场景。捕获来自操作系统或容器的流量,转发TCP和UDP流量到指定的 SOCKS5 代理。支持IPv4和IPv6。可以与Clash或Sing-Box一起使用,用于实现透明代理。
这四者常常配合使用,Clash和Sing-Box提供代理服务和规则管理,MosDNS解决DNS解析问题,而Tun2Socks则完成透明代理的流量转发,组成一个完整的代理与流量管理解决方案。
本教程介绍如何在pfSense上安装代理全家桶,包括Clash、Sing-Box、MosDNS和Tun2Socks。通过该教程,将能轻松搭建一个功能强大的网络代理环境。
环境要求
- 设备已安装pfSense plus或pfSense CE
- 防火墙开启ssh访问
- 在安装配置之前,请先做好系统备份
- 经过测试的Clash、Sing-Box、MosDNS和Tun2Socks的配置文件
安装脚本
一键安装脚本,简化安装过程。脚本特点:
- 自动添加菜单
- 自动添加各种服务
- clash添加本地订阅转换功能
- 系统重置或升级插件功能保留
- 带Web控制程序,方便修改添加配置、控制代理启停和查看运行日志
程序说明
clash使用mihomo代替,sing-box自行编译,MosDNS和Tun2Socks使用github上发布的最新版本。
安装步骤
1.安装全家桶
下载附件并解压缩,然后将文件目录复制到防火墙,进入程序目录,执行以下脚本:
sh install.sh
脚本运行过程如下图所示:
2.修改配置
进入Web界面,刷新浏览器,导航到服务>代理管理菜单,在对应控制模块输入配置并保存,然后点击启动按钮,根据日志信息排查配置问题。
3.配置代理
详细的代理配置请参阅以下文章:
4.开机自启
如果需要代理程序在开机时自动启动,请安装shellcmd插件,并添加以下启动项。
其中tun2socks启动类型为earlyshellcmd,其他为shellcmd。
5.添加系统服务
如果需要在系统服务中添加代理的运行状态,请按以下步骤进行操作:
转到诊断>编辑文件,打开/cf/conf/config.xml文件,找到 <service>项,并添加以下内容:
<service>
<name>tun2socks</name>
<rcfile>tun2socks</rcfile>
<executable>tun2socks</executable>
<description><![CDATA[tun 转 socks]]></description>
</service>
<service>
<name>sing-box</name>
<rcfile>singbox</rcfile>
<executable>sing-box</executable>
<description><![CDATA[sing-box 代理服务]]></description>
</service>
<service>
<name>mosdns</name>
<rcfile>mosdns</rcfile>
<executable>mosdns</executable>
<description><![CDATA[强大的 DNS 工具]]></description>
</service>
<service>
<name>clash</name>
<rcfile>clash</rcfile>
<executable>clash</executable>
<description><![CDATA[Clash 代理服务]]></description>
</service>
保存以后,转到状态>服务,就可以看到各个程序的运行状态。
客户端设置
Windows系统按以下方法添加http和socks代理:点击左下角搜索图标,输入“代理服务器设置”,点击打开,选择手动设置代理,然后按下图设置即可。
1.http代理
2.socks代理
设好代理并保存以后,测试是否能正常访问google、youtube等网站,访问ip111.cn,检查分流设置是否正常。
透明代理
在pfSense、OPNsense防火墙上实现透明代理请参阅以下文章:
注意事项
- 如果遇到问题,建议查看相关程序的服务日志来进行排查。
- 禁止代理程序开机自启,在shellcmd禁用即可。
- 系统升级或重置后,可能需要恢复/etc/rc.conf备份,或者重新安装。
- 根据需要调整clash的config.yaml或sing-box的config.json配置,以满足代理需求。