From 738c7064a918a6a4392ad3d1b11c53b31d951914 Mon Sep 17 00:00:00 2001 From: Alireza Ahmadi Date: Thu, 23 Mar 2023 10:01:28 +0100 Subject: [PATCH 1/5] Default TLS version change to 1.0-1.2 --- web/assets/js/model/xray.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/assets/js/model/xray.js b/web/assets/js/model/xray.js index 2317ba98..6cc7b372 100644 --- a/web/assets/js/model/xray.js +++ b/web/assets/js/model/xray.js @@ -474,8 +474,8 @@ class GrpcStreamSettings extends XrayCommonClass { class TlsStreamSettings extends XrayCommonClass { constructor(serverName='', - minVersion = TLS_VERSION_OPTION.TLS12, - maxVersion = TLS_VERSION_OPTION.TLS13, + minVersion = TLS_VERSION_OPTION.TLS10, + maxVersion = TLS_VERSION_OPTION.TLS12, cipherSuites = '', certificates=[new TlsStreamSettings.Cert()], alpn=[''], From e1f8e8efd22331fbb9e62c3e749fd9cded72e5d3 Mon Sep 17 00:00:00 2001 From: Alireza Ahmadi Date: Thu, 23 Mar 2023 10:02:18 +0100 Subject: [PATCH 2/5] Add allowInsecure option --- web/assets/js/model/xray.js | 6 +++--- web/html/xui/form/tls_settings.html | 7 ++----- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/web/assets/js/model/xray.js b/web/assets/js/model/xray.js index 6cc7b372..da300a63 100644 --- a/web/assets/js/model/xray.js +++ b/web/assets/js/model/xray.js @@ -575,9 +575,9 @@ TlsStreamSettings.Cert = class extends XrayCommonClass { }; TlsStreamSettings.Settings = class extends XrayCommonClass { - constructor(insecure = false, fingerprint = '', serverName = '') { + constructor(allowInsecure = false, fingerprint = '', serverName = '') { super(); - this.inSecure = insecure; + this.allowInsecure = allowInsecure; this.fingerprint = fingerprint; this.serverName = serverName; } @@ -590,7 +590,7 @@ TlsStreamSettings.Settings = class extends XrayCommonClass { } toJson() { return { - allowInsecure: this.inSecure, + allowInsecure: this.allowInsecure, fingerprint: this.fingerprint, serverName: this.serverName, }; diff --git a/web/html/xui/form/tls_settings.html b/web/html/xui/form/tls_settings.html index 1ff7a73c..83c4c536 100644 --- a/web/html/xui/form/tls_settings.html +++ b/web/html/xui/form/tls_settings.html @@ -40,11 +40,8 @@ - - - auto - [[ key ]] - + + From 1b2e165a653eca5872b81fc055ce883b860f907b Mon Sep 17 00:00:00 2001 From: Alireza Ahmadi Date: Thu, 23 Mar 2023 10:03:09 +0100 Subject: [PATCH 3/5] Fix TLS and ALPN --- web/assets/css/custom.css | 13 ++++++++++--- web/assets/js/model/xray.js | 25 ++++++++++++++++++++----- web/html/xui/form/tls_settings.html | 5 +++++ 3 files changed, 35 insertions(+), 8 deletions(-) diff --git a/web/assets/css/custom.css b/web/assets/css/custom.css index ec082646..14e87353 100644 --- a/web/assets/css/custom.css +++ b/web/assets/css/custom.css @@ -208,7 +208,8 @@ .ant-card-dark .ant-calendar-year-select, .ant-card-dark .ant-calendar-date, .ant-card-dark .ant-collapse>.ant-collapse-item>.ant-collapse-header, -.ant-card-dark .ant-empty-normal { +.ant-card-dark .ant-empty-normal, +.ant-card-dark .ant-checkbox+span { color: hsla(0,0%,100%,.65); } @@ -308,7 +309,8 @@ border-color: #593815; } -.ant-card-dark .ant-table-row-expand-icon { +.ant-card-dark .ant-table-row-expand-icon, +.ant-card-dark .ant-checkbox-inner { background: none; } @@ -316,12 +318,17 @@ background-color: #0c61b0; } -.ant-card-dark .ant-btn { +.ant-card-dark .ant-btn, +.ant-card-dark .ant-radio-button-wrapper { color: hsla(0,0%,100%,.65); background: none; border: 1px solid hsla(0,0%,100%,.65); } +.ant-card-dark .ant-radio-button-wrapper:hover { + color: #177ddc; +} + .ant-card-dark .ant-btn-primary { color: hsla(0,0%,100%,.65); background-color: #073763; diff --git a/web/assets/js/model/xray.js b/web/assets/js/model/xray.js index da300a63..f91b684a 100644 --- a/web/assets/js/model/xray.js +++ b/web/assets/js/model/xray.js @@ -95,7 +95,6 @@ const UTLS_FINGERPRINT = { const ALPN_OPTION = { H2: "h2", HTTP1: "http/1.1", - BOTH: "h2,http/1.1", }; Object.freeze(Protocols); @@ -1092,7 +1091,6 @@ class Inbound extends XrayCommonClass { const type = this.stream.network; const params = new Map(); params.set("type", this.stream.network); - params.set("security", this.stream.security); switch (type) { case "tcp": const tcp = this.stream.tcp; @@ -1139,8 +1137,12 @@ class Inbound extends XrayCommonClass { } if (this.tls) { + params.set("security", "tls"); params.set("fp" , this.stream.tls.settings[0]['fingerprint']); - params.set("alpn", this.stream.tls.alpn[0]); + params.set("alpn", this.stream.tls.alpn); + if(this.stream.tls.settings[0].allowInsecure){ + params.set("allowInsecure", "1"); + } if (!ObjectUtil.isEmpty(this.stream.tls.server)) { address = this.stream.tls.server; } @@ -1153,6 +1155,11 @@ class Inbound extends XrayCommonClass { } if (this.xtls) { + params.set("security", "tls"); + params.set("alpn", this.stream.tls.alpn); + if(this.stream.tls.settings[0].allowInsecure){ + params.set("allowInsecure", "1"); + } if (!ObjectUtil.isEmpty(this.stream.tls.server)) { address = this.stream.tls.server; } @@ -1188,7 +1195,6 @@ class Inbound extends XrayCommonClass { const type = this.stream.network; const params = new Map(); params.set("type", this.stream.network); - params.set("security", this.stream.security); switch (type) { case "tcp": const tcp = this.stream.tcp; @@ -1235,8 +1241,12 @@ class Inbound extends XrayCommonClass { } if (this.tls) { + params.set("security", "tls"); params.set("fp" , this.stream.tls.settings[0]['fingerprint']); - params.set("alpn", this.stream.tls.alpn[0]); + params.set("alpn", this.stream.tls.alpn); + if(this.stream.tls.settings[0].allowInsecure){ + params.set("allowInsecure", "1"); + } if (!ObjectUtil.isEmpty(this.stream.tls.server)) { address = this.stream.tls.server; } @@ -1246,6 +1256,11 @@ class Inbound extends XrayCommonClass { } if (this.xtls) { + params.set("security", "tls"); + params.set("alpn", this.stream.tls.alpn); + if(this.stream.tls.settings[0].allowInsecure){ + params.set("allowInsecure", "1"); + } if (!ObjectUtil.isEmpty(this.stream.tls.server)) { address = this.stream.tls.server; } diff --git a/web/html/xui/form/tls_settings.html b/web/html/xui/form/tls_settings.html index 83c4c536..16e94584 100644 --- a/web/html/xui/form/tls_settings.html +++ b/web/html/xui/form/tls_settings.html @@ -40,6 +40,11 @@ + + + [[ key ]] + + From 2d15073a90ed64a23bc6563424d25444d46635f1 Mon Sep 17 00:00:00 2001 From: Alireza Ahmadi Date: Thu, 23 Mar 2023 11:16:48 +0100 Subject: [PATCH 4/5] Fix vmess link --- web/assets/js/model/xray.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/web/assets/js/model/xray.js b/web/assets/js/model/xray.js index f91b684a..3bf098d2 100644 --- a/web/assets/js/model/xray.js +++ b/web/assets/js/model/xray.js @@ -1080,6 +1080,10 @@ class Inbound extends XrayCommonClass { host: host, path: path, tls: this.stream.security, + sni: this.stream.tls.settings[0]['serverName'], + fp: this.stream.tls.settings[0]['fingerprint'], + alpn: this.stream.tls.alpn.join(','), + allowInsecure: this.stream.tls.settings[0].allowInsecure, }; return 'vmess://' + base64(JSON.stringify(obj, null, 2)); } From dac234357a500cc1a32796bcfd8954ba2e9a589d Mon Sep 17 00:00:00 2001 From: Alireza Ahmadi Date: Thu, 23 Mar 2023 12:53:36 +0100 Subject: [PATCH 5/5] Fix input-group dark theme --- web/assets/css/custom.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/web/assets/css/custom.css b/web/assets/css/custom.css index 14e87353..b9cff12e 100644 --- a/web/assets/css/custom.css +++ b/web/assets/css/custom.css @@ -188,7 +188,8 @@ .ant-card-dark .ant-collapse-content, .ant-card-dark .ant-calendar, -.ant-card-dark .ant-table-placeholder { +.ant-card-dark .ant-table-placeholder, +.ant-card-dark .ant-input-group-addon { color: hsla(0,0%,100%,.65); background-color: #262f3d; }