140 lines
2.8 KiB
Bash
140 lines
2.8 KiB
Bash
is_old_list=(
|
|
TCP
|
|
TCP_HTTP
|
|
WebSocket
|
|
"WebSocket + TLS"
|
|
HTTP/2
|
|
mKCP
|
|
mKCP_utp
|
|
mKCP_srtp
|
|
mKCP_wechat-video
|
|
mKCP_dtls
|
|
mKCP_wireguard
|
|
QUIC
|
|
QUIC_utp
|
|
QUIC_srtp
|
|
QUIC_wechat-video
|
|
QUIC_dtls
|
|
QUIC_wireguard
|
|
TCP_dynamicPort
|
|
TCP_HTTP_dynamicPort
|
|
WebSocket_dynamicPort
|
|
mKCP_dynamicPort
|
|
mKCP_utp_dynamicPort
|
|
mKCP_srtp_dynamicPort
|
|
mKCP_wechat-video_dynamicPort
|
|
mKCP_dtls_dynamicPort
|
|
mKCP_wireguard_dynamicPort
|
|
QUIC_dynamicPort
|
|
QUIC_utp_dynamicPort
|
|
QUIC_srtp_dynamicPort
|
|
QUIC_wechat-video_dynamicPort
|
|
QUIC_dtls_dynamicPort
|
|
QUIC_wireguard_dynamicPort
|
|
VLESS_WebSocket_TLS
|
|
)
|
|
|
|
# del old file
|
|
del_old_file() {
|
|
# old sh bin
|
|
_v2ray_sh="/usr/local/sbin/v2ray"
|
|
rm -rf $_v2ray_sh $is_old_conf $is_old_dir $is_core_dir/233blog_v2ray_config.json /usr/bin/v2ray
|
|
# del alias
|
|
sed -i "#$_v2ray_sh#d" /root/.bashrc
|
|
exit
|
|
}
|
|
|
|
# read old config
|
|
. $is_old_conf
|
|
is_old=${is_old_list[$v2ray_transport - 1]}
|
|
case $v2ray_transport in
|
|
3 | 20)
|
|
is_old_use=
|
|
;;
|
|
4)
|
|
is_old_use=ws
|
|
;;
|
|
5)
|
|
is_old_use=h2
|
|
;;
|
|
33)
|
|
is_old_use=vws
|
|
;;
|
|
*)
|
|
is_test_old_use=($(sed 's/_dynamicPort//;s/_/ /' <<<$is_old))
|
|
is_old_use=${is_test_old_use[0]#m}
|
|
is_old_header_type=${is_test_old_use[1]}
|
|
[[ ! $is_old_header_type ]] && is_old_header_type=none
|
|
;;
|
|
esac
|
|
|
|
if [[ $is_old_use && ! $is_old_header_type ]]; then
|
|
# not use caddy auto tls
|
|
[[ ! $caddy ]] && is_old_use=
|
|
fi
|
|
|
|
# add old config
|
|
if [[ $is_old_use ]]; then
|
|
is_tmp_list=("删除旧配置" "恢复: $is_old")
|
|
|
|
ask list is_do_upgrade null "\n是否恢复旧配置:\n"
|
|
|
|
[[ $REPLY == '1' ]] && {
|
|
_green "\n删除完成!\n"
|
|
del_old_file
|
|
}
|
|
|
|
_green "\n开始恢复...\n"
|
|
|
|
# upgrade caddy
|
|
if [[ $caddy ]]; then
|
|
get install-caddy
|
|
# bak caddy files
|
|
mv -f $is_caddyfile $is_caddyfile.233.bak
|
|
mv -f $is_caddy_dir/sites $is_caddy_dir/sites.233.bak
|
|
load caddy.sh
|
|
caddy_config new
|
|
fi
|
|
is_change=1
|
|
is_dont_auto_exit=1
|
|
is_dont_show_info=1
|
|
if [[ $shadowsocks ]]; then
|
|
for v in ${ss_method_list[@]}; do
|
|
[[ $(grep -E -i "^${ssciphers}$" <<<$v) ]] && ss_method=$v && break
|
|
done
|
|
if [[ $ss_method ]]; then
|
|
add ss $ssport $sspass $ss_method
|
|
fi
|
|
fi
|
|
if [[ $socks ]]; then
|
|
add socks $socks_port $socks_username $socks_userpass
|
|
fi
|
|
port=$v2ray_port
|
|
uuid=$v2ray_id
|
|
is_no_kcp_seed=1
|
|
header_type=$is_old_header_type
|
|
[[ $caddy ]] && host=$domain
|
|
path=/$path
|
|
[[ ! $path_status ]] && path=
|
|
if [[ $(grep dynamic <<<$is_old) ]]; then
|
|
is_dynamic_port=1
|
|
is_dynamic_port_range="$v2ray_dynamicPort_start-$v2ray_dynamicPort_end"
|
|
add ${is_old_use}d
|
|
else
|
|
add $is_old_use
|
|
fi
|
|
|
|
if [[ $path_status ]]; then
|
|
change $is_config_name web $proxy_site
|
|
fi
|
|
is_dont_auto_exit=
|
|
is_dont_show_info=
|
|
[[ $is_api_fail ]] && manage restart &
|
|
[[ $caddy ]] && manage restart caddy
|
|
info $is_config_name
|
|
else
|
|
ask string y "是否删除旧配置? [y]:"
|
|
_green "\n删除完成!\n"
|
|
fi
|
|
|
|
del_old_file |