mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-09-08 13:46:33 +00:00
Compare commits
10
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0d2c252e5d | ||
|
|
9cf2d8dce1 | ||
|
|
e621d37d16 | ||
|
|
d8941fb202 | ||
|
|
db8ba09663 | ||
|
|
b27028d9bf | ||
|
|
6cf5f02231 | ||
|
|
ff7d454432 | ||
|
|
cc56656695 | ||
|
|
6ed020a864 |
Binary file not shown.
+1
-1
@@ -1,4 +1,4 @@
|
||||
meta_v=v1.19.17
|
||||
singboxr_v=1.13.0-alpha.27
|
||||
versionsh=1.9.5beta1
|
||||
versionsh=1.9.5beta2
|
||||
GeoIP_v=20251205
|
||||
|
||||
@@ -17,7 +17,7 @@ routing_mark=$((fwmark + 2))
|
||||
|
||||
[ -z "$dns_nameserver" ] && {
|
||||
dns_nameserver='223.5.5.5, 1.2.4.8'
|
||||
netstat -ntlup 2>/dev/null | grep -q '127.0.0.1:53' && dns_nameserver='127.0.0.1'
|
||||
netstat -ntlup 2>/dev/null | grep -q '127.0.0.1:53' || ss -ntlup 2>/dev/null | grep -q '127.0.0.1:53' && dns_nameserver='127.0.0.1'
|
||||
}
|
||||
[ -z "$dns_fallback" ] && dns_fallback="1.1.1.1, 8.8.8.8"
|
||||
[ -z "$dns_resolver" ] && dns_resolver="223.5.5.5, 2400:3200::1"
|
||||
|
||||
+3
-3
@@ -118,12 +118,12 @@ ckstatus() {
|
||||
|
||||
PID=$(pidof CrashCore | awk '{print $NF}')
|
||||
if [ -n "$PID" ]; then
|
||||
run="\033[32m$MENU_RUN_ON($redir_mod$MENU_MOD)\033[0m"
|
||||
run="\033[32m$MENU_RUN_ON ($redir_mod$MENU_MOD) \033[0m"
|
||||
running_status
|
||||
elif [ "$firewall_area" = 5 ] && [ -n "$(ip route list table 100)" ]; then
|
||||
run="\033[32m$MENU_RUN_SET($redir_mod$MENU_MOD)\033[0m"
|
||||
run="\033[32m$MENU_RUN_SET ($redir_mod$MENU_MOD) \033[0m"
|
||||
else
|
||||
run="\033[31m$MENU_RUN_OFF($redir_mod$MENU_MOD)\033[0m"
|
||||
run="\033[31m$MENU_RUN_OFF ($redir_mod$MENU_MOD) \033[0m"
|
||||
# 检测系统端口占用
|
||||
checkport
|
||||
fi
|
||||
|
||||
@@ -569,8 +569,6 @@ set_firewall_area() {
|
||||
[1-4])
|
||||
if [ "$firewall_area" -ge 4 ]; then
|
||||
redir_mod=''
|
||||
else
|
||||
redir_mod=Redir
|
||||
fi
|
||||
firewall_area="$num"
|
||||
setconfig firewall_area "$firewall_area"
|
||||
|
||||
@@ -592,10 +592,17 @@ testcommand() {
|
||||
2)
|
||||
line_break
|
||||
echo "==========================================================="
|
||||
netstat -ntulp | grep 53
|
||||
if ckcmd netstat;then
|
||||
netstat -ntulp | grep 53
|
||||
elif ckcmd ss;then
|
||||
ss -ntulp | grep 53
|
||||
else
|
||||
echo -e "Neither net-tools nor iproute2 is installed. Please install one of these packages and try again."
|
||||
fi
|
||||
echo
|
||||
echo -e "$TOOLS_NETSTAT_HINT"
|
||||
echo "==========================================================="
|
||||
sleep 2
|
||||
;;
|
||||
3)
|
||||
line_break
|
||||
|
||||
@@ -833,7 +833,7 @@ setgeo() {
|
||||
while true; do
|
||||
comp_box "\033[33m${UPG_GEO_CLEAN_HINT1_PREFIX}${CRASHDIR}${UPG_GEO_CLEAN_HINT1_SUFFIX}\033[0m" \
|
||||
"$UPG_GEO_CLEAN_HINT2"
|
||||
btm_box "$UPG_GEO_CLEAN_CONFIRM" \
|
||||
btm_box "1) $UPG_GEO_CLEAN_CONFIRM" \
|
||||
"0) $COMMON_BACK"
|
||||
read -r -p "$COMMON_INPUT> " res
|
||||
case "$res" in
|
||||
@@ -841,8 +841,8 @@ setgeo() {
|
||||
break
|
||||
;;
|
||||
1)
|
||||
for file in cn_ip.txt cn_ipv6.txt Country.mmdb GeoSite.dat geoip.db geosite.db; do
|
||||
rm -rf $CRASHDIR/$file
|
||||
for file in cn_ip.txt cn_ipv6.txt *.mmdb *.metadb *.dat geoip.db geosite.db; do
|
||||
rm -rf "$CRASHDIR"/$file
|
||||
done
|
||||
for var in Country_v cn_mini_v china_ip_list_v china_ipv6_list_v geosite_v geoip_cn_v geosite_cn_v mrs_geosite_cn_v srs_geoip_cn_v srs_geosite_cn_v mrs_v srs_v; do
|
||||
setconfig $var
|
||||
|
||||
@@ -1,13 +1,18 @@
|
||||
#!/bin/sh
|
||||
# Copyright (C) Juewuy
|
||||
|
||||
. "$CRASHDIR"/libs/check_cmd.sh
|
||||
|
||||
load_lang check_port
|
||||
|
||||
_get_netstat_cmd() {
|
||||
local cmd=netstat
|
||||
ckcmd ss && cmd=ss
|
||||
|
||||
case "$1" in
|
||||
tcp) echo "netstat -ntl" ;;
|
||||
udp) echo "netstat -nul" ;;
|
||||
*) echo "netstat -ntul" ;;
|
||||
tcp) echo "$cmd -ntl" ;;
|
||||
udp) echo "$cmd -nul" ;;
|
||||
*) echo "$cmd -ntul" ;;
|
||||
esac
|
||||
}
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ set_dns_mod() {
|
||||
;;
|
||||
*)
|
||||
if [ "$num" -ge 1 ] && [ "$num" -lt 65535 ]; then
|
||||
if ckcmd netstat && netstat -ntul | grep -q ":$num "; then
|
||||
if netstat -ntul 2>/dev/null | grep -q ":$num " || ss -ntul 2>/dev/null | grep -q ":$num "; then
|
||||
dns_redir_port="$num"
|
||||
setconfig dns_redir_port "$dns_redir_port"
|
||||
common_success
|
||||
|
||||
@@ -135,7 +135,7 @@ hotupdate() { #热更新订阅
|
||||
. "$CRASHDIR"/starts/core_config.sh && get_core_config &&
|
||||
. "$CRASHDIR"/starts/check_core.sh && check_core &&
|
||||
. "$CRASHDIR"/starts/"$target"_modify.sh && modify_"$format" && rm -rf "$TMPDIR"/CrashCore &&
|
||||
. "$CRASHDIR"/libs/web_restore.sh && put_save "http://127.0.0.1:$db_port/configs" "{\"path\":\"$CRASHDIR/config.$format\"}"
|
||||
. "$CRASHDIR"/libs/web_restore.sh && put_save "http://127.0.0.1:$db_port/configs" "{\"path\":\"$TMPDIR/config.$format\"}"
|
||||
exit $?
|
||||
}
|
||||
|
||||
|
||||
@@ -77,7 +77,7 @@ forwhat() {
|
||||
content_line "\033[33m$UG_IP_FORWARD_WARN\033[0m"
|
||||
read -r -p "$COMMON_INPUT_R" res
|
||||
[ "$res" = 1 ] && {
|
||||
content_line 'net.ipv4.ip_forward = 1' >>/etc/sysctl.conf
|
||||
echo 'net.ipv4.ip_forward = 1' >>/etc/sysctl.conf
|
||||
sysctl -w net.ipv4.ip_forward=1
|
||||
}
|
||||
fi
|
||||
|
||||
@@ -38,7 +38,11 @@
|
||||
}
|
||||
#判断代理用途
|
||||
[ "$firewall_area" = 2 -o "$firewall_area" = 3 ] && local_proxy=true
|
||||
[ "$firewall_area" = 1 -o "$firewall_area" = 3 -o "$firewall_area" = 5 ] && lan_proxy=true
|
||||
[ "$firewall_area" = 1 -o "$firewall_area" = 3 -o "$firewall_area" = 5 ] && {
|
||||
lan_proxy=true
|
||||
#检查IP转发
|
||||
[ "$(cat /proc/sys/net/ipv4/ip_forward)" = "0" ] && echo 'net.ipv4.ip_forward = 1' >>/etc/sysctl.conf && sysctl -w net.ipv4.ip_forward=1
|
||||
}
|
||||
#防火墙配置
|
||||
[ "$firewall_mod" = 'iptables' ] && . "$CRASHDIR"/starts/fw_iptables.sh && start_iptables
|
||||
[ "$firewall_mod" = 'nftables' ] && . "$CRASHDIR"/starts/fw_nftables.sh && start_nftables
|
||||
|
||||
@@ -169,7 +169,7 @@ gen_dns() {
|
||||
#防泄露设置
|
||||
[ "$dns_protect" = "OFF" ] && sed -i 's/"server": "dns_proxy"/"server": "dns_direct"/g' "$TMPDIR"/jsons/route.json
|
||||
#生成add_rule_set.json
|
||||
[ "$dns_mod" = "mix" ] || [ "$dns_mod" = "route" ] && ! grep -Eq '"tag" *:[[:space:]]*"cn"' "$CRASHDIR"/jsons/*.json && {
|
||||
[ "$dns_mod" = "mix" ] || [ "$dns_mod" = "route" ] && ! grep -Eq '"tag" *:[[:space:]]*"cn"' "$CRASHDIR"/jsons/*.json && ! grep -Eq '"tag"[[:space:]]*:[[:space:]]*\[[^]]*"cn"' "$CRASHDIR"/jsons/*.json && {
|
||||
[ "$crashcore" = "singboxr" ] && srs_path='"path": "./ruleset/cn.srs",'
|
||||
cat >"$TMPDIR"/jsons/add_rule_set.json <<EOF
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user