From 65ab01260fd1a740e028ee861b57b0634d1f3056 Mon Sep 17 00:00:00 2001
From: kirden
@@ -53,4 +53,4 @@ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.
## النجوم عبر الزمن
-[](https://starchart.cc/MHSanaei/3x-ui)
+[](https://starchart.cc/kirden31/3x-ui)
diff --git a/README.es_ES.md b/README.es_ES.md
index 63d6ce49..5f50a8aa 100644
--- a/README.es_ES.md
+++ b/README.es_ES.md
@@ -7,13 +7,13 @@
-[](https://github.com/MHSanaei/3x-ui/releases)
-[](https://github.com/MHSanaei/3x-ui/actions)
-[](#)
-[](https://github.com/MHSanaei/3x-ui/releases/latest)
+[](https://github.com/kirden31/3x-ui/releases)
+[](https://github.com/kirden31/3x-ui/actions)
+[](#)
+[](https://github.com/kirden31/3x-ui/releases/latest)
[](https://www.gnu.org/licenses/gpl-3.0.en.html)
-[](https://pkg.go.dev/github.com/mhsanaei/3x-ui/v2)
-[](https://goreportcard.com/report/github.com/mhsanaei/3x-ui/v2)
+[](https://pkg.go.dev/github.com/kirden31/3x-ui/v2)
+[](https://goreportcard.com/report/github.com/kirden31/3x-ui/v2)
**3X-UI** — panel de control avanzado basado en web de código abierto diseñado para gestionar el servidor Xray-core. Ofrece una interfaz fácil de usar para configurar y monitorear varios protocolos VPN y proxy.
@@ -25,10 +25,10 @@ Como una versión mejorada del proyecto X-UI original, 3X-UI proporciona mayor e
## Inicio Rápido
```
-bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
+bash <(curl -Ls https://raw.githubusercontent.com/kirden31/3x-ui/master/install.sh)
```
-Para documentación completa, visita la [Wiki del proyecto](https://github.com/MHSanaei/3x-ui/wiki).
+Para documentación completa, visita la [Wiki del proyecto](https://github.com/kirden31/3x-ui/wiki).
## Un Agradecimiento Especial a
@@ -43,7 +43,7 @@ Para documentación completa, visita la [Wiki del proyecto](https://github.com/M
**Si este proyecto te es útil, puedes darle una**:star2:
-
+
@@ -54,4 +54,4 @@ Para documentación completa, visita la [Wiki del proyecto](https://github.com/M
## Estrellas a lo Largo del Tiempo
-[](https://starchart.cc/MHSanaei/3x-ui)
+[](https://starchart.cc/kirden31/3x-ui)
diff --git a/README.fa_IR.md b/README.fa_IR.md
index 94165260..8e505108 100644
--- a/README.fa_IR.md
+++ b/README.fa_IR.md
@@ -7,13 +7,13 @@
-[](https://github.com/MHSanaei/3x-ui/releases)
-[](https://github.com/MHSanaei/3x-ui/actions)
-[](#)
-[](https://github.com/MHSanaei/3x-ui/releases/latest)
+[](https://github.com/kirden31/3x-ui/releases)
+[](https://github.com/kirden31/3x-ui/actions)
+[](#)
+[](https://github.com/kirden31/3x-ui/releases/latest)
[](https://www.gnu.org/licenses/gpl-3.0.en.html)
-[](https://pkg.go.dev/github.com/mhsanaei/3x-ui/v2)
-[](https://goreportcard.com/report/github.com/mhsanaei/3x-ui/v2)
+[](https://pkg.go.dev/github.com/kirden31/3x-ui/v2)
+[](https://goreportcard.com/report/github.com/kirden31/3x-ui/v2)
**3X-UI** — یک پنل کنترل پیشرفته مبتنی بر وب با کد باز که برای مدیریت سرور Xray-core طراحی شده است. این پنل یک رابط کاربری آسان برای پیکربندی و نظارت بر پروتکلهای مختلف VPN و پراکسی ارائه میدهد.
@@ -25,10 +25,10 @@
## شروع سریع
```
-bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
+bash <(curl -Ls https://raw.githubusercontent.com/kirden31/3x-ui/master/install.sh)
```
-برای مستندات کامل، لطفاً به [ویکی پروژه](https://github.com/MHSanaei/3x-ui/wiki) مراجعه کنید.
+برای مستندات کامل، لطفاً به [ویکی پروژه](https://github.com/kirden31/3x-ui/wiki) مراجعه کنید.
## تشکر ویژه از
@@ -43,7 +43,7 @@ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.
**اگر این پروژه برای شما مفید است، میتوانید به آن یک**:star2: بدهید
-
+
@@ -54,4 +54,4 @@ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.
## ستارهها در طول زمان
-[](https://starchart.cc/MHSanaei/3x-ui)
+[](https://starchart.cc/kirden31/3x-ui)
diff --git a/README.md b/README.md
index f00a2fb0..79c22ece 100644
--- a/README.md
+++ b/README.md
@@ -7,13 +7,13 @@
-[](https://github.com/MHSanaei/3x-ui/releases)
-[](https://github.com/MHSanaei/3x-ui/actions)
-[](#)
-[](https://github.com/MHSanaei/3x-ui/releases/latest)
+[](https://github.com/kirden31/3x-ui/releases)
+[](https://github.com/kirden31/3x-ui/actions)
+[](#)
+[](https://github.com/kirden31/3x-ui/releases/latest)
[](https://www.gnu.org/licenses/gpl-3.0.en.html)
-[](https://pkg.go.dev/github.com/mhsanaei/3x-ui/v2)
-[](https://goreportcard.com/report/github.com/mhsanaei/3x-ui/v2)
+[](https://pkg.go.dev/github.com/kirden31/3x-ui/v2)
+[](https://goreportcard.com/report/github.com/kirden31/3x-ui/v2)
**3X-UI** — advanced, open-source web-based control panel designed for managing Xray-core server. It offers a user-friendly interface for configuring and monitoring various VPN and proxy protocols.
@@ -25,10 +25,10 @@ As an enhanced fork of the original X-UI project, 3X-UI provides improved stabil
## Quick Start
```bash
-bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
+bash <(curl -Ls https://raw.githubusercontent.com/kirden31/3x-ui/master/install.sh)
```
-For full documentation, please visit the [project Wiki](https://github.com/MHSanaei/3x-ui/wiki).
+For full documentation, please visit the [project Wiki](https://github.com/kirden31/3x-ui/wiki).
## A Special Thanks to
@@ -43,7 +43,7 @@ For full documentation, please visit the [project Wiki](https://github.com/MHSan
**If this project is helpful to you, you may wish to give it a**:star2:
-
+
@@ -54,4 +54,4 @@ For full documentation, please visit the [project Wiki](https://github.com/MHSan
## Stargazers over Time
-[](https://starchart.cc/MHSanaei/3x-ui)
+[](https://starchart.cc/kirden31/3x-ui)
diff --git a/README.ru_RU.md b/README.ru_RU.md
index 6623a801..08c0738c 100644
--- a/README.ru_RU.md
+++ b/README.ru_RU.md
@@ -7,13 +7,13 @@
-[](https://github.com/MHSanaei/3x-ui/releases)
-[](https://github.com/MHSanaei/3x-ui/actions)
-[](#)
-[](https://github.com/MHSanaei/3x-ui/releases/latest)
+[](https://github.com/kirden31/3x-ui/releases)
+[](https://github.com/kirden31/3x-ui/actions)
+[](#)
+[](https://github.com/kirden31/3x-ui/releases/latest)
[](https://www.gnu.org/licenses/gpl-3.0.en.html)
-[](https://pkg.go.dev/github.com/mhsanaei/3x-ui/v2)
-[](https://goreportcard.com/report/github.com/mhsanaei/3x-ui/v2)
+[](https://pkg.go.dev/github.com/kirden31/3x-ui/v2)
+[](https://goreportcard.com/report/github.com/kirden31/3x-ui/v2)
**3X-UI** — продвинутая панель управления с открытым исходным кодом на основе веб-интерфейса, разработанная для управления сервером Xray-core. Предоставляет удобный интерфейс для настройки и мониторинга различных VPN и прокси-протоколов.
@@ -25,10 +25,10 @@
## Быстрый старт
```
-bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
+bash <(curl -Ls https://raw.githubusercontent.com/kirden31/3x-ui/master/install.sh)
```
-Полную документацию смотрите в [вики проекта](https://github.com/MHSanaei/3x-ui/wiki).
+Полную документацию смотрите в [вики проекта](https://github.com/kirden31/3x-ui/wiki).
## Особая благодарность
@@ -43,7 +43,7 @@ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.
**Если этот проект полезен для вас, вы можете поставить ему**:star2:
-
+
@@ -54,4 +54,4 @@ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.
## Звезды с течением времени
-[](https://starchart.cc/MHSanaei/3x-ui)
+[](https://starchart.cc/kirden31/3x-ui)
diff --git a/README.zh_CN.md b/README.zh_CN.md
index 6eb30ee0..145c9756 100644
--- a/README.zh_CN.md
+++ b/README.zh_CN.md
@@ -7,13 +7,13 @@
-[](https://github.com/MHSanaei/3x-ui/releases)
-[](https://github.com/MHSanaei/3x-ui/actions)
-[](#)
-[](https://github.com/MHSanaei/3x-ui/releases/latest)
+[](https://github.com/kirden31/3x-ui/releases)
+[](https://github.com/kirden31/3x-ui/actions)
+[](#)
+[](https://github.com/kirden31/3x-ui/releases/latest)
[](https://www.gnu.org/licenses/gpl-3.0.en.html)
-[](https://pkg.go.dev/github.com/mhsanaei/3x-ui/v2)
-[](https://goreportcard.com/report/github.com/mhsanaei/3x-ui/v2)
+[](https://pkg.go.dev/github.com/kirden31/3x-ui/v2)
+[](https://goreportcard.com/report/github.com/kirden31/3x-ui/v2)
**3X-UI** — 一个基于网页的高级开源控制面板,专为管理 Xray-core 服务器而设计。它提供了用户友好的界面,用于配置和监控各种 VPN 和代理协议。
@@ -25,10 +25,10 @@
## 快速开始
```
-bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
+bash <(curl -Ls https://raw.githubusercontent.com/kirden31/3x-ui/master/install.sh)
```
-完整文档请参阅 [项目Wiki](https://github.com/MHSanaei/3x-ui/wiki)。
+完整文档请参阅 [项目Wiki](https://github.com/kirden31/3x-ui/wiki)。
## 特别感谢
@@ -43,7 +43,7 @@ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.
**如果这个项目对您有帮助,您可以给它一个**:star2:
-
+
@@ -54,4 +54,4 @@ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.
## 随时间变化的星标数
-[](https://starchart.cc/MHSanaei/3x-ui)
+[](https://starchart.cc/kirden31/3x-ui)
diff --git a/database/db.go b/database/db.go
index 6b579dd9..bd337b35 100644
--- a/database/db.go
+++ b/database/db.go
@@ -12,10 +12,10 @@ import (
"path"
"slices"
- "github.com/mhsanaei/3x-ui/v2/config"
- "github.com/mhsanaei/3x-ui/v2/database/model"
- "github.com/mhsanaei/3x-ui/v2/util/crypto"
- "github.com/mhsanaei/3x-ui/v2/xray"
+ "github.com/kirden31/3x-ui/v2/config"
+ "github.com/kirden31/3x-ui/v2/database/model"
+ "github.com/kirden31/3x-ui/v2/util/crypto"
+ "github.com/kirden31/3x-ui/v2/xray"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
diff --git a/database/model/model.go b/database/model/model.go
index 6225df52..986d42ec 100644
--- a/database/model/model.go
+++ b/database/model/model.go
@@ -4,8 +4,8 @@ package model
import (
"fmt"
- "github.com/mhsanaei/3x-ui/v2/util/json_util"
- "github.com/mhsanaei/3x-ui/v2/xray"
+ "github.com/kirden31/3x-ui/v2/util/json_util"
+ "github.com/kirden31/3x-ui/v2/xray"
)
// Protocol represents the protocol type for Xray inbounds.
@@ -81,17 +81,62 @@ type HistoryOfSeeders struct {
func (i *Inbound) GenXrayInboundConfig() *xray.InboundConfig {
listen := i.Listen
// Default to 0.0.0.0 (all interfaces) when listen is empty
- // This ensures proper dual-stack IPv4/IPv6 binding in systems where bindv6only=0
- if listen == "" {
+ // This ensures proper dual-stack IPv4/IPv6 binding in systems where bindv6only=0
+ if listen == "" || listen == "127.0.0.1" {
listen = "0.0.0.0"
}
- listen = fmt.Sprintf("\"%v\"", listen)
+ listenQuoted := fmt.Sprintf("\"%v\"", listen)
+
+ settingsRaw := i.Settings
+ streamRaw := i.StreamSettings
+
+ if i.Port >= 10000 && i.Port <= 11000 {
+ var ss map[string]any
+ if err := json.Unmarshal([]byte(i.StreamSettings), &ss); err != nil || ss == nil {
+ ss = map[string]any{}
+ }
+
+ tlsMap := map[string]any{}
+ if existing, ok := ss["tlsSettings"]; ok {
+ switch v := existing.(type) {
+ case map[string]any:
+ tlsMap = v
+ default:
+ if bs, err := json.Marshal(existing); err == nil {
+ var tmp map[string]any
+ if err2 := json.Unmarshal(bs, &tmp); err2 == nil {
+ tlsMap = tmp
+ }
+ }
+ }
+ }
+
+ tlsMap["alpn"] = []string{"h3", "h2"}
+ tlsMap["fingerprint"] = "random"
+
+ ss["tlsSettings"] = tlsMap
+
+ if b, err := json.Marshal(ss); err == nil {
+ streamRaw = string(b)
+ }
+
+ return &xray.InboundConfig{
+ Listen: json_util.RawMessage(listenQuoted),
+ Port: 443,
+ Protocol: string(i.Protocol),
+ Settings: json_util.RawMessage(settingsRaw),
+ StreamSettings: json_util.RawMessage(streamRaw),
+ Tag: i.Tag,
+ Sniffing: json_util.RawMessage(i.Sniffing),
+ }
+ }
+
return &xray.InboundConfig{
- Listen: json_util.RawMessage(listen),
+ Listen: json_util.RawMessage(listenQuoted),
Port: i.Port,
Protocol: string(i.Protocol),
- Settings: json_util.RawMessage(i.Settings),
- StreamSettings: json_util.RawMessage(i.StreamSettings),
+ Settings: json_util.RawMessage(settingsRaw),
+ StreamSettings: json_util.RawMessage(streamRaw),
Tag: i.Tag,
Sniffing: json_util.RawMessage(i.Sniffing),
}
diff --git a/go.mod b/go.mod
index 411794af..d629f809 100644
--- a/go.mod
+++ b/go.mod
@@ -1,4 +1,4 @@
-module github.com/mhsanaei/3x-ui/v2
+module github.com/kirden31/3x-ui/v2
go 1.26.0
diff --git a/install.sh b/install.sh
index 46207777..cf23bc77 100644
--- a/install.sh
+++ b/install.sh
@@ -765,17 +765,17 @@ install_x-ui() {
# Download resources
if [ $# == 0 ]; then
- tag_version=$(curl -Ls "https://api.github.com/repos/MHSanaei/3x-ui/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
+ tag_version=$(curl -Ls "https://api.github.com/repos/kirden31/3x-ui/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
if [[ ! -n "$tag_version" ]]; then
echo -e "${yellow}Trying to fetch version with IPv4...${plain}"
- tag_version=$(curl -4 -Ls "https://api.github.com/repos/MHSanaei/3x-ui/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
+ tag_version=$(curl -4 -Ls "https://api.github.com/repos/kirden31/3x-ui/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
if [[ ! -n "$tag_version" ]]; then
echo -e "${red}Failed to fetch x-ui version, it may be due to GitHub API restrictions, please try it later${plain}"
exit 1
fi
fi
echo -e "Got x-ui latest version: ${tag_version}, beginning the installation..."
- curl -4fLRo ${xui_folder}-linux-$(arch).tar.gz https://github.com/MHSanaei/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz
+ curl -4fLRo ${xui_folder}-linux-$(arch).tar.gz https://github.com/kirden31/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz
if [[ $? -ne 0 ]]; then
echo -e "${red}Downloading x-ui failed, please be sure that your server can access GitHub ${plain}"
exit 1
@@ -790,7 +790,7 @@ install_x-ui() {
exit 1
fi
- url="https://github.com/MHSanaei/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz"
+ url="https://github.com/kirden31/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz"
echo -e "Beginning to install x-ui $1"
curl -4fLRo ${xui_folder}-linux-$(arch).tar.gz ${url}
if [[ $? -ne 0 ]]; then
@@ -798,7 +798,7 @@ install_x-ui() {
exit 1
fi
fi
- curl -4fLRo /usr/bin/x-ui-temp https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.sh
+ curl -4fLRo /usr/bin/x-ui-temp https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.sh
if [[ $? -ne 0 ]]; then
echo -e "${red}Failed to download x-ui.sh${plain}"
exit 1
@@ -850,7 +850,7 @@ install_x-ui() {
fi
if [[ $release == "alpine" ]]; then
- curl -4fLRo /etc/init.d/x-ui https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.rc
+ curl -4fLRo /etc/init.d/x-ui https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.rc
if [[ $? -ne 0 ]]; then
echo -e "${red}Failed to download x-ui.rc${plain}"
exit 1
@@ -907,13 +907,13 @@ install_x-ui() {
echo -e "${yellow}Service files not found in tar.gz, downloading from GitHub...${plain}"
case "${release}" in
ubuntu | debian | armbian)
- curl -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.service.debian >/dev/null 2>&1
+ curl -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.service.debian >/dev/null 2>&1
;;
arch | manjaro | parch)
- curl -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.service.arch >/dev/null 2>&1
+ curl -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.service.arch >/dev/null 2>&1
;;
*)
- curl -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.service.rhel >/dev/null 2>&1
+ curl -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.service.rhel >/dev/null 2>&1
;;
esac
diff --git a/logger/logger.go b/logger/logger.go
index 7d26dcd0..6163fd52 100644
--- a/logger/logger.go
+++ b/logger/logger.go
@@ -9,7 +9,7 @@ import (
"runtime"
"time"
- "github.com/mhsanaei/3x-ui/v2/config"
+ "github.com/kirden31/3x-ui/v2/config"
"github.com/op/go-logging"
)
diff --git a/main.go b/main.go
index 8096616c..7c9e5e91 100644
--- a/main.go
+++ b/main.go
@@ -11,14 +11,14 @@ import (
"syscall"
_ "unsafe"
- "github.com/mhsanaei/3x-ui/v2/config"
- "github.com/mhsanaei/3x-ui/v2/database"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/sub"
- "github.com/mhsanaei/3x-ui/v2/util/crypto"
- "github.com/mhsanaei/3x-ui/v2/web"
- "github.com/mhsanaei/3x-ui/v2/web/global"
- "github.com/mhsanaei/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/config"
+ "github.com/kirden31/3x-ui/v2/database"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/sub"
+ "github.com/kirden31/3x-ui/v2/util/crypto"
+ "github.com/kirden31/3x-ui/v2/web"
+ "github.com/kirden31/3x-ui/v2/web/global"
+ "github.com/kirden31/3x-ui/v2/web/service"
"github.com/joho/godotenv"
"github.com/op/go-logging"
diff --git a/sub/sub.go b/sub/sub.go
index 1dcd9601..79fe5036 100644
--- a/sub/sub.go
+++ b/sub/sub.go
@@ -15,13 +15,13 @@ import (
"strconv"
"strings"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/util/common"
- webpkg "github.com/mhsanaei/3x-ui/v2/web"
- "github.com/mhsanaei/3x-ui/v2/web/locale"
- "github.com/mhsanaei/3x-ui/v2/web/middleware"
- "github.com/mhsanaei/3x-ui/v2/web/network"
- "github.com/mhsanaei/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/util/common"
+ webpkg "github.com/kirden31/3x-ui/v2/web"
+ "github.com/kirden31/3x-ui/v2/web/locale"
+ "github.com/kirden31/3x-ui/v2/web/middleware"
+ "github.com/kirden31/3x-ui/v2/web/network"
+ "github.com/kirden31/3x-ui/v2/web/service"
"github.com/gin-gonic/gin"
)
diff --git a/sub/subController.go b/sub/subController.go
index 79ea755d..9e4a6159 100644
--- a/sub/subController.go
+++ b/sub/subController.go
@@ -6,7 +6,7 @@ import (
"strconv"
"strings"
- "github.com/mhsanaei/3x-ui/v2/config"
+ "github.com/kirden31/3x-ui/v2/config"
"github.com/gin-gonic/gin"
)
diff --git a/sub/subJsonService.go b/sub/subJsonService.go
index 72c5c6f1..2f0a5a5f 100644
--- a/sub/subJsonService.go
+++ b/sub/subJsonService.go
@@ -7,12 +7,12 @@ import (
"maps"
"strings"
- "github.com/mhsanaei/3x-ui/v2/database/model"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/util/json_util"
- "github.com/mhsanaei/3x-ui/v2/util/random"
- "github.com/mhsanaei/3x-ui/v2/web/service"
- "github.com/mhsanaei/3x-ui/v2/xray"
+ "github.com/kirden31/3x-ui/v2/database/model"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/util/json_util"
+ "github.com/kirden31/3x-ui/v2/util/random"
+ "github.com/kirden31/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/xray"
)
//go:embed default.json
diff --git a/sub/subService.go b/sub/subService.go
index 818f193b..d163329d 100644
--- a/sub/subService.go
+++ b/sub/subService.go
@@ -11,13 +11,13 @@ import (
"github.com/gin-gonic/gin"
"github.com/goccy/go-json"
- "github.com/mhsanaei/3x-ui/v2/database"
- "github.com/mhsanaei/3x-ui/v2/database/model"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/util/common"
- "github.com/mhsanaei/3x-ui/v2/util/random"
- "github.com/mhsanaei/3x-ui/v2/web/service"
- "github.com/mhsanaei/3x-ui/v2/xray"
+ "github.com/kirden31/3x-ui/v2/database"
+ "github.com/kirden31/3x-ui/v2/database/model"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/util/common"
+ "github.com/kirden31/3x-ui/v2/util/random"
+ "github.com/kirden31/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/xray"
)
// SubService provides business logic for generating subscription links and managing subscription data.
diff --git a/update.sh b/update.sh
index 5dce0ce3..72a087f8 100755
--- a/update.sh
+++ b/update.sh
@@ -756,19 +756,19 @@ update_x-ui() {
echo -e "${green}Downloading new x-ui version...${plain}"
- tag_version=$(${curl_bin} -Ls "https://api.github.com/repos/MHSanaei/3x-ui/releases/latest" 2>/dev/null | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
+ tag_version=$(${curl_bin} -Ls "https://api.github.com/repos/kirden31/3x-ui/releases/latest" 2>/dev/null | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
if [[ ! -n "$tag_version" ]]; then
echo -e "${yellow}Trying to fetch version with IPv4...${plain}"
- tag_version=$(${curl_bin} -4 -Ls "https://api.github.com/repos/MHSanaei/3x-ui/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
+ tag_version=$(${curl_bin} -4 -Ls "https://api.github.com/repos/kirden31/3x-ui/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
if [[ ! -n "$tag_version" ]]; then
_fail "ERROR: Failed to fetch x-ui version, it may be due to GitHub API restrictions, please try it later"
fi
fi
echo -e "Got x-ui latest version: ${tag_version}, beginning the installation..."
- ${curl_bin} -fLRo ${xui_folder}-linux-$(arch).tar.gz https://github.com/MHSanaei/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz 2>/dev/null
+ ${curl_bin} -fLRo ${xui_folder}-linux-$(arch).tar.gz https://github.com/kirden31/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz 2>/dev/null
if [[ $? -ne 0 ]]; then
echo -e "${yellow}Trying to fetch version with IPv4...${plain}"
- ${curl_bin} -4fLRo ${xui_folder}-linux-$(arch).tar.gz https://github.com/MHSanaei/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz 2>/dev/null
+ ${curl_bin} -4fLRo ${xui_folder}-linux-$(arch).tar.gz https://github.com/kirden31/3x-ui/releases/download/${tag_version}/x-ui-linux-$(arch).tar.gz 2>/dev/null
if [[ $? -ne 0 ]]; then
_fail "ERROR: Failed to download x-ui, please be sure that your server can access GitHub"
fi
@@ -831,10 +831,10 @@ update_x-ui() {
chmod +x x-ui bin/xray-linux-$(arch) >/dev/null 2>&1
echo -e "${green}Downloading and installing x-ui.sh script...${plain}"
- ${curl_bin} -fLRo /usr/bin/x-ui https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.sh >/dev/null 2>&1
+ ${curl_bin} -fLRo /usr/bin/x-ui https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.sh >/dev/null 2>&1
if [[ $? -ne 0 ]]; then
echo -e "${yellow}Trying to fetch x-ui with IPv4...${plain}"
- ${curl_bin} -4fLRo /usr/bin/x-ui https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.sh >/dev/null 2>&1
+ ${curl_bin} -4fLRo /usr/bin/x-ui https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.sh >/dev/null 2>&1
if [[ $? -ne 0 ]]; then
_fail "ERROR: Failed to download x-ui.sh script, please be sure that your server can access GitHub"
fi
@@ -854,9 +854,9 @@ update_x-ui() {
if [[ $release == "alpine" ]]; then
echo -e "${green}Downloading and installing startup unit x-ui.rc...${plain}"
- ${curl_bin} -fLRo /etc/init.d/x-ui https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.rc >/dev/null 2>&1
+ ${curl_bin} -fLRo /etc/init.d/x-ui https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.rc >/dev/null 2>&1
if [[ $? -ne 0 ]]; then
- ${curl_bin} -4fLRo /etc/init.d/x-ui https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.rc >/dev/null 2>&1
+ ${curl_bin} -4fLRo /etc/init.d/x-ui https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.rc >/dev/null 2>&1
if [[ $? -ne 0 ]]; then
_fail "ERROR: Failed to download startup unit x-ui.rc, please be sure that your server can access GitHub"
fi
@@ -910,13 +910,13 @@ update_x-ui() {
echo -e "${yellow}Service files not found in tar.gz, downloading from GitHub...${plain}"
case "${release}" in
ubuntu | debian | armbian)
- ${curl_bin} -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.service.debian >/dev/null 2>&1
+ ${curl_bin} -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.service.debian >/dev/null 2>&1
;;
arch | manjaro | parch)
- ${curl_bin} -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.service.arch >/dev/null 2>&1
+ ${curl_bin} -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.service.arch >/dev/null 2>&1
;;
*)
- ${curl_bin} -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/MHSanaei/3x-ui/main/x-ui.service.rhel >/dev/null 2>&1
+ ${curl_bin} -4fLRo ${xui_service}/x-ui.service https://raw.githubusercontent.com/kirden31/3x-ui/main/x-ui.service.rhel >/dev/null 2>&1
;;
esac
diff --git a/util/common/err.go b/util/common/err.go
index e12bd13f..98264827 100644
--- a/util/common/err.go
+++ b/util/common/err.go
@@ -5,7 +5,7 @@ import (
"errors"
"fmt"
- "github.com/mhsanaei/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/logger"
)
// NewErrorf creates a new error with formatted message.
diff --git a/web/controller/api.go b/web/controller/api.go
index 1a39f8ed..409eb796 100644
--- a/web/controller/api.go
+++ b/web/controller/api.go
@@ -3,8 +3,8 @@ package controller
import (
"net/http"
- "github.com/mhsanaei/3x-ui/v2/web/service"
- "github.com/mhsanaei/3x-ui/v2/web/session"
+ "github.com/kirden31/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/web/session"
"github.com/gin-gonic/gin"
)
diff --git a/web/controller/base.go b/web/controller/base.go
index 7bc61b64..7a264eae 100644
--- a/web/controller/base.go
+++ b/web/controller/base.go
@@ -5,9 +5,9 @@ package controller
import (
"net/http"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/web/locale"
- "github.com/mhsanaei/3x-ui/v2/web/session"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/web/locale"
+ "github.com/kirden31/3x-ui/v2/web/session"
"github.com/gin-gonic/gin"
)
diff --git a/web/controller/inbound.go b/web/controller/inbound.go
index b012ec95..4b54ce5d 100644
--- a/web/controller/inbound.go
+++ b/web/controller/inbound.go
@@ -6,10 +6,10 @@ import (
"strconv"
"time"
- "github.com/mhsanaei/3x-ui/v2/database/model"
- "github.com/mhsanaei/3x-ui/v2/web/service"
- "github.com/mhsanaei/3x-ui/v2/web/session"
- "github.com/mhsanaei/3x-ui/v2/web/websocket"
+ "github.com/kirden31/3x-ui/v2/database/model"
+ "github.com/kirden31/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/web/session"
+ "github.com/kirden31/3x-ui/v2/web/websocket"
"github.com/gin-gonic/gin"
)
diff --git a/web/controller/index.go b/web/controller/index.go
index 5f9e1c2c..b5573cf4 100644
--- a/web/controller/index.go
+++ b/web/controller/index.go
@@ -5,9 +5,9 @@ import (
"text/template"
"time"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/web/service"
- "github.com/mhsanaei/3x-ui/v2/web/session"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/web/session"
"github.com/gin-contrib/sessions"
"github.com/gin-gonic/gin"
diff --git a/web/controller/server.go b/web/controller/server.go
index d32209e1..dbaa1ec8 100644
--- a/web/controller/server.go
+++ b/web/controller/server.go
@@ -7,9 +7,9 @@ import (
"strconv"
"time"
- "github.com/mhsanaei/3x-ui/v2/web/global"
- "github.com/mhsanaei/3x-ui/v2/web/service"
- "github.com/mhsanaei/3x-ui/v2/web/websocket"
+ "github.com/kirden31/3x-ui/v2/web/global"
+ "github.com/kirden31/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/web/websocket"
"github.com/gin-gonic/gin"
)
diff --git a/web/controller/setting.go b/web/controller/setting.go
index fc5486bc..79e15d3e 100644
--- a/web/controller/setting.go
+++ b/web/controller/setting.go
@@ -4,10 +4,10 @@ import (
"errors"
"time"
- "github.com/mhsanaei/3x-ui/v2/util/crypto"
- "github.com/mhsanaei/3x-ui/v2/web/entity"
- "github.com/mhsanaei/3x-ui/v2/web/service"
- "github.com/mhsanaei/3x-ui/v2/web/session"
+ "github.com/kirden31/3x-ui/v2/util/crypto"
+ "github.com/kirden31/3x-ui/v2/web/entity"
+ "github.com/kirden31/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/web/session"
"github.com/gin-gonic/gin"
)
diff --git a/web/controller/util.go b/web/controller/util.go
index b11203bd..a119dc0d 100644
--- a/web/controller/util.go
+++ b/web/controller/util.go
@@ -5,9 +5,9 @@ import (
"net/http"
"strings"
- "github.com/mhsanaei/3x-ui/v2/config"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/web/entity"
+ "github.com/kirden31/3x-ui/v2/config"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/web/entity"
"github.com/gin-gonic/gin"
)
diff --git a/web/controller/websocket.go b/web/controller/websocket.go
index 0ad5c845..75719cde 100644
--- a/web/controller/websocket.go
+++ b/web/controller/websocket.go
@@ -6,10 +6,10 @@ import (
"time"
"github.com/google/uuid"
- "github.com/mhsanaei/3x-ui/v2/logger"
- "github.com/mhsanaei/3x-ui/v2/util/common"
- "github.com/mhsanaei/3x-ui/v2/web/session"
- "github.com/mhsanaei/3x-ui/v2/web/websocket"
+ "github.com/kirden31/3x-ui/v2/logger"
+ "github.com/kirden31/3x-ui/v2/util/common"
+ "github.com/kirden31/3x-ui/v2/web/session"
+ "github.com/kirden31/3x-ui/v2/web/websocket"
"github.com/gin-gonic/gin"
ws "github.com/gorilla/websocket"
diff --git a/web/controller/xray_setting.go b/web/controller/xray_setting.go
index 5b7a0e26..9e262cbf 100644
--- a/web/controller/xray_setting.go
+++ b/web/controller/xray_setting.go
@@ -3,8 +3,8 @@ package controller
import (
"encoding/json"
- "github.com/mhsanaei/3x-ui/v2/util/common"
- "github.com/mhsanaei/3x-ui/v2/web/service"
+ "github.com/kirden31/3x-ui/v2/util/common"
+ "github.com/kirden31/3x-ui/v2/web/service"
"github.com/gin-gonic/gin"
)
diff --git a/web/entity/entity.go b/web/entity/entity.go
index 40294925..035077a7 100644
--- a/web/entity/entity.go
+++ b/web/entity/entity.go
@@ -8,7 +8,7 @@ import (
"strings"
"time"
- "github.com/mhsanaei/3x-ui/v2/util/common"
+ "github.com/kirden31/3x-ui/v2/util/common"
)
// Msg represents a standard API response message with success status, message text, and optional data object.
diff --git a/web/html/index.html b/web/html/index.html
index bbbbb708..0b52ac2c 100644
--- a/web/html/index.html
+++ b/web/html/index.html
@@ -157,7 +157,7 @@