omniroute 2.8.3 → 2.8.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/.next/BUILD_ID +1 -1
- package/app/.next/build-manifest.json +2 -2
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/a2a/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/agents/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mcp/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/search-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/400/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/401/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/403/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/408/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/429/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/500/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/502/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/503/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error.html +2 -2
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/catalog/route.js +1 -1
- package/app/.next/server/app/api/models/catalog/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/models/route.js +2 -2
- package/app/.next/server/app/api/providers/[id]/test/route.js +3 -3
- package/app/.next/server/app/api/providers/route.js +1 -1
- package/app/.next/server/app/api/providers/test-batch/route.js +6 -6
- package/app/.next/server/app/api/v1/models/route.js +3 -3
- package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/route.js +3 -3
- package/app/.next/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/maintenance/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__09c944b3._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__134baf4c._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__179c5303._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__237e5042._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__2f8f5f38._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__31027061._.js +4 -0
- package/app/.next/server/chunks/[root-of-the-server]__3e042fbd._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__46fad57a._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__7a9b72a4._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__7d9b23e7._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__80e3bfc3._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__84e445b2._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__92cb0def._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__9bbd49c8._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__add0a68c._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__c393c81f._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__cd42b732._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__d4563e10._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__d7914418._.js +4 -0
- package/app/.next/server/chunks/[root-of-the-server]__db2f9fe0._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__e27a89bd._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__e56edf04._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__e6e94646._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__eb98039a._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__ebf3fe48._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__f0131d95._.js +4 -0
- package/app/.next/server/chunks/[root-of-the-server]__f31b4656._.js +3 -3
- package/app/.next/server/chunks/[root-of-the-server]__fad1679d._.js +2 -2
- package/app/.next/server/chunks/_05c48915._.js +1 -1
- package/app/.next/server/chunks/_2115d8de._.js +1 -1
- package/app/.next/server/chunks/_3ac953eb._.js +1 -1
- package/app/.next/server/chunks/_4b8fd853._.js +1 -1
- package/app/.next/server/chunks/_68683848._.js +1 -1
- package/app/.next/server/chunks/_ee9b677b._.js +1 -1
- package/app/.next/server/chunks/open-sse_cf4d5692._.js +1 -1
- package/app/.next/server/chunks/open-sse_config_constants_ts_9583de19._.js +1 -1
- package/app/.next/server/chunks/open-sse_services_826884e1._.js +2 -1
- package/app/.next/server/chunks/ssr/[root-of-the-server]__9affb65e._.js +1 -1
- package/app/.next/server/chunks/ssr/[root-of-the-server]__a6942102._.js +1 -1
- package/app/.next/server/chunks/ssr/_19b3d5b1._.js +2 -2
- package/app/.next/server/chunks/ssr/src_9197fb9b._.js +1 -1
- package/app/.next/server/chunks/ssr/src_ec615d6e._.js +2 -2
- package/app/.next/server/chunks/ssr/src_lib_initCloudSync_ts_982b9d4d._.js +1 -1
- package/app/.next/server/pages/500.html +2 -2
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/chunks/{37e9976d0367faad.js → 3fa6c964786c962d.js} +4 -4
- package/app/.next/static/chunks/{19b1432393321fcf.js → d9a70775eb233dc3.js} +1 -1
- package/app/.next/static/chunks/{0f71d7fbf89bb737.js → ec1938d17386c6db.js} +1 -1
- package/app/CHANGELOG.md +53 -0
- package/app/docs/ARCHITECTURE.md +1 -1
- package/app/docs/VM_DEPLOYMENT_GUIDE.md +2 -0
- package/app/docs/i18n/README.md +9 -17
- package/app/docs/i18n/ar/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/bg/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/da/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/de/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/es/VM_DEPLOYMENT_GUIDE.md +107 -109
- package/app/docs/i18n/fi/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/fr/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/he/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/hu/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/id/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/in/VM_DEPLOYMENT_GUIDE.md +102 -210
- package/app/docs/i18n/it/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/ja/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/ko/VM_DEPLOYMENT_GUIDE.md +109 -111
- package/app/docs/i18n/ms/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/nl/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/no/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/phi/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/pl/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/pt/VM_DEPLOYMENT_GUIDE.md +96 -98
- package/app/docs/i18n/pt-BR/VM_DEPLOYMENT_GUIDE.md +96 -98
- package/app/docs/i18n/ro/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/ru/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/sk/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/sv/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/th/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/uk-UA/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/vi/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/i18n/zh-CN/VM_DEPLOYMENT_GUIDE.md +110 -112
- package/app/docs/openapi.yaml +1 -1
- package/app/open-sse/config/constants.ts +3 -3
- package/app/open-sse/services/comboAgentMiddleware.ts +9 -1
- package/app/package-lock.json +5 -5
- package/app/package.json +1 -1
- package/app/scripts/i18n/generate-multilang.mjs +1 -0
- package/app/src/shared/constants/cliTools.ts +2 -2
- package/app/src/shared/constants/providers.ts +3 -0
- package/app/src/shared/validation/providerSchema.ts +6 -0
- package/app/tests/e2e/providers-bailian-coding-plan.spec.ts +14 -0
- package/package.json +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__61396d77._.js +0 -4
- package/app/.next/server/chunks/[root-of-the-server]__d5ecc2ba._.js +0 -4
- package/app/.next/server/chunks/[root-of-the-server]__daa26645._.js +0 -4
- /package/app/.next/static/{IiXcm5VJcOKrDneQQSdf- → coLESPH6_RrEzzULWq8F5}/_buildManifest.js +0 -0
- /package/app/.next/static/{IiXcm5VJcOKrDneQQSdf- → coLESPH6_RrEzzULWq8F5}/_clientMiddlewareManifest.json +0 -0
- /package/app/.next/static/{IiXcm5VJcOKrDneQQSdf- → coLESPH6_RrEzzULWq8F5}/_ssgManifest.js +0 -0
|
@@ -1,73 +1,69 @@
|
|
|
1
|
-
|
|
1
|
+
# ओमनीरूट - क्लाउडफ्लेयर के साथ वीएम पर परिनियोजन गाइड
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
# OmniRoute — Guia de Deploy em VM com Cloudflare
|
|
3
|
+
🌐 **Languages:** 🇺🇸 [English](../../VM_DEPLOYMENT_GUIDE.md) | 🇧🇷 [Português (Brasil)](../pt-BR/VM_DEPLOYMENT_GUIDE.md) | 🇪🇸 [Español](../es/VM_DEPLOYMENT_GUIDE.md) | 🇫🇷 [Français](../fr/VM_DEPLOYMENT_GUIDE.md) | 🇮🇹 [Italiano](../it/VM_DEPLOYMENT_GUIDE.md) | 🇷🇺 [Русский](../ru/VM_DEPLOYMENT_GUIDE.md) | 🇨🇳 [中文 (简体)](../zh-CN/VM_DEPLOYMENT_GUIDE.md) | 🇩🇪 [Deutsch](../de/VM_DEPLOYMENT_GUIDE.md) | 🇮🇳 [हिन्दी](../in/VM_DEPLOYMENT_GUIDE.md) | 🇹🇭 [ไทย](../th/VM_DEPLOYMENT_GUIDE.md) | 🇺🇦 [Українська](../uk-UA/VM_DEPLOYMENT_GUIDE.md) | 🇸🇦 [العربية](../ar/VM_DEPLOYMENT_GUIDE.md) | 🇯🇵 [日本語](../ja/VM_DEPLOYMENT_GUIDE.md) | 🇻🇳 [Tiếng Việt](../vi/VM_DEPLOYMENT_GUIDE.md) | 🇧🇬 [Български](../bg/VM_DEPLOYMENT_GUIDE.md) | 🇩🇰 [Dansk](../da/VM_DEPLOYMENT_GUIDE.md) | 🇫🇮 [Suomi](../fi/VM_DEPLOYMENT_GUIDE.md) | 🇮🇱 [עברית](../he/VM_DEPLOYMENT_GUIDE.md) | 🇭🇺 [Magyar](../hu/VM_DEPLOYMENT_GUIDE.md) | 🇮🇩 [Bahasa Indonesia](../id/VM_DEPLOYMENT_GUIDE.md) | 🇰🇷 [한국어](../ko/VM_DEPLOYMENT_GUIDE.md) | 🇲🇾 [Bahasa Melayu](../ms/VM_DEPLOYMENT_GUIDE.md) | 🇳🇱 [Nederlands](../nl/VM_DEPLOYMENT_GUIDE.md) | 🇳🇴 [Norsk](../no/VM_DEPLOYMENT_GUIDE.md) | 🇵🇹 [Português (Portugal)](../pt/VM_DEPLOYMENT_GUIDE.md) | 🇷🇴 [Română](../ro/VM_DEPLOYMENT_GUIDE.md) | 🇵🇱 [Polski](../pl/VM_DEPLOYMENT_GUIDE.md) | 🇸🇰 [Slovenčina](../sk/VM_DEPLOYMENT_GUIDE.md) | 🇸🇪 [Svenska](../sv/VM_DEPLOYMENT_GUIDE.md) | 🇵🇭 [Filipino](../phi/VM_DEPLOYMENT_GUIDE.md) | 🇨🇿 [Čeština](../cs/VM_DEPLOYMENT_GUIDE.md)
|
|
6
4
|
|
|
7
|
-
|
|
5
|
+
क्लाउडफ्लेयर के माध्यम से प्रबंधित डोमेन के साथ वीएम (वीपीएस) पर ओमनीरूट को स्थापित और कॉन्फ़िगर करने के लिए पूरी गाइड।
|
|
8
6
|
|
|
9
7
|
---
|
|
10
8
|
|
|
11
|
-
##
|
|
9
|
+
## पूर्वावश्यकताएँ
|
|
12
10
|
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
11
|
+
| आइटम | न्यूनतम | अनुशंसित |
|
|
12
|
+
| ---------- | --------------------- | ------------------ |
|
|
13
|
+
| **सीपीयू** | 1 वीसीपीयू | 2 वीसीपीयू |
|
|
14
|
+
| **राम** | 1 जीबी | 2 जीबी |
|
|
15
|
+
| **डिस्क** | 10 जीबी एसएसडी | 25 जीबी एसएसडी |
|
|
16
|
+
| **ओएस** | उबंटू 22.04 एलटीएस | उबंटू 24.04 एलटीएस |
|
|
17
|
+
| **डोमेन** | Cloudflare पर पंजीकृत | — |
|
|
18
|
+
| **डॉकर** | डॉकर इंजन 24+ | डॉकर 27+ |
|
|
21
19
|
|
|
22
|
-
|
|
20
|
+
**परीक्षित प्रदाता**: अकामाई (लिनोड), डिजिटलओशन, वल्चर, हेट्ज़नर, एडब्ल्यूएस लाइटसेल।
|
|
23
21
|
|
|
24
22
|
---
|
|
25
23
|
|
|
26
|
-
## 1.
|
|
24
|
+
## 1. वीएम को कॉन्फ़िगर करें
|
|
27
25
|
|
|
28
|
-
### 1.1
|
|
26
|
+
### 1.1 उदाहरण बनाएँ
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
आपके पसंदीदा VPS प्रदाता पर:
|
|
31
29
|
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
-
|
|
35
|
-
-
|
|
30
|
+
- उबंटू 24.04 एलटीएस चुनें
|
|
31
|
+
- न्यूनतम योजना चुनें (1 वीसीपीयू / 1 जीबी रैम)
|
|
32
|
+
- एक मजबूत रूट पासवर्ड सेट करें या SSH कुंजी कॉन्फ़िगर करें
|
|
33
|
+
- **सार्वजनिक आईपी** पर ध्यान दें (जैसे, `203.0.113.10`)
|
|
36
34
|
|
|
37
|
-
### 1.2
|
|
35
|
+
### 1.2 एसएसएच के माध्यम से कनेक्ट करें
|
|
38
36
|
|
|
39
37
|
```bash
|
|
40
38
|
ssh root@203.0.113.10
|
|
41
39
|
```
|
|
42
40
|
|
|
43
|
-
### 1.3
|
|
41
|
+
### 1.3 सिस्टम को अपडेट करें
|
|
44
42
|
|
|
45
|
-
|
|
46
|
-
apt update && apt upgrade -y
|
|
47
|
-
```
|
|
43
|
+
**OMNI_टोकन_1**
|
|
48
44
|
|
|
49
|
-
### 1.4
|
|
45
|
+
### 1.4 डॉकर स्थापित करें
|
|
50
46
|
|
|
51
47
|
```bash
|
|
52
|
-
#
|
|
48
|
+
# Install dependencies
|
|
53
49
|
apt install -y ca-certificates curl gnupg
|
|
54
50
|
|
|
55
|
-
#
|
|
51
|
+
# Add official Docker repository
|
|
56
52
|
install -m 0755 -d /etc/apt/keyrings
|
|
57
53
|
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
|
58
54
|
chmod a+r /etc/apt/keyrings/docker.gpg
|
|
59
|
-
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo
|
|
55
|
+
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $ (. /etc/os-release && echo “$VERSION_CODENAME”) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
|
|
60
56
|
apt update
|
|
61
57
|
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
|
|
62
58
|
```
|
|
63
59
|
|
|
64
|
-
### 1.5
|
|
60
|
+
### 1.5 nginx स्थापित करें
|
|
65
61
|
|
|
66
62
|
```bash
|
|
67
63
|
apt install -y nginx
|
|
68
64
|
```
|
|
69
65
|
|
|
70
|
-
### 1.6
|
|
66
|
+
### 1.6 फ़ायरवॉल कॉन्फ़िगर करें (UFW)
|
|
71
67
|
|
|
72
68
|
```bash
|
|
73
69
|
ufw default deny incoming
|
|
@@ -78,53 +74,23 @@ ufw allow 443/tcp # HTTPS
|
|
|
78
74
|
ufw enable
|
|
79
75
|
```
|
|
80
76
|
|
|
81
|
-
>
|
|
77
|
+
> **टिप**: अधिकतम सुरक्षा के लिए, पोर्ट 80 और 443 को केवल क्लाउडफ़ेयर आईपी तक सीमित रखें। [Advanced Security](#advanced-security) अनुभाग देखें।
|
|
82
78
|
|
|
83
79
|
---
|
|
84
80
|
|
|
85
|
-
## 2.
|
|
81
|
+
## 2. ओमनीरूट स्थापित करें
|
|
86
82
|
|
|
87
|
-
### 2.1
|
|
83
|
+
### 2.1 कॉन्फ़िगरेशन निर्देशिका बनाएं
|
|
88
84
|
|
|
89
|
-
|
|
90
|
-
mkdir -p /opt/omniroute
|
|
91
|
-
```
|
|
85
|
+
**OMNI_टोकन_5**
|
|
92
86
|
|
|
93
|
-
### 2.2
|
|
87
|
+
### 2.2 पर्यावरण चर फ़ाइल बनाएँ
|
|
94
88
|
|
|
95
|
-
|
|
96
|
-
cat > /opt/omniroute/.env << 'EOF'
|
|
97
|
-
# === Segurança ===
|
|
98
|
-
JWT_SECRET=ALTERE-PARA-CHAVE-SECRETA-UNICA-64-CHARS
|
|
99
|
-
INITIAL_PASSWORD=SuaSenhaSegura123!
|
|
100
|
-
API_KEY_SECRET=ALTERE-PARA-OUTRA-CHAVE-SECRETA
|
|
101
|
-
STORAGE_ENCRYPTION_KEY=ALTERE-PARA-TERCEIRA-CHAVE-SECRETA
|
|
102
|
-
STORAGE_ENCRYPTION_KEY_VERSION=v1
|
|
103
|
-
MACHINE_ID_SALT=ALTERE-PARA-SALT-UNICO
|
|
104
|
-
|
|
105
|
-
# === App ===
|
|
106
|
-
PORT=20128
|
|
107
|
-
NODE_ENV=production
|
|
108
|
-
HOSTNAME=0.0.0.0
|
|
109
|
-
DATA_DIR=/app/data
|
|
110
|
-
STORAGE_DRIVER=sqlite
|
|
111
|
-
ENABLE_REQUEST_LOGS=true
|
|
112
|
-
AUTH_COOKIE_SECURE=false
|
|
113
|
-
REQUIRE_API_KEY=false
|
|
114
|
-
|
|
115
|
-
# === Domain (altere para seu domínio) ===
|
|
116
|
-
BASE_URL=https://llms.seudominio.com
|
|
117
|
-
NEXT_PUBLIC_BASE_URL=https://llms.seudominio.com
|
|
118
|
-
|
|
119
|
-
# === Cloud Sync (opcional) ===
|
|
120
|
-
# CLOUD_URL=https://cloud.omniroute.online
|
|
121
|
-
# NEXT_PUBLIC_CLOUD_URL=https://cloud.omniroute.online
|
|
122
|
-
EOF
|
|
123
|
-
```
|
|
89
|
+
**OMNI_टोकन_6**
|
|
124
90
|
|
|
125
|
-
> ⚠️
|
|
91
|
+
> ⚠️ **महत्वपूर्ण**: अद्वितीय गुप्त कुंजियाँ उत्पन्न करें! प्रत्येक कुंजी के लिए `openssl rand -hex 32` का उपयोग करें।
|
|
126
92
|
|
|
127
|
-
### 2.3
|
|
93
|
+
### 2.3 कंटेनर प्रारंभ करें
|
|
128
94
|
|
|
129
95
|
```bash
|
|
130
96
|
docker pull diegosouzapw/omniroute:latest
|
|
@@ -138,45 +104,42 @@ docker run -d \
|
|
|
138
104
|
diegosouzapw/omniroute:latest
|
|
139
105
|
```
|
|
140
106
|
|
|
141
|
-
### 2.4
|
|
107
|
+
### 2.4 सत्यापित करें कि यह चल रहा है
|
|
142
108
|
|
|
143
|
-
|
|
144
|
-
docker ps | grep omniroute
|
|
145
|
-
docker logs omniroute --tail 20
|
|
146
|
-
```
|
|
109
|
+
**OMNI_टोकन_8**
|
|
147
110
|
|
|
148
|
-
|
|
111
|
+
इसे प्रदर्शित करना चाहिए: `[DB] SQLite database ready` और `listening on port 20128`।
|
|
149
112
|
|
|
150
113
|
---
|
|
151
114
|
|
|
152
|
-
## 3.
|
|
115
|
+
## 3. nginx कॉन्फ़िगर करें (रिवर्स प्रॉक्सी)
|
|
153
116
|
|
|
154
|
-
### 3.1
|
|
117
|
+
### 3.1 एसएसएल प्रमाणपत्र उत्पन्न करें (क्लाउडफ्लेयर ओरिजिन)
|
|
155
118
|
|
|
156
|
-
|
|
119
|
+
क्लाउडफ्लेयर डैशबोर्ड में:
|
|
157
120
|
|
|
158
|
-
1.
|
|
159
|
-
2.
|
|
160
|
-
3.
|
|
161
|
-
4.
|
|
121
|
+
1. **एसएसएल/टीएलएस → ओरिजिन सर्वर** पर जाएं
|
|
122
|
+
2. **प्रमाणपत्र बनाएं** पर क्लिक करें
|
|
123
|
+
3. डिफ़ॉल्ट रखें (15 वर्ष, \*.yourdomain.com)
|
|
124
|
+
4. **मूल प्रमाणपत्र** और **निजी कुंजी** की प्रतिलिपि बनाएँ
|
|
162
125
|
|
|
163
126
|
```bash
|
|
164
127
|
mkdir -p /etc/nginx/ssl
|
|
165
128
|
|
|
166
|
-
#
|
|
129
|
+
# Paste the certificate
|
|
167
130
|
nano /etc/nginx/ssl/origin.crt
|
|
168
131
|
|
|
169
|
-
#
|
|
132
|
+
# Paste the private key
|
|
170
133
|
nano /etc/nginx/ssl/origin.key
|
|
171
134
|
|
|
172
135
|
chmod 600 /etc/nginx/ssl/origin.key
|
|
173
136
|
```
|
|
174
137
|
|
|
175
|
-
### 3.2
|
|
138
|
+
### 3.2 नगनेक्स कॉन्फ़िगरेशन
|
|
176
139
|
|
|
177
140
|
```bash
|
|
178
|
-
cat > /etc/nginx/sites-available/omniroute <<
|
|
179
|
-
# Default server —
|
|
141
|
+
cat > /etc/nginx/sites-available/omniroute << ‘NGINX’
|
|
142
|
+
# Default server — blocks direct access via IP
|
|
180
143
|
server {
|
|
181
144
|
listen 80 default_server;
|
|
182
145
|
listen [::]:80 default_server;
|
|
@@ -192,7 +155,7 @@ server {
|
|
|
192
155
|
server {
|
|
193
156
|
listen 443 ssl;
|
|
194
157
|
listen [::]:443 ssl;
|
|
195
|
-
server_name llms.
|
|
158
|
+
server_name llms.yourdomain.com; # Change to your domain
|
|
196
159
|
|
|
197
160
|
ssl_certificate /etc/nginx/ssl/origin.crt;
|
|
198
161
|
ssl_certificate_key /etc/nginx/ssl/origin.key;
|
|
@@ -210,7 +173,7 @@ server {
|
|
|
210
173
|
# WebSocket support
|
|
211
174
|
proxy_http_version 1.1;
|
|
212
175
|
proxy_set_header Upgrade $http_upgrade;
|
|
213
|
-
proxy_set_header Connection
|
|
176
|
+
proxy_set_header Connection “upgrade”;
|
|
214
177
|
|
|
215
178
|
# SSE (Server-Sent Events) — streaming AI responses
|
|
216
179
|
proxy_buffering off;
|
|
@@ -224,180 +187,109 @@ server {
|
|
|
224
187
|
server {
|
|
225
188
|
listen 80;
|
|
226
189
|
listen [::]:80;
|
|
227
|
-
server_name llms.
|
|
190
|
+
server_name llms.yourdomain.com;
|
|
228
191
|
return 301 https://$server_name$request_uri;
|
|
229
192
|
}
|
|
230
193
|
NGINX
|
|
231
194
|
```
|
|
232
195
|
|
|
233
|
-
### 3.3
|
|
196
|
+
### 3.3 सक्षम करें और परीक्षण करें
|
|
234
197
|
|
|
235
|
-
|
|
236
|
-
# Remover config padrão
|
|
237
|
-
rm -f /etc/nginx/sites-enabled/default
|
|
238
|
-
|
|
239
|
-
# Ativar OmniRoute
|
|
240
|
-
ln -sf /etc/nginx/sites-available/omniroute /etc/nginx/sites-enabled/omniroute
|
|
241
|
-
|
|
242
|
-
# Testar e recarregar
|
|
243
|
-
nginx -t && systemctl reload nginx
|
|
244
|
-
```
|
|
198
|
+
**OMNI_टोकन_11**
|
|
245
199
|
|
|
246
200
|
---
|
|
247
201
|
|
|
248
|
-
## 4.
|
|
202
|
+
## 4. क्लाउडफ्लेयर डीएनएस कॉन्फ़िगर करें
|
|
249
203
|
|
|
250
|
-
### 4.1
|
|
204
|
+
### 4.1 डीएनएस रिकॉर्ड जोड़ें
|
|
251
205
|
|
|
252
|
-
|
|
206
|
+
क्लाउडफ़ेयर डैशबोर्ड में → DNS:
|
|
253
207
|
|
|
254
|
-
|
|
|
255
|
-
|
|
|
256
|
-
|
|
|
208
|
+
| प्रकार | नाम | सामग्री | प्रॉक्सी |
|
|
209
|
+
| ------ | ------ | ---------------------- | ----------- |
|
|
210
|
+
| ए | `llms` | `203.0.113.10` (VM IP) | ✅ प्रॉक्सी |
|
|
257
211
|
|
|
258
|
-
### 4.2
|
|
212
|
+
### 4.2 एसएसएल कॉन्फ़िगर करें
|
|
259
213
|
|
|
260
|
-
|
|
214
|
+
**एसएसएल/टीएलएस → अवलोकन** के अंतर्गत:
|
|
261
215
|
|
|
262
|
-
-
|
|
216
|
+
- मोड: **पूर्ण (सख्त)**
|
|
263
217
|
|
|
264
|
-
|
|
218
|
+
**एसएसएल/टीएलएस → एज सर्टिफिकेट** के अंतर्गत:
|
|
265
219
|
|
|
266
|
-
-
|
|
267
|
-
-
|
|
268
|
-
-
|
|
220
|
+
- हमेशा HTTPS का उपयोग करें: ✅ चालू
|
|
221
|
+
- न्यूनतम टीएलएस संस्करण: टीएलएस 1.2
|
|
222
|
+
- स्वचालित HTTPS पुनर्लेखन: ✅ चालू
|
|
269
223
|
|
|
270
|
-
### 4.3
|
|
224
|
+
### 4.3 परीक्षण
|
|
271
225
|
|
|
272
|
-
|
|
273
|
-
curl -sI https://llms.seudominio.com/health
|
|
274
|
-
# Deve retornar HTTP/2 200
|
|
275
|
-
```
|
|
226
|
+
**OMNI_टोकन_12**
|
|
276
227
|
|
|
277
228
|
---
|
|
278
229
|
|
|
279
|
-
## 5.
|
|
280
|
-
|
|
281
|
-
### Atualizar para nova versão
|
|
230
|
+
## 5. संचालन एवं रखरखाव
|
|
282
231
|
|
|
283
|
-
|
|
284
|
-
docker pull diegosouzapw/omniroute:latest
|
|
285
|
-
docker stop omniroute && docker rm omniroute
|
|
286
|
-
docker run -d --name omniroute --restart unless-stopped \
|
|
287
|
-
--env-file /opt/omniroute/.env \
|
|
288
|
-
-p 20128:20128 \
|
|
289
|
-
-v omniroute-data:/app/data \
|
|
290
|
-
diegosouzapw/omniroute:latest
|
|
291
|
-
```
|
|
232
|
+
### नए संस्करण में अपग्रेड करें
|
|
292
233
|
|
|
293
|
-
|
|
234
|
+
**OMNI_टोकन_13**
|
|
294
235
|
|
|
295
|
-
|
|
296
|
-
docker logs -f omniroute # Stream em tempo real
|
|
297
|
-
docker logs omniroute --tail 50 # Últimas 50 linhas
|
|
298
|
-
```
|
|
236
|
+
### लॉग देखें
|
|
299
237
|
|
|
300
|
-
|
|
238
|
+
**OMNI_टोकन_14**
|
|
301
239
|
|
|
302
|
-
|
|
303
|
-
# Copiar dados do volume para o host
|
|
304
|
-
docker cp omniroute:/app/data ./backup-$(date +%F)
|
|
240
|
+
### मैनुअल डेटाबेस बैकअप
|
|
305
241
|
|
|
306
|
-
|
|
307
|
-
docker run --rm -v omniroute-data:/data -v $(pwd):/backup \
|
|
308
|
-
alpine tar czf /backup/omniroute-data-$(date +%F).tar.gz /data
|
|
309
|
-
```
|
|
242
|
+
**OMNI_टोकन_15**
|
|
310
243
|
|
|
311
|
-
###
|
|
244
|
+
### बैकअप से पुनर्स्थापित करें
|
|
312
245
|
|
|
313
|
-
|
|
314
|
-
docker stop omniroute
|
|
315
|
-
docker run --rm -v omniroute-data:/data -v $(pwd):/backup \
|
|
316
|
-
alpine sh -c "rm -rf /data/* && tar xzf /backup/omniroute-data-YYYY-MM-DD.tar.gz -C /"
|
|
317
|
-
docker start omniroute
|
|
318
|
-
```
|
|
246
|
+
**OMNI_टोकन_16**
|
|
319
247
|
|
|
320
248
|
---
|
|
321
249
|
|
|
322
|
-
## 6.
|
|
250
|
+
## 6. उन्नत सुरक्षा
|
|
323
251
|
|
|
324
|
-
###
|
|
252
|
+
### nginx को Cloudflare IP तक सीमित करें
|
|
325
253
|
|
|
326
|
-
|
|
327
|
-
cat > /etc/nginx/cloudflare-ips.conf << 'CF'
|
|
328
|
-
# Cloudflare IPv4 ranges — atualizar periodicamente
|
|
329
|
-
# https://www.cloudflare.com/ips-v4/
|
|
330
|
-
set_real_ip_from 173.245.48.0/20;
|
|
331
|
-
set_real_ip_from 103.21.244.0/22;
|
|
332
|
-
set_real_ip_from 103.22.200.0/22;
|
|
333
|
-
set_real_ip_from 103.31.4.0/22;
|
|
334
|
-
set_real_ip_from 141.101.64.0/18;
|
|
335
|
-
set_real_ip_from 108.162.192.0/18;
|
|
336
|
-
set_real_ip_from 190.93.240.0/20;
|
|
337
|
-
set_real_ip_from 188.114.96.0/20;
|
|
338
|
-
set_real_ip_from 197.234.240.0/22;
|
|
339
|
-
set_real_ip_from 198.41.128.0/17;
|
|
340
|
-
set_real_ip_from 162.158.0.0/15;
|
|
341
|
-
set_real_ip_from 104.16.0.0/13;
|
|
342
|
-
set_real_ip_from 104.24.0.0/14;
|
|
343
|
-
set_real_ip_from 172.64.0.0/13;
|
|
344
|
-
set_real_ip_from 131.0.72.0/22;
|
|
345
|
-
real_ip_header CF-Connecting-IP;
|
|
346
|
-
CF
|
|
347
|
-
```
|
|
254
|
+
**OMNI_टोकन_17**
|
|
348
255
|
|
|
349
|
-
|
|
256
|
+
निम्नलिखित को `http {}` ब्लॉक के अंदर `nginx.conf` में जोड़ें:
|
|
350
257
|
|
|
351
|
-
|
|
352
|
-
include /etc/nginx/cloudflare-ips.conf;
|
|
353
|
-
```
|
|
258
|
+
**OMNI_टोकन_18**
|
|
354
259
|
|
|
355
|
-
###
|
|
260
|
+
### फेल2बैन स्थापित करें
|
|
356
261
|
|
|
357
|
-
|
|
358
|
-
apt install -y fail2ban
|
|
359
|
-
systemctl enable fail2ban
|
|
360
|
-
systemctl start fail2ban
|
|
262
|
+
**OMNI_टोकन_19**
|
|
361
263
|
|
|
362
|
-
|
|
363
|
-
fail2ban-client status sshd
|
|
364
|
-
```
|
|
365
|
-
|
|
366
|
-
### Bloquear acesso direto na porta do Docker
|
|
264
|
+
### डॉकर पोर्ट तक सीधी पहुंच को अवरुद्ध करें
|
|
367
265
|
|
|
368
266
|
```bash
|
|
369
|
-
#
|
|
267
|
+
# Prevent direct external access to port 20128
|
|
370
268
|
iptables -I DOCKER-USER -p tcp --dport 20128 -j DROP
|
|
371
269
|
iptables -I DOCKER-USER -i lo -p tcp --dport 20128 -j ACCEPT
|
|
372
270
|
|
|
373
|
-
#
|
|
271
|
+
# Persist the rules
|
|
374
272
|
apt install -y iptables-persistent
|
|
375
273
|
netfilter-persistent save
|
|
376
274
|
```
|
|
377
275
|
|
|
378
276
|
---
|
|
379
277
|
|
|
380
|
-
## 7.
|
|
278
|
+
## 7. क्लाउडफ्लेयर श्रमिकों की तैनाती (वैकल्पिक)
|
|
381
279
|
|
|
382
|
-
|
|
280
|
+
क्लाउडफ्लेयर वर्कर्स के माध्यम से रिमोट एक्सेस के लिए (वीएम को सीधे उजागर किए बिना):
|
|
383
281
|
|
|
384
|
-
|
|
385
|
-
# No repositório local
|
|
386
|
-
cd omnirouteCloud
|
|
387
|
-
npm install
|
|
388
|
-
npx wrangler login
|
|
389
|
-
npx wrangler deploy
|
|
390
|
-
```
|
|
282
|
+
**OMNI_टोकन_21**
|
|
391
283
|
|
|
392
|
-
|
|
284
|
+
पूरा दस्तावेज़ [omnirouteCloud/README.md](../omnirouteCloud/README.md) पर देखें।
|
|
393
285
|
|
|
394
286
|
---
|
|
395
287
|
|
|
396
|
-
##
|
|
288
|
+
## पोर्ट सारांश
|
|
397
289
|
|
|
398
|
-
|
|
|
399
|
-
|
|
|
400
|
-
| 22
|
|
401
|
-
| 80
|
|
402
|
-
| 443
|
|
403
|
-
| 20128
|
|
290
|
+
| बंदरगाह | सेवा | पहुंच |
|
|
291
|
+
| ------- | ----------- | ----------------------------------- |
|
|
292
|
+
| 22 | एसएसएच | सार्वजनिक (fail2ban के साथ) |
|
|
293
|
+
| 80 | nginx HTTP | रीडायरेक्ट → HTTPS |
|
|
294
|
+
| 443 | nginx HTTPS | क्लाउडफ्लेयर प्रॉक्सी के माध्यम से |
|
|
295
|
+
| 20128 | ओमनीरूट | केवल लोकलहोस्ट (nginx के माध्यम से) |
|