فهرست مقاله
در این آموزش قدم به قدم یاد میگیرید چطور یک سرور مجازی (VPS) تهیه کنید، پنل 3x-ui را روی آن نصب کنید، برایش SSL بگیرید، کانفیگهای VLESS Reality و بقیه پروتکلها را بسازید و برای کاربران با حجم و تاریخ انقضا اکانت تعریف کنید. هیچ پیشنیازی لازم نیست؛ از صفر شروع میکنیم و تا تنظیمات حرفهای جلو میرویم.
فهرست مطالب
- پنل 3x-ui چیست و VPS چیست
- خرید VPS و انتخاب لوکیشن
- اتصال SSH از ویندوز و گوشی
- بهروزرسانی سرور
- نصب 3x-ui
- تنظیم نام کاربری، رمز، پورت و مسیر پنل
- منوی x-ui
- گرفتن SSL با دامنه
- ساخت اینباند (VLESS Reality، VLESS WS، VMess، Trojan، Shadowsocks)
- ساخت کاربر با حجم و تاریخ انقضا
- لینک ساب و QR کد
- برنامههای کلاینت
- بکاپ، ریستور و آپدیت
- رفع مشکلات رایج
- سوالات متداول
۱. پنل 3x-ui چیست و VPS چیست؟
3x-ui یک پنل تحت وب و رایگان برای مدیریت هسته Xray است. با آن میتوانید بدون کار با فایلهای پیچیده، از داخل مرورگر کانفیگ بسازید، کاربر اضافه کنید، حجم و تاریخ انقضا بگذارید و مصرف هر کاربر را ببینید. پروتکلهای VLESS، VMess، Trojan و Shadowsocks را پشتیبانی میکند و پروژه آن متنباز است (مخزن MHSanaei/3x-ui).
VPS یا سرور مجازی خصوصی، یک کامپیوتر همیشه روشن در یک دیتاسنتر است که یک آیپی ثابت دارد و شما از راه دور به آن وصل میشوید. پنل روی همین سرور نصب میشود.
۲. خرید VPS و انتخاب لوکیشن
- سیستمعامل: Ubuntu 22.04 یا 24.04 (این آموزش بر اساس اوبونتو است).
- منابع: برای شروع ۱ هسته CPU، یک گیگابایت رم و ۱۰ تا ۲۰ گیگ دیسک کافی است. برای کاربران زیاد ۲ هسته و ۲ گیگ رم بگیرید.
- ترافیک و پورت: به سقف ترافیک ماهانه و سرعت پورت (مثلا ۱ گیگابیت) دقت کنید.
- لوکیشن: کشورهای نزدیک مثل آلمان، هلند، فنلاند، فرانسه یا ترکیه معمولا پینگ کمتری دارند. اگر امکانش هست قبل از خرید، آیپی تست ارائهدهنده را پینگ کنید.
- اطلاعات ورود: بعد از خرید یک آیپی (در این آموزش 1.2.3.4)، نام کاربری root و یک رمز دریافت میکنید.
۳. اتصال SSH از ویندوز یا گوشی
ویندوز ۱۰ و ۱۱: برنامه PowerShell یا Terminal را باز کنید و بنویسید:
ssh root@1.2.3.4
بار اول سوال yes/no میپرسد؛ بنویسید yes و بعد رمز را وارد کنید (موقع تایپ رمز چیزی نمایش داده نمیشود که طبیعی است). اگر برنامه گرافیکی میخواهید، PuTTY یا MobaXterm هم کار میکنند.
اندروید: برنامه Termius یا JuiceSSH را نصب کنید، یک Host جدید با آدرس 1.2.3.4، پورت 22، کاربر root و رمز بسازید و وصل شوید. آیفون: برنامه Termius را نصب کنید و همان مراحل را انجام دهید.
۴. بهروزرسانی سرور
قبل از نصب، بستههای سرور را بهروز کنید:
apt update && apt upgrade -y
apt install -y curl socat
۵. نصب 3x-ui
دستور نصب رسمی را اجرا کنید:
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
اسکریپت هسته Xray و پنل را دانلود و سرویس x-ui را فعال میکند. در پایان نصب، اطلاعات ورود (نام کاربری، رمز، پورت و مسیر پنل یا WebBasePath) را نشان میدهد. این اطلاعات را جایی امن یادداشت کنید. در نسخههای جدید این مقادیر بهصورت تصادفی ساخته میشوند تا پنل امنتر باشد.
آدرس ورود به پنل چیزی شبیه این است:
http://1.2.3.4:2053/YourBasePath/
۶. تنظیم نام کاربری، رمز، پورت و مسیر پنل
اگر میخواهید این مقادیر را عوض کنید، دستور x-ui را بزنید و از منو گزینههای Reset Username & Password، Change Port و Reset Web Base Path را انتخاب کنید. یا از داخل پنل: Panel Settings ← بخش Authentication برای نام کاربری و رمز (مثلا admin و StrongPass) و بخش General برای Panel Port و Panel URL Root Path. بعد از ذخیره، دکمه Restart Panel را بزنید.
نکات امنیتی:
- رمز ساده نگذارید؛ ترکیب حرف بزرگ، کوچک، عدد و علامت استفاده کنید.
- پورت پیشفرض را به یک عدد دلخواه بین ۱۰۰۰۰ تا ۶۰۰۰۰ تغییر دهید.
- WebBasePath را خالی نگذارید تا پنل با اسکن ساده پیدا نشود.
۷. منوی x-ui
با تایپ دستور x-ui در ترمینال یک منوی عددی باز میشود. مهمترین گزینهها:
| کار | توضیح |
|---|---|
| Install / Update / Uninstall | نصب، بهروزرسانی و حذف پنل |
| Reset Username & Password | تغییر اطلاعات ورود |
| Reset Web Base Path | ساخت مسیر جدید پنل |
| View Current Settings | نمایش پورت، مسیر و آدرس ورود |
| Change Port | تغییر پورت پنل |
| Start / Stop / Restart | کنترل سرویس |
| Check Status / Logs | وضعیت و لاگ |
| SSL Certificate Management | گرفتن و تمدید SSL |
| Update Geo Files | بهروزرسانی فایلهای geoip و geosite |
۸. گرفتن SSL با دامنه
SSL باعث میشود پنل با https باز شود و برای پروتکلهایی مثل Trojan و VLESS WS با TLS لازم است.
قدم اول، رکورد DNS: در پنل مدیریت دامنه (مثلا example.com) یک رکورد A بسازید:
- Name:
panel(یعنی panel.example.com) - Value:
1.2.3.4 - اگر از Cloudflare استفاده میکنید، موقع گرفتن SSL ابر نارنجی (Proxy) را خاموش کنید.
چند دقیقه صبر کنید و با ping panel.example.com مطمئن شوید آیپی درست برمیگردد.
قدم دوم، گرفتن گواهی با acme داخلی: دستور x-ui را بزنید، گزینه SSL Certificate Management و بعد Get SSL را انتخاب کنید و دامنه panel.example.com را وارد کنید. اسکریپت از پورت 80 برای تایید استفاده میکند، پس پورت 80 باید آزاد باشد. گواهیها معمولا در مسیر زیر ذخیره میشوند:
/root/cert/panel.example.com/fullchain.pem
/root/cert/panel.example.com/privkey.pem
قدم سوم: در Panel Settings مسیر Public Key و Private Key را وارد کنید، ذخیره و ریاستارت کنید. حالا پنل با https://panel.example.com:2053/YourBasePath/ باز میشود. تمدید گواهی خودکار انجام میشود.
۹. ساخت اینباند
در منوی Inbounds روی Add Inbound بزنید. هر اینباند یعنی یک پورت و یک پروتکل.
VLESS Reality (پیشنهاد اول، بدون نیاز به دامنه)
- Protocol: vless، Port: 443
- Transmission: TCP
- Security: Reality
- uTLS: chrome
- Dest و SNI: یک سایت معتبر خارجی که TLS 1.3 دارد (مثلا www.example.com به همراه :443)
- روی Get New Cert بزنید تا کلیدهای عمومی و خصوصی ساخته شوند و Short IDs پر شود.
- در بخش کلاینت، Flow را روی
xtls-rprx-visionبگذارید.
VLESS WS
- Protocol: vless، Transmission: WebSocket
- Path: مثلا
/ws - Security: TLS با گواهی دامنه (یا none اگر پشت CDN با TLS است).
VMess
- Protocol: vmess، Transmission: TCP یا WebSocket
- برای امنیت بیشتر همراه با TLS استفاده کنید.
Trojan
- Protocol: trojan، Transmission: TCP
- Security: TLS با گواهی دامنه panel.example.com (Trojan بدون TLS معنا ندارد).
Shadowsocks
- Protocol: shadowsocks
- Method:
2022-blake3-aes-256-gcmیاchacha20-ietf-poly1305 - پورت دلخواه، بدون نیاز به دامنه.
نکته فایروال: فایروال سرور (مثل ufw) را فعال نکنید؛ اگر روشن باشد ممکن است پورت پنل و اینباندها بسته شوند و دسترسیتان قطع شود. بهتر است فایروال سرور خاموش بماند و اگر محدودیت لازم دارید از فایروال پنل ارائهدهنده سرور (Cloud Firewall) استفاده کنید و پورتهای پنل، 80، 443 و اینباندها را باز بگذارید.
۱۰. ساخت کاربر با حجم و تاریخ انقضا
داخل هر اینباند روی آیکن + کنار آن (Add Client) بزنید:
- Email: یک نام یکتا برای کاربر، مثلا ali.
- Total Flow (GB): سقف حجم، مثلا 50. صفر یعنی نامحدود.
- Expiry Time: تاریخ انقضا، یا گزینه شروع از اولین اتصال (Start After First Use) با تعداد روز مثلا 30.
- Limit IP: حداکثر تعداد دستگاه همزمان (برای کارکرد درست باید لاگها فعال باشد).
- Flow: برای Reality روی xtls-rprx-vision.
با Add Bulk میتوانید یکجا دهها کاربر بسازید. مصرف، تمدید و ریست حجم هر کاربر از همین بخش قابل مدیریت است.
۱۱. لینک ساب و QR کد
- روی آیکن QR کنار هر کاربر بزنید تا لینک کانفیگ و کد QR نمایش داده شود.
- برای لینک ساب (Subscription)، در Panel Settings بخش Subscription را فعال کنید، پورت (مثلا 2096) و مسیر (مثلا
/sub/) بدهید. حالا هر کاربر یک لینک مثلhttps://panel.example.com:2096/sub/ali-idدارد. - مزیت لینک ساب: اگر اینباند را عوض کنید، کاربر فقط در برنامه Update میزند و کانفیگ جدید را میگیرد. حجم باقیمانده و تاریخ انقضا هم در برنامه نمایش داده میشود.
۱۲. برنامههای کلاینت
| سیستم | برنامه |
|---|---|
| اندروید | v2rayNG، Hiddify |
| آیفون و آیپد | Streisand، V2Box |
| ویندوز | v2rayN، Hiddify |
| مک | V2Box، Hiddify |
روش کلی: لینک را کپی کنید، در برنامه گزینه Import from Clipboard یا اسکن QR را بزنید، کانفیگ را انتخاب و وصل شوید. برای لینک ساب، گزینه Subscription یا Add Profile را بزنید و بعد Update کنید.
۱۳. بکاپ، ریستور و آپدیت
تمام اطلاعات پنل (کاربران، اینباندها و تنظیمات) در یک فایل است:
/etc/x-ui/x-ui.db
بکاپ دستی:
cp /etc/x-ui/x-ui.db /root/x-ui-backup-$(date +%F).db
و از ویندوز برای دانلود:
scp root@1.2.3.4:/etc/x-ui/x-ui.db .
از داخل پنل هم در بخش Overview گزینه Backup & Restore هست و میتوانید فایل را دانلود کنید یا بکاپ خودکار به ربات تلگرام را در تنظیمات فعال کنید.
ریستور: روی سرور جدید پنل را نصب کنید، سپس:
x-ui stop
cp x-ui.db /etc/x-ui/x-ui.db
x-ui start
آپدیت: دستور x-ui و گزینه Update را بزنید. قبل از آپدیت همیشه بکاپ بگیرید.
۱۴. رفع مشکلات رایج
- پنل باز نمیشود: با
x-ui statusوضعیت را ببینید و باx-ui settingsپورت و مسیر را چک کنید. اگر فایروال روشن است، خاموشش کنید یا پورت را در فایروال ارائهدهنده باز کنید. - SSL گرفته نمیشود: رکورد A درست نیست، پروکسی Cloudflare روشن است یا پورت 80 توسط برنامه دیگری اشغال شده است.
- کانفیگ وصل میشود ولی اینترنت ندارد: ساعت سرور و گوشی را چک کنید؛ اختلاف زمان باعث قطعی میشود (
timedatectl). - Reality وصل نمیشود: Dest و SNI را یک سایت دیگر با TLS 1.3 بگذارید و Flow کاربر را بررسی کنید.
- کاربر قطع شده: حجم یا تاریخ انقضایش تمام شده؛ از بخش کاربر تمدید یا ریست کنید.
- لاگها: با
x-ui logخطاها را ببینید.
۱۵. سوالات متداول
آیا 3x-ui رایگان است؟ بله، پنل متنباز و رایگان است و فقط هزینه سرور را میپردازید.
بدون دامنه هم میشود؟ بله. VLESS Reality و Shadowsocks بدون دامنه کار میکنند. برای Trojan، VLESS WS با TLS و https پنل به دامنه نیاز دارید.
بهترین پروتکل کدام است؟ در حال حاضر VLESS Reality با Flow ویژن معمولا پایدارترین گزینه است.
چند کاربر روی یک سرور جا میشود؟ بستگی به منابع و ترافیک دارد؛ یک سرور ۲ گیگ رم به راحتی صدها کاربر عادی را مدیریت میکند.
اگر رمز پنل را فراموش کنم؟
با SSH وارد شوید، x-ui را بزنید و گزینه Reset Username & Password را انتخاب کنید.
چرا فایروال را روشن نکنیم؟ روشن کردن فایروال سرور بدون باز کردن دقیق پورتها میتواند دسترسی شما به SSH و پنل را قطع کند. فایروال ارائهدهنده امنتر و قابل برگشت است.
این آموزش توسط نوید حق بیان برای Sir GSM (sirgsm.ir) تهیه شده است. برای آموزشهای بیشتر به سایت Sir GSM سر بزنید.
