66 lines
2.3 KiB
Bash
Executable File
66 lines
2.3 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
set dhcp.@dnsmasq[0].localuse=1
|
|
commit dhcp
|
|
delete ucitrack.@passwall[-1]
|
|
add ucitrack passwall
|
|
set ucitrack.@passwall[-1].init=passwall
|
|
commit ucitrack
|
|
delete firewall.passwall
|
|
set firewall.passwall=include
|
|
set firewall.passwall.type=script
|
|
set firewall.passwall.path=/var/etc/passwall.include
|
|
set firewall.passwall.reload=1
|
|
commit firewall
|
|
delete ucitrack.@passwall_server[-1]
|
|
add ucitrack passwall_server
|
|
set ucitrack.@passwall_server[-1].init=passwall_server
|
|
commit ucitrack
|
|
delete firewall.passwall_server
|
|
set firewall.passwall_server=include
|
|
set firewall.passwall_server.type=script
|
|
set firewall.passwall_server.path=/var/etc/passwall_server.include
|
|
set firewall.passwall_server.reload=1
|
|
commit firewall
|
|
set uhttpd.main.max_requests=50
|
|
commit uhttpd
|
|
EOF
|
|
|
|
|
|
touch /etc/config/passwall_show >/dev/null 2>&1
|
|
[ ! -s "/etc/config/passwall" ] && cp -f /usr/share/passwall/0_default_config /etc/config/passwall
|
|
|
|
global_xray=$(uci -q get passwall.@global_xray[0])
|
|
[ -z "${global_xray}" ] && {
|
|
cfgid=$(uci add passwall global_xray)
|
|
uci -q set passwall.${cfgid}.sniffing=$(uci -q get passwall.@global_forwarding[0].sniffing || echo "1")
|
|
uci -q set passwall.${cfgid}.route_only=$(uci -q get passwall.@global_forwarding[0].route_only || echo "0")
|
|
uci -q set passwall.${cfgid}.buffer_size=$(uci -q get passwall.@global_forwarding[0].buffer_size || echo "")
|
|
|
|
uci -q delete passwall.@global_forwarding[0].sniffing
|
|
uci -q delete passwall.@global_forwarding[0].route_only
|
|
uci -q delete passwall.@global_forwarding[0].buffer_size
|
|
uci -q commit passwall
|
|
}
|
|
|
|
sed -i "s#option tlsflow#option flow#g" /etc/config/passwall
|
|
|
|
global_singbox=$(uci -q get passwall.@global_singbox[0])
|
|
[ -z "${global_singbox}" ] && {
|
|
cfgid=$(uci add passwall global_singbox)
|
|
uci -q set passwall.${cfgid}.sniff_override_destination=0
|
|
uci -q set passwall.${cfgid}.geoip_path="/tmp/singbox/geoip.db"
|
|
uci -q set passwall.${cfgid}.geoip_url="https://github.com/SagerNet/sing-geoip/releases/latest/download/geoip.db"
|
|
uci -q set passwall.${cfgid}.geosite_path="/tmp/singbox/geosite.db"
|
|
uci -q set passwall.${cfgid}.geosite_url="https://github.com/SagerNet/sing-geosite/releases/latest/download/geosite.db"
|
|
uci -q commit passwall
|
|
}
|
|
|
|
chmod +x /usr/share/passwall/*.sh
|
|
|
|
rm -f /tmp/luci-indexcache
|
|
rm -rf /tmp/luci-modulecache/
|
|
killall -HUP rpcd 2>/dev/null
|
|
exit 0
|