تنظیمات Core
از آن جایی که پنل مرزبان بر پایه هسته Xray هست، در این داکیومنت سعی میکنیم موارد کاربردی Xray را که میتوانید در قسمت Core Settings پنل مورد استفاده قرار بدید را توضیح بدیم تا با بخشهای کاربردی آن آشنایی داشته باشید.
DNS
- برای تعیین
DNSدر قسمتCore Settingsمرزبان کافیه قسمت زیر را در ابتدای آن قرار دهید.
{
"log": {
"loglevel": "info"
},
"dns": {
"servers": [
"1.1.1.1"
],
"queryStrategy": "UseIPv4"
},
"inbounds": [- در نمونه بالا ما از
DNSکلودفلر استفاده کردیم، انواعDNSهای مختلف و کاربرد آنها به شرح زیر است.
انواع DNS | سرویس دهنده | کاربرد |
|---|---|---|
1.1.1.1 | Cloudflare | سرعت، حریم خصوصی، و امنیت |
1.1.1.3 | Cloudflare | مسدود کردن محتوای بزرگسالان و مناسب برای استفاده خانوادگی |
1.1.1.2 | Cloudflare | مسدود کردن بدافزارها |
1.0.0.2 | Cloudflare | مسدود کردن بدافزارها و محتوای بزرگسالان |
8.8.8.8 | Google | قابل اطمینان به علت خدمات جهانی گسترده گوگل |
8.8.4.4 | Google | پشتیبان DNS اول گوگل |
9.9.9.9 | Quad9 | متمرکز بر امنیت و مسدود کردن دسترسی به دامنههای مخرب |
208.67.222.222 | OpenDNS | حفاظت در برابر فیشینگ، و تنظیمات قابل شخصیسازی |
208.67.222.123 | OpenDNS | مسدود کردن محتوای بزرگسالان و مناسب برای استفاده خانوادگی |
Inbounds
بخش Inbounds در هسته Xray مشخص میکند که سرویس پروکسی چگونه اتصالات ورودی را دریافت کند. هر Inbound یک شنونده (listener) را تعریف میکند که اتصالات را روی پورت مشخصی دریافت کرده و پروتکلها یا قوانین خاصی را برای مدیریت آنها به کار میبرد.
اینباندهایی که در Core Settings قرار میدهیم پروکسیهای مارو در پنل مرزبان تعیین میکنند و کانکشنهای ورودی ما مربوط به همین بخش است که لیست اینباندهای کاربردی در این داکیومنت اینباندهای Xray قرار داده شدهاند.
- در ادامه بخشهای مختلف یک اینباند را با هم بررسی میکنیم.
VLESS TCP REALITY
{
"tag": "VLESS TCP REALITY",
"listen": "0.0.0.0",
"port": 443,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"tcpSettings": {},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "google.com:443",
"xver": 0,
"serverNames": [
"example.com",
""
],
"privateKey": "oNDJxLaAiXojgAcdW5gzwuQB_gMYL0DXfRnqswUKvTE",
"publicKey": "oVRY8h7Njgw25j3CNhaJVMUys378tTvecrSRbrB3gyo"
"shortIds": [
"2ebd6e17dec6a5d9"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls",
"quic"
]
}
}tag
"tag": "VLESS TCP REALITY"برچسب (Tag) برای شناسایی این اینباند خاص استفاده میشود. این برچسب به شما کمک میکند تا در پیکربندیهای پیچیده و در مواقعی که چندین اینباند مختلف دارید، راحتتر آنها را شناسایی کنید.
listen
"listen": "0.0.0.0"آدرس IP که Xray-Core باید به آن گوش دهد. 0.0.0.0 به معنای این است که Xray-Core به تمامی آدرسهای IP موجود بر روی سرور گوش میدهد.
port
"port": 443پورت شبکهای که Xray-Core باید بر روی آن گوش دهد. پورت 443 به طور معمول برای ترافیک HTTPS استفاده میشود و در اینجا به عنوان ورودی برای پروتکل VLESS تنظیم شده است.
protocol
"protocol": "vless"پروتکل مورد استفاده برای اینباند در اینجا، پروتکل vless است که یکی از پروتکلهای مدرن و امن برای انتقال دادهها است.
settings
"settings": {
"clients": [],
"decryption": "none"
}این بخش تنظیمات خاص پروتکل vless هست.
قسمت
clientsلیستی از کاربران مجاز برای اتصالقسمت
decryptionروش رمزگشایی
streamSettings
"streamSettings": {
"network": "tcp",
"tcpSettings": {},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "google.com:443",
"xver": 0,
"serverNames": [
"example.com",
""
],
"privateKey": "oNDJxLaAiXojgAcdW5gzwuQB_gMYL0DXfRnqswUKvTE",
"publicKey": "oVRY8h7Njgw25j3CNhaJVMUys378tTvecrSRbrB3gyo",
"shortIds": [
"2ebd6e17dec6a5d9"
]
}
}تنظیمات مربوط به استریم و پروتکلهای شبکه
بخش
networkنوع شبکهای که برای انتقال دادهها استفاده میشود. در اینجاtcpانتخاب شده است.بخش
tcpSettingsتنظیمات خاصTCPدر اینجا خالی است که به معنای استفاده از تنظیمات پیشفرض است.بخش
securityنوع امنیتی که برای این اتصال استفاده میشود کهRealityبه معنای استفاده از تکنولوژیRealityبرای افزایش امنیت است.بخش
realitySettingsتنظیمات خاص برای تکنولوژیRealityاست.بخش
showمشخص میکند که آیا اطلاعات مربوط به این اتصال باید نمایش داده شود یا خیرfalseبه معنای عدم نمایش است.بخش
destمقصد نهایی که برای شبیهسازی یا پنهانسازی استفاده میشود که در اینجاgoogle.com:443تنظیم شده است.بخش
xverنسخه پروتکل که 0 به معنای نسخه ابتدایی است.بخش
serverNamesلیستی از نامهای سرور که باید دامنه مورد نطرتون قرار داده شودبخش
privateKeyکلید خصوصی برای رمزنگاری و تأمین امنیت که یک کلید طولانی و تصادفی است.بخش
publicKeyکلید عمومی برای رمزنگاری اطلاعات استفاده میشود که این کلید به صورت عمومی در دسترس است و میتواند برای رمزنگاری دادهها استفاده شود.بخش
shortIdsشناسههای کوتاه برای شناسایی منحصر به فرد که شامل یک شناسه تصادفی است.در خصوص بخش
publickeyدر نظر داشته باشین که بودن آن در اینباند لازم نیست و فقط با گذاشتنprivatekeyمرزبان خودشpublickeyرا در پروکسی شما ایجاد خواهد کرد و صرفا برای توضیح بخشهای مختلف این اینباند آن را قرار دادیم.
sniffing
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls",
"quic"
]
}تنظیمات مربوط به شناسایی ترافیک (sniffing)
بخش
enabledفعال یا غیرفعال بودن شناسایی ترافیکtrueبه معنای فعال بودن است.بخش
destOverrideپروتکلهایی که در شناسایی ترافیک نادیده گرفته میشوند شاملhttp،tls،quic.در بخش
destOverrideنادیده گرفتن پروتکلها به این معناست کهXray-Coreبه جای تحلیل عمیق و شبیهسازی ترافیک این پروتکلها، مستقیماً آنها را پردازش میکند. این عمل میتواند به بهبود کارایی و سادگی در مدیریت ترافیک کمک کند و در عین حال نیاز به پردازش پیچیدهتر برای برخی پروتکلها را کاهش دهد تا منبع سیستم کمتر مصرف شود.
Outbounds
بخشهای Outbounds و Routing بهطور نزدیک به هم متصل هستند تا نحوه مدیریت و هدایت ترافیک را تعریف کنند. بخش Routing با استفاده از Rules یا همان قوانین، تعیین میکند که انواع مختلف ترافیک چگونه باید مدیریت شود، در حالی که بخش Outbounds مقصدها یا پروکسیهای واقعی که ترافیک به آنها هدایت میشود را مشخص میکند.
این رویکرد یکپارچه به شما امکان مدیریت ترافیک بهصورت انعطافپذیر و پویا را میدهد و کنترل دقیق بر نحوه و محل هدایت ترافیک را فراهم میآورد. بخش Outbounds مقاصد یا پروکسیهای موجود را تعریف میکند که شامل جزئیات پروتکل و پیکربندی آنها است، هر Outbound با یک برچسب منحصر به فرد شناسایی میشود.
freedom
پروتکل freedom یا همان پروتکل آزادی برای دور زدن سانسور یا محدودیتهای مسیریابی در محیطهای شبکه خاص طراحی شده است، ابزار مفیدی در Xray-core است که با اجازه دادن به جریان آزاد ترافیک بدون مداخله لایههای میانی شبکه به اطمینان از دسترسی بدون محدودیت به اینترنت کمک میکند.
{
"protocol": "freedom",
"settings": {},
"tag": "DIRECT"
},blackhole
پروتکل blackhole در واقع بهعنوان یک "سیاهچاله" برای پکتها عمل میکند که بهطور مؤثر ترافیک را بدون پردازش یا پاسخ حذف میکند، که میتوانید برای مقاصد خاص از آن استفاده کنید.
{
"protocol": "blackhole",
"settings": {},
"tag": "BLOCK"
},IPv4
به عنوان مثال با قرار دادن Outbound زیر میتوانید استفاده از IPv4 را در اولیت قرار بدین تا از ارور 403 در پلتفرمهای مختلف جلوگیری کنید. احتمالا پروتکل freedom از قبل در اوتباند شما قرار دارد، در این صورت فقط قسمت settings را به آن اضافه کنید.
"outbounds": [
{
"protocol": "freedom",
"settings": {
"domainStrategy": "ForceIPv4"
},
"tag": "direct"
},Routing & Rules
همان طور که قبلا گفته شد، در هسته Xray، بخش Routing یا همان مسیریابی و قوانین شامل تنظیمات مختلفی است که تعیین میکند چگونه ترافیک ورودی باید مدیریت شود و به کدام مقصد ارسال شود.
- اگر به نمونه زیر دقت کنید، با استفاده از
Routingدامنههای دلخواه را به اوتباند با تگBLOCKفرستادیم که این اوتباند پروتکلblackholeداره و در نهایت درخواستها به این سایتها به مقصد نخواهند رسید.
{
"domain": [
"www.speedtest.net",
"fast.com"
],
"outboundTag": "BLOCK",
"type": "field"
},