Преглед изворни кода

fix stop socks5 invalid bug

zfl9 пре 8 година
родитељ
комит
d9bbae8fd1
2 измењених фајлова са 3 додато и 4 уклоњено
  1. 1 3
      ss-tproxy
  2. 2 1
      ss-tproxy.conf

+ 1 - 3
ss-tproxy

@@ -957,14 +957,12 @@ function stop {
     pkill -9 '^dnsforwarder$'
 
     eval "$v2ray_stopcmd"
+    eval "$socks5_stopcmd"
     pkill -9 '^ss-redir$'
     pkill -9 '^ss-tunnel$'
     pkill -9 '^ssr-redir$'
     pkill -9 '^ssr-tunnel$'
     pkill -9 '^tun2socks$'
-
-    port=$(echo $socks5_listen | awk -F: '{print $2}')
-    ss -lnptu | grep ":$port\s" | grep -Eo 'pid=[0-9]+' | awk -F= '{print $2}' | sort -n | uniq | xargs kill -9 &>/dev/null
 }
 
 function status {

+ 2 - 1
ss-tproxy.conf

@@ -73,11 +73,12 @@ socks5_listen='127.0.0.1:1080'       # socks5 本地监听地址
 socks5_remote='node.proxy.net'       # socks5 服务器的地址
 # 启动 socks5 代理的命令行,必须在后台运行,不能占用前台,请根据实际情况进行修改
 # 如果使用非 *_tcp 模式,请确保该 socks5 代理的 udp relay 已开启,否则无法解析 DNS
-socks5_runcmd='nohup ss-local -c /etc/ss-local.json </dev/null &>>/var/log/ss-local.log &'
 #socks5_runcmd='service shadowsocks-libev start'                # 通过 service 命令启动
 #socks5_runcmd='systemctl start shadowsocks-libev.service'      # 通过 systemctl 命令启动
 #socks5_runcmd='ssh -CNf -D 0.0.0.0:1080 user@node.proxy.net'   # 仅限使用 tun2socks*tcp 模式
 #socks5_runcmd='systemctl start v2ray.service'                  # 代理至 v2ray 的 socks5 监听端口
+socks5_runcmd='nohup ss-local -c /etc/ss-local.json </dev/null &>>/var/log/ss-local.log &'
+socks5_stopcmd="pkill -9 '^ss-local$'"                          # 停止 socks5 本地代理的命令
 
 ## tun2socks 配置
 # 适用于 tun2socks_* 模式