luci-app-passwall: sync with upstream source

This commit is contained in:
CN_SZTL 2020-01-31 02:43:43 +08:00
parent 02c76f469c
commit c6a50afaeb
No known key found for this signature in database
GPG Key ID: 6850B6345C862176
5 changed files with 36 additions and 55 deletions

View File

@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-passwall
PKG_VERSION:=3.3
PKG_RELEASE:=38-20200128
PKG_RELEASE:=39-20200130
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)

View File

@ -12,7 +12,7 @@ s.addremove = false
---- Delay Start
o = s:option(Value, "start_delay", translate("Delay Start"),
translate("Units:seconds"))
o.default = "0"
o.default = "1"
o.rmempty = true
---- Open and close Daemon
@ -20,6 +20,7 @@ o = s:option(Flag, "start_daemon", translate("Open and close Daemon"))
o.default = 1
o.rmempty = false
--[[
---- Open and close automatically
o = s:option(Flag, "auto_on", translate("Open and close automatically"))
o.default = 0
@ -45,6 +46,7 @@ o.default = nil
o:depends("auto_on", "1")
o:value(nil, translate("Disable"))
for e = 0, 23 do o:value(e, e .. translate("oclock")) end
--]]
-- [[ Forwarding Settings ]]--
s = m:section(TypedSection, "global_forwarding",
@ -77,11 +79,18 @@ o:value("2", "2 " .. translate("Process"))
o:value("3", "3 " .. translate("Process"))
o:value("4", "4 " .. translate("Process"))
-- [[ Proxy Settings ]]--
s = m:section(TypedSection, "global_proxy", translate("Proxy Settings"))
s.anonymous = true
s.addremove = false
---- Socks5 Proxy Port
o = s:option(Value, "socks5_proxy_port", translate("Socks5 Proxy Port"))
o.datatype = "port"
o.default = 1081
o.rmempty = true
---- Proxy IPv6
o = s:option(Flag, "proxy_ipv6", translate("Proxy IPv6"),
translate("The IPv6 traffic can be proxyed when selected"))
o.default = 0
--[[
---- TCP Redir Port
o = s:option(Value, "tcp_redir_port", translate("TCP Redir Port"))
o.datatype = "port"
@ -94,22 +103,12 @@ o.datatype = "port"
o.default = 1051
o.rmempty = true
---- Socks5 Proxy Port
o = s:option(Value, "socks5_proxy_port", translate("Socks5 Proxy Port"))
o.datatype = "port"
o.default = 1061
o.rmempty = true
---- Kcptun Port
o = s:option(Value, "kcptun_port", translate("Kcptun Port"))
o.datatype = "port"
o.default = 11183
o.default = 12948
o.rmempty = true
---- Proxy IPv6
o = s:option(Flag, "proxy_ipv6", translate("Proxy IPv6"),
translate("The IPv6 traffic can be proxyed when selected"))
o.default = 0
--]]
-- [[ Other Settings ]]--
s = m:section(TypedSection, "global_other", translate("Other Settings"),

View File

@ -18,18 +18,13 @@ config global_haproxy
config global_delay
option auto_on '0'
option start_daemon '0'
option start_delay '20'
option start_delay '1'
config global_forwarding
option udp_redir_ports '1:65535'
option tcp_redir_ports '1:65535'
option process '1'
config global_proxy
option tcp_redir_port '1041'
option udp_redir_port '1051'
option socks5_proxy_port '1061'
option kcptun_port '11183'
option tcp_redir_ports '1:65535'
option udp_redir_ports '1:65535'
option socks5_proxy_port '1081'
option proxy_ipv6 '0'
config global_other

View File

@ -175,10 +175,9 @@ SOCKS5_NODE1_TYPE=""
BROOK_SOCKS5_CMD=""
BROOK_TCP_CMD=""
BROOK_UDP_CMD=""
AUTO_SWITCH_ENABLE=$(config_t_get auto_switch enable 0)
TCP_REDIR_PORTS=$(config_t_get global_forwarding tcp_redir_ports '80,443')
UDP_REDIR_PORTS=$(config_t_get global_forwarding udp_redir_ports '1:65535')
KCPTUN_REDIR_PORT=$(config_t_get global_proxy kcptun_port 11183)
KCPTUN_REDIR_PORT=$(config_t_get global_forwarding kcptun_port 12948)
PROXY_MODE=$(config_t_get global proxy_mode gfwlist)
load_config() {
@ -212,16 +211,16 @@ load_config() {
local dns2=$(cat $RESOLVFILE 2>/dev/null | grep -E -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" | grep -v 0.0.0.0 | grep -v 127.0.0.1 | sed -n '2P')
[ -n "$dns1" -a -n "$dns2" ] && UP_CHINA_DNS="$dns1,$dns2"
}
TCP_REDIR_PORT1=$(config_t_get global_proxy tcp_redir_port 1041)
TCP_REDIR_PORT1=$(config_t_get global_forwarding tcp_redir_port 1041)
TCP_REDIR_PORT2=$(expr $TCP_REDIR_PORT1 + 1)
TCP_REDIR_PORT3=$(expr $TCP_REDIR_PORT2 + 1)
UDP_REDIR_PORT1=$(config_t_get global_proxy udp_redir_port 1051)
UDP_REDIR_PORT1=$(config_t_get global_forwarding udp_redir_port 1051)
UDP_REDIR_PORT2=$(expr $UDP_REDIR_PORT1 + 1)
UDP_REDIR_PORT3=$(expr $UDP_REDIR_PORT2 + 1)
SOCKS5_PROXY_PORT1=$(config_t_get global_proxy socks5_proxy_port 1061)
SOCKS5_PROXY_PORT1=$(config_t_get global_forwarding socks5_proxy_port 1081)
SOCKS5_PROXY_PORT2=$(expr $SOCKS5_PROXY_PORT1 + 1)
SOCKS5_PROXY_PORT3=$(expr $SOCKS5_PROXY_PORT2 + 1)
PROXY_IPV6=$(config_t_get global_proxy proxy_ipv6 0)
PROXY_IPV6=$(config_t_get global_forwarding proxy_ipv6 0)
mkdir -p /var/etc $CONFIG_PATH $RUN_PID_PATH $RUN_ID_PATH $RUN_IP_PATH $RUN_PORT_PATH
config_load $CONFIG
return 0
@ -245,8 +244,8 @@ gen_ss_ssr_config_file() {
}
cat <<-EOF >$configfile
{
"server": "$server_host",
"_comment": "$server_ip",
"server": "$server_host",
"server_port": $port,
"local_address": "0.0.0.0",
"local_port": $local_port,
@ -662,7 +661,7 @@ start_crontab() {
echolog "已启动守护进程。"
fi
auto_on=$(config_t_get global_delay auto_on)
auto_on=$(config_t_get global_delay auto_on 0)
if [ "$auto_on" = "1" ]; then
time_off=$(config_t_get global_delay time_off)
time_on=$(config_t_get global_delay time_on)
@ -681,6 +680,7 @@ start_crontab() {
}
fi
AUTO_SWITCH_ENABLE=$(config_t_get auto_switch enable 0)
[ "$AUTO_SWITCH_ENABLE" = "1" ] && {
testing_time=$(config_t_get auto_switch testing_time)
[ -n "$testing_time" ] && {
@ -694,7 +694,7 @@ start_crontab() {
stop_crontab() {
sed -i "/$CONFIG/d" /etc/crontabs/root >/dev/null 2>&1 &
ps | grep "$APP_PATH/test.sh" | grep -v "grep" | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 &
rm -f /var/lock/passwall_test.lock >/dev/null 2>&1 &
rm -f /var/lock/${CONFIG}_test.lock >/dev/null 2>&1 &
/etc/init.d/cron restart
echolog "清除定时执行命令。"
}
@ -1108,12 +1108,10 @@ force_stop() {
}
boot() {
local delay=$(config_t_get global_delay start_delay 0)
local delay=$(config_t_get global_delay start_delay 1)
if [ "$delay" -gt 0 ]; then
[ "$TCP_NODE1" != "nil" -o "$UDP_NODE1" != "nil" ] && {
echolog "执行启动延时 $delay 秒后再启动!"
sleep $delay && start >/dev/null 2>&1 &
}
echolog "执行启动延时 $delay 秒后再启动!"
sleep $delay && start >/dev/null 2>&1 &
else
start
fi

View File

@ -187,20 +187,9 @@ filter_vpsip() {
dns_hijack() {
dnshijack=$(config_t_get global dns_53)
if [ "$dnshijack" = "1" -o "$1" = "force" ]; then
chromecast_nu=$($iptables_nat -L PSW -v -n --line-numbers | grep "dpt:53" | awk '{print $1}')
is_right_lanip=$($iptables_nat -L PSW -v -n --line-numbers | grep "dpt:53" | grep "$lanip")
if [ -z "$chromecast_nu" ]; then
echolog "添加DNS劫持规则..."
$iptables_nat -I PSW -i br-lan -p udp --dport 53 -j DNAT --to $lanip 2>/dev/null
else
if [ -z "$is_right_lanip" ]; then
echolog "添加DNS劫持规则..."
$iptables_nat -D PSW $chromecast_nu >/dev/null 2>&1 &
$iptables_nat -I PSW -i br-lan -p udp --dport 53 -j DNAT --to $lanip 2>/dev/null
else
echolog "DNS劫持规则已经添加跳过~" >>$LOG_FILE
fi
fi
echolog "添加DNS劫持规则..."
$iptables_nat -I PSW -p udp --dport 53 -j REDIRECT --to-ports 53
$iptables_nat -I PSW -p tcp --dport 53 -j REDIRECT --to-ports 53
fi
}