From 95920c36302a5bb82514bf8674be5be1204b5f6c Mon Sep 17 00:00:00 2001 From: juewuy Date: Fri, 16 Feb 2024 15:19:39 +0800 Subject: [PATCH] =?UTF-8?q?~=E5=A2=9E=E5=8A=A0=E6=B8=85=E7=90=86providers?= =?UTF-8?q?=E7=9B=AE=E5=BD=95=E5=8A=9F=E8=83=BD=20~=E5=B0=9D=E8=AF=95?= =?UTF-8?q?=E4=BF=AE=E5=A4=8Dsystemd=E5=92=8C=E4=BF=9D=E5=AE=88=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F=E4=BA=A7=E7=94=9F=E5=86=B2=E7=AA=81=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=20~=E4=BC=98=E5=8C=96tun=E6=A8=A1=E5=BC=8F=E5=AF=B9ip?= =?UTF-8?q?tables=E7=9A=84=E6=A3=80=E6=B5=8B=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/getdate.sh | 9 ++++++++- scripts/init.sh | 1 + scripts/start.sh | 6 ++++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/scripts/getdate.sh b/scripts/getdate.sh index 43becad..09ce653 100644 --- a/scripts/getdate.sh +++ b/scripts/getdate.sh @@ -487,7 +487,7 @@ EOF setproviders(){ #自定义providers echo ----------------------------------------------- echo -e "\033[33m你可以在这里快捷管理与生成自定义的providers提供者\033[0m" - echo -e "\033[33m暂时只支持yaml格式的配置导入\033[0m" + echo -e "\033[33m暂时只支持yaml格式的配置导入,并且不支持跳过证书验证功能\033[0m" [ -s $CRASHDIR/configs/providers.cfg ] && { echo ----------------------------------------------- echo -e "\033[36m输入对应数字可管理providers提供者\033[0m" @@ -498,6 +498,7 @@ setproviders(){ #自定义providers echo -e " b \033[32m生成\033[0m基于providers的配置文件" echo -e " c 选择\033[33m规则模版\033[0m" echo -e " d \033[31m清空\033[0mproviders列表" + echo -e " e \033[31m清理\033[0mproviders目录" echo -e " 0 返回上级菜单" read -p "请输入对应数字 > " num case $num in @@ -613,6 +614,12 @@ setproviders(){ #自定义providers [ "$res" = "1" ] && rm -rf $CRASHDIR/configs/providers.cfg setproviders ;; + d) + echo -e "\033[33m将清空 $CRASHDIR/providers 目录下所有内容\033[0m" + read -p "是否继续?(1/0) > " res + [ "$res" = "1" ] && rm -rf $CRASHDIR/providers + setproviders + ;; *) errornum ;; diff --git a/scripts/init.sh b/scripts/init.sh index 92109e9..fae5102 100644 --- a/scripts/init.sh +++ b/scripts/init.sh @@ -176,6 +176,7 @@ else systemctl daemon-reload else #设为保守模式启动 + systemctl disable shellcrash 2>/dev/null setconfig start_old 已开启 fi fi diff --git a/scripts/start.sh b/scripts/start.sh index afcaff5..ef274f1 100644 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -1089,7 +1089,7 @@ start_tun(){ #iptables-tun iptables -I FORWARD -p udp --dport 443 -o utun -m comment --comment "ShellCrash-QUIC-REJECT" $set_cn_ip -j REJECT >/dev/null 2>&1 ip6tables -I FORWARD -p udp --dport 443 -o utun -m comment --comment "ShellCrash-QUIC-REJECT" $set_cn_ip6 -j REJECT >/dev/null 2>&1 fi - modprobe xt_mark >/dev/null 2>&1 && { + if [ -n "$(iptables -j MARK 2>&1 | grep 'mark')" ];then i=1 while [ -z "$(ip route list |grep utun)" -a "$i" -le 29 ];do sleep 1 @@ -1159,7 +1159,9 @@ start_tun(){ #iptables-tun [ "$1" = "all" ] && ip6tables -t mangle -A PREROUTING -p tcp $ports -j shellcrashv6 } fi - } + else + logger "iptables缺少-J MARK功能,放弃启动tun相关防火墙规则!" 31 + fi } start_nft(){ #nftables-allinone #获取局域网host地址