mirror of
https://github.com/samuelhbne/proxy-xray.git
synced 2025-12-17 12:44:38 +03:00
Simplify alpn implementation
This commit is contained in:
@@ -37,12 +37,15 @@ fi
|
|||||||
|
|
||||||
if ! [ "${port}" -eq "${port}" ] 2>/dev/null; then >&2 echo "Port number must be numeric"; exit 1; fi
|
if ! [ "${port}" -eq "${port}" ] 2>/dev/null; then >&2 echo "Port number must be numeric"; exit 1; fi
|
||||||
|
|
||||||
|
# User settings
|
||||||
Jusers=`jq -nc --arg uuid "${id}" '. += {"id":$uuid, "encryption":"none", "level":0}'`
|
Jusers=`jq -nc --arg uuid "${id}" '. += {"id":$uuid, "encryption":"none", "level":0}'`
|
||||||
|
|
||||||
|
# Vnext settings
|
||||||
Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Jusers}" \
|
Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Jusers}" \
|
||||||
'. += {"address":$host, "port":($port | tonumber), "users":[$juser]}' `
|
'. += {"address":$host, "port":($port | tonumber), "users":[$juser]}' `
|
||||||
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" \
|
# Stream Settings
|
||||||
|
JstreamSettings=`jq -nc --arg path "${path}" \
|
||||||
'. += {"network":"grpc", "security":"none", "grpcSettings":{"serviceName":$path}}' `
|
'. += {"network":"grpc", "security":"none", "grpcSettings":{"serviceName":$path}}' `
|
||||||
|
|
||||||
Jproxy=`jq -nc --arg host "${host}" --argjson jvnext "${Jvnext}" --argjson jstreamSettings "${JstreamSettings}" \
|
Jproxy=`jq -nc --arg host "${host}" --argjson jvnext "${Jvnext}" --argjson jstreamSettings "${JstreamSettings}" \
|
||||||
|
|||||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||||
'. += {"network":"grpc","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"grpcSettings":{"serviceName":$path}}' `
|
'. += {"network":"grpc","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"grpcSettings":{"serviceName":$path}}' `
|
||||||
|
|
||||||
|
|||||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||||
'. += {"network":"splithttp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"splithttpSettings":{"path":$path}}' `
|
'. += {"network":"splithttp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"splithttpSettings":{"path":$path}}' `
|
||||||
|
|
||||||
|
|||||||
@@ -66,11 +66,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" \
|
||||||
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
||||||
|
|
||||||
|
|||||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||||
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
||||||
|
|
||||||
|
|||||||
@@ -63,11 +63,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --argjson jalpn "${Jalpn}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --argjson jalpn "${Jalpn}" \
|
||||||
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
||||||
|
|
||||||
|
|||||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||||
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
||||||
|
|
||||||
|
|||||||
@@ -61,11 +61,7 @@ Jservers=`jq -nc --arg host "${host}" --arg port "${port}" --arg passwd "${passw
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"password":$passwd}' `
|
'. += {"address":$host,"port":($port | tonumber),"password":$passwd}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --argjson jalpn "${Jalpn}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --argjson jalpn "${Jalpn}" \
|
||||||
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
||||||
|
|
||||||
|
|||||||
@@ -62,11 +62,7 @@ Jservers=`jq -nc --arg host "${host}" --arg port "${port}" --arg passwd "${passw
|
|||||||
'. += {"address":$host,"port":($port | tonumber),"password":$passwd}' `
|
'. += {"address":$host,"port":($port | tonumber),"password":$passwd}' `
|
||||||
|
|
||||||
# Stream Settings
|
# Stream Settings
|
||||||
Jalpn='[]'
|
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||||
for alpn in "${ALPN[@]}"
|
|
||||||
do
|
|
||||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
|
||||||
done
|
|
||||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||||
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user