通读wifidog的源码可以发现wifidog的各种策略都是通过iptables实现的
而wifidog本身并没有实现URL白名单,通过修改代码实现也可以,通过外在的iptables命令实现也可以
iptables实现的原理是把白名单URL当成认证服务器一样的来处理,策略中如何处理认证服务器,就如何处理白名单!
下面是实现放行微信的命令
iptables -I WiFiDog_br-lan_Global -d short.weixin.qq.com -j ACCEPT
iptables -I WiFiDog_br-lan_Global -d long.weixin.qq.com -j ACCEPT
iptables -I WiFiDog_br-lan_Global -d szlong.weixin.qq.com -j ACCEPT
iptables -I WiFiDog_br-lan_Global -d szshort.weixin.qq.com -j ACCEPT
iptables -I WiFiDog_br-lan_Global -d mp.weixin.qq.com -j ACCEPT
iptables -I WiFiDog_br-lan_Global -d res.wx.qq.com -j ACCEPT
iptables -t nat -I WiFiDog_br-lan_Global -d mp.weixin.qq.com -j ACCEPT
iptables -t nat -I WiFiDog_br-lan_Global -d res.wx.qq.com -j ACCEPT
iptables -t nat -I WiFiDog_br-lan_Global -d short.weixin.qq.com -j ACCEPT
iptables -t nat -I WiFiDog_br-lan_Global -d long.weixin.qq.com -j ACCEPT
iptables -t nat -I WiFiDog_br-lan_Global -d szlong.weixin.qq.com -j ACCEPT
iptables -t nat -I WiFiDog_br-lan_Global -d szshort.weixin.qq.com -j ACCEPT
这个命令实现的方法是通过解析URL成IP地址,放行IP地址实现的,微信在全国有很多服务器,在不同地区,解析成的ip地址可能不同
注意:
运行上面的命令必须wifidog已经启动的情况下,否则会添加失败!
建议在wifidog的源码中修改,当iptables规则初始化完成后,调用这个脚本,就可以实现了!