Browse Source

SSL Security Alert

Co-Authored-By: Alireza Ahmadi <[email protected]>
MHSanaei 1 year ago
parent
commit
f3eb4f055d

+ 13 - 0
web/html/xui/inbounds.html

@@ -55,6 +55,15 @@
     <a-layout id="content-layout">
         <a-layout-content>
             <a-spin :spinning="spinning" :delay="500" tip='{{ i18n "loading"}}'>
+                <transition name="list" appear>
+                    <a-alert type="error" v-if="showAlert" style="margin-bottom: 10px"
+                    message='{{ i18n "secAlertTitle" }}'
+                    color="red"
+                    description='{{ i18n "secAlertSsl" }}'
+                    show-icon closable
+                    >
+                    </a-alert>
+                </transition>
                 <transition name="list" appear>
                     <a-tag v-if="false" color="red" style="margin-bottom: 10px">
                         Please go to the panel settings as soon as possible to modify the username and password, otherwise there may be a risk of leaking account information
@@ -572,6 +581,7 @@
             remarkModel: '-ieo',
             datepicker: 'gregorian',
             tgBotEnable: false,
+            showAlert: false,
             pageSize: 0,
             isMobile: window.innerWidth <= 768,
         },
@@ -1319,6 +1329,9 @@
             }, 500)
         },
         mounted() {
+            if (window.location.protocol !== "https:") {
+                this.showAlert = true;
+            }
             window.addEventListener('resize', this.onResize);
             this.onResize();
             this.loading();

+ 15 - 5
web/html/xui/index.html

@@ -34,6 +34,15 @@
     <a-layout id="content-layout">
         <a-layout-content>
             <a-spin :spinning="spinning" :delay="200" :tip="loadingTip"/>
+            <transition name="list" appear>
+                <a-alert type="error" v-if="showAlert" style="margin-bottom: 10px"
+                message='{{ i18n "secAlertTitle" }}'
+                color="red"
+                description='{{ i18n "secAlertSsl" }}'
+                show-icon closable
+                >
+                </a-alert>
+            </transition>
             <transition name="list" appear>
                 <a-row>
                     <a-card hoverable>
@@ -532,6 +541,7 @@
             backupModal,
             spinning: false,
             loadingTip: '{{ i18n "loading"}}',
+            showAlert: false,
         },
         methods: {
             loading(spinning, tip = '{{ i18n "loading"}}') {
@@ -655,14 +665,14 @@
             },
         },
         async mounted() {
-            let retries = 0;
-            while (retries < 5) {
+            if (window.location.protocol !== "https:") {
+                this.showAlert = true;
+            }
+            while (true) {
                 try {
                     await this.getStatus();
-                    retries = 0;
                 } catch (e) {
-                    console.error("Error occurred while fetching status:", e);
-                    retries++;
+                    console.error(e);
                 }
                 await PromiseUtil.sleep(2000);
             }

+ 14 - 2
web/html/xui/settings.html

@@ -75,6 +75,15 @@
     <a-layout id="content-layout">
         <a-layout-content>
             <a-spin :spinning="spinning" :delay="500" tip='{{ i18n "loading"}}'>
+                <transition name="list" appear>
+                    <a-alert type="error" v-if="showAlert" style="margin-bottom: 10px"
+                    message='{{ i18n "secAlertTitle" }}'
+                    color="red"
+                    description='{{ i18n "secAlertSsl" }}'
+                    show-icon closable
+                    >
+                    </a-alert>
+                </transition>
                 <a-space direction="vertical">
                     <a-card hoverable style="margin-bottom: .5rem; overflow-x: hidden;">
                         <a-row style="display: flex; flex-wrap: wrap; align-items: center;">
@@ -444,12 +453,15 @@
             },
         },
         async mounted() {
+            if (window.location.protocol !== "https:") {
+                this.showAlert = true;
+            }
             await this.getAllSetting();
             while (true) {
-                await PromiseUtil.sleep(600);
+                await PromiseUtil.sleep(1000);
                 this.saveBtnDisable = this.oldAllSetting.equals(this.allSetting);
             }
-        },
+        }
     });
 </script>
 </body>

+ 13 - 0
web/html/xui/xray.html

@@ -63,6 +63,15 @@
     <a-layout id="content-layout">
         <a-layout-content>
             <a-spin :spinning="spinning" :delay="500" tip='{{ i18n "loading"}}'>
+                <transition name="list" appear>
+                    <a-alert type="error" v-if="showAlert" style="margin-bottom: 10px"
+                    message='{{ i18n "secAlertTitle" }}'
+                    color="red"
+                    description='{{ i18n "secAlertSsl" }}'
+                    show-icon closable
+                    >
+                    </a-alert>
+                </transition>
                 <a-space direction="vertical">
                     <a-card hoverable style="margin-bottom: .5rem;">
                         <a-row>
@@ -664,6 +673,7 @@
             saveBtnDisable: true,
             refreshing: false,
             restartResult: '',
+            showAlert: false,
             isMobile: window.innerWidth <= 768,
             advSettings: 'xraySetting',
             cm: null,
@@ -1293,6 +1303,9 @@
             }
         },
         async mounted() {
+            if (window.location.protocol !== "https:") {
+                this.showAlert = true;
+            }
             await this.getXraySetting();
             await this.getXrayResult();
             await this.getOutboundsTraffic();

+ 2 - 0
web/translation/translate.en_US.toml

@@ -52,6 +52,8 @@
 "secretToken" = "Secret Token"
 "remained" = "Remained"
 "security" = "Security"
+"secAlertTitle" = "Security Alert"
+"secAlertSsl" = "This connection is not secure. Please avoid entering sensitive information until TLS is activated for data protection."
 
 [menu]
 "dashboard" = "Overview"

+ 2 - 0
web/translation/translate.es_ES.toml

@@ -52,6 +52,8 @@
 "secretToken" = "Token Secreto"
 "remained" = "Restante"
 "security" = "Seguridad"
+"secAlertTitle" = "Alerta de seguridad"
+"secAlertSsl" = "Esta conexión no es segura. Evite ingresar información confidencial hasta que TLS esté activado para la protección de datos."
 
 [menu]
 "dashboard" = "Estado del Sistema"

+ 2 - 0
web/translation/translate.fa_IR.toml

@@ -52,6 +52,8 @@
 "secretToken" = "توکن امنیتی"
 "remained" = "باقی‌مانده"
 "security" = "امنیت"
+"secAlertTitle" = "هشدار‌امنیتی"
+"secAlertSsl" = "این‌اتصال‌امن نیست. لطفا‌ تازمانی‌که تی‌ال‌اس برای محافظت از‌ داده‌ها فعال نشده‌است، از وارد کردن اطلاعات حساس خودداری کنید"
 
 [menu]
 "dashboard" = "نمای کلی"

+ 2 - 0
web/translation/translate.id_ID.toml

@@ -52,6 +52,8 @@
 "secretToken" = "Token Rahasia"
 "remained" = "Tersisa"
 "security" = "Keamanan"
+"secAlertTitle" = "Peringatan keamanan"
+"secAlertSsl" = "Koneksi ini tidak aman. Harap hindari memasukkan informasi sensitif sampai TLS diaktifkan untuk perlindungan data."
 
 [menu]
 "dashboard" = "Ikhtisar"

+ 2 - 0
web/translation/translate.ru_RU.toml

@@ -52,6 +52,8 @@
 "secretToken" = "Секретный токен"
 "remained" = "остались"
 "security" = "Безопасность"
+"secAlertTitle" = "Предупреждение системы безопасности"
+"secAlertSsl" = "Это соединение не защищено. Пожалуйста, воздержитесь от ввода конфиденциальной информации до тех пор, пока не будет активирован TLS для защиты данных"
 
 [menu]
 "dashboard" = "Статус системы"

+ 2 - 0
web/translation/translate.vi_VN.toml

@@ -52,6 +52,8 @@
 "secretToken" = "Mã bí mật"
 "remained" = "Còn lại"
 "security" = "Bảo vệ"
+"secAlertTitle" = "Cảnh báo an ninh-Tiếng Việt by Ohoang7"
+"secAlertSsl" = "Kết nối này không an toàn; Vui lòng không nhập thông tin nhạy cảm cho đến khi TLS được kích hoạt để bảo vệ dữ liệu của Bạn"
 
 [menu]
 "dashboard" = "Trạng thái hệ thống"

+ 2 - 0
web/translation/translate.zh_Hans.toml

@@ -52,6 +52,8 @@
 "secretToken" = "安全密钥"
 "remained" = "剩余"
 "security" = "安全"
+"secAlertTitle" = "安全警报"
+"secAlertSsl" = "此连接不安全;在激活 TLS 进行数据保护之前,请勿输入敏感信息"
 
 [menu]
 "dashboard" = "系统状态"