|
#!/bin/sh |
|
|
|
|
|
|
|
ARCH="64" |
|
DOWNLOAD_PATH="/tmp/v2ray" |
|
|
|
mkdir -p ${DOWNLOAD_PATH} |
|
cd ${DOWNLOAD_PATH} || exit |
|
|
|
TAG=$(wget --no-check-certificate -qO- https://api.github.com/repos/v2fly/v2ray-core/releases/latest | grep 'tag_name' | cut -d\" -f4) |
|
if [ -z "${TAG}" ]; then |
|
echo "Error: Get v2ray latest version failed" && exit 1 |
|
fi |
|
echo "The v2ray latest version: ${TAG}" |
|
|
|
|
|
V2RAY_FILE="v2ray-linux-${ARCH}.zip" |
|
DGST_FILE="v2ray-linux-${ARCH}.zip.dgst" |
|
echo "Downloading binary file: ${V2RAY_FILE}" |
|
echo "Downloading binary file: ${DGST_FILE}" |
|
|
|
|
|
wget -O ${DOWNLOAD_PATH}/v2ray.zip https://github.com/v2fly/v2ray-core/releases/download/${TAG}/${V2RAY_FILE} >/dev/null 2>&1 |
|
wget -O ${DOWNLOAD_PATH}/v2ray.zip.dgst https://github.com/v2fly/v2ray-core/releases/download/${TAG}/${DGST_FILE} >/dev/null 2>&1 |
|
|
|
if [ $? -ne 0 ]; then |
|
echo "Error: Failed to download binary file: ${V2RAY_FILE} ${DGST_FILE}" && exit 1 |
|
fi |
|
echo "Download binary file: ${V2RAY_FILE} ${DGST_FILE} completed" |
|
|
|
|
|
LOCAL=$(openssl dgst -sha512 v2ray.zip | sed 's/([^)]*)//g') |
|
STR=$(cat < v2ray.zip.dgst | grep 'SHA512' | head -n1) |
|
|
|
if [ "${LOCAL}" = "${STR}" ]; then |
|
echo " Check passed" && rm -fv v2ray.zip.dgst |
|
else |
|
echo " Check have not passed yet " && exit 1 |
|
fi |
|
|
|
|
|
echo "Prepare to use" |
|
unzip v2ray.zip && chmod +x v2ray v2ctl |
|
mv v2ray v2ctl /usr/bin/ |
|
mv geosite.dat geoip.dat /usr/local/share/v2ray/ |
|
|
|
|
|
|
|
cat <<EOF >/etc/v2ray/config.json |
|
{ |
|
"log": { |
|
"loglevel": "warning" |
|
}, |
|
"inbounds": [ |
|
{ |
|
"listen": "0.0.0.0", |
|
"port": 8080, |
|
"protocol": "vmess", |
|
"settings": { |
|
"clients": [ |
|
{ |
|
"id": "11111111-1111-1111-1111-111111111111", |
|
"alterId": 0 |
|
} |
|
], |
|
"disableInsecureEncryption": true |
|
}, |
|
"streamSettings": { |
|
"network": "ws" |
|
} |
|
} |
|
], |
|
"outbounds": [ |
|
{ |
|
"protocol": "freedom" |
|
} |
|
] |
|
} |
|
EOF |
|
|
|
|
|
cd ~ || return |
|
rm -rf ${DOWNLOAD_PATH:?}/* |
|
echo "Install done" |
|
|
|
echo "--------------------------------" |
|
echo "Fly App Name: ${FLY_APP_NAME}" |
|
echo "Fly App Region: ${FLY_REGION}" |
|
echo "V2Ray UUID: ${UUID}" |
|
echo "--------------------------------" |
|
|
|
|
|
/usr/bin/v2ray -config /etc/v2ray/config.json |
|
|