README.fa_IR.md 16 KB

English | فارسی | 中文 | Español | Русский

3x-ui

یک پنل وب پیشرفته • ساخته شده بر پایه Xray Core

GO Version Downloads License

سلب مسئولیت: این پروژه صرفاً برای اهداف آموزشی و تحقیقاتی است. استفاده از آن برای مقاصد غیرقانونی یا در محیط‌های عملیاتی ممنوع است.

اگر این پروژه برای شما مفید بوده، می‌توانید با دادن یک:star2: از آن حمایت کنید.

Image

  • USDT (TRC20): TXncxkvhkDWGts487Pjqq1qT9JmwRUz8CC
  • MATIC (polygon): 0x41C9548675D044c6Bfb425786C765bc37427256A
  • LTC (Litecoin): ltc1q2ach7x6d2zq0n4l0t4zl7d7xe2s6fs7a3vspwv

نصب و ارتقا

bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

نصب نسخه‌های قدیمی (توصیه نمی‌شود)

برای نصب نسخه خاصی از دستور زیر استفاده کنید. مثال برای نسخه v1.7.9:

VERSION=v1.7.9 && bash <(curl -Ls "https://raw.githubusercontent.com/mhsanaei/3x-ui/$VERSION/install.sh") $VERSION

گواهی SSL

جزئیات گواهی SSL ### ACME برای مدیریت گواهی‌های SSL با استفاده از ACME: 1. اطمینان حاصل کنید دامنه شما به درستی به سرور متصل است. 2. دستور `x-ui` را در ترمینال اجرا کرده و گزینه `مدیریت گواهی SSL` را انتخاب کنید. 3. گزینه‌های زیر نمایش داده می‌شوند: - **دریافت SSL:** دریافت گواهی SSL - **لغو:** لغو گواهی‌های موجود - **تمدید اجباری:** تمدید اجباری گواهی‌ها - **نمایش دامنه‌های موجود:** نمایش تمام دامنه‌های دارای گواهی - **تنظیم مسیر گواهی برای پنل:** تنظیم مسیر گواهی برای دامنه شما ### Certbot نصب و استفاده از Certbot: ```sh apt-get install certbot -y certbot certonly --standalone --agree-tos --register-unsafely-without-email -d yourdomain.com certbot renew --dry-run ``` ### Cloudflare اسکریپت داخلی برای دریافت گواهی SSL از Cloudflare. نیازمند: - ایمیل ثبت‌شده در Cloudflare - کلید API جهانی Cloudflare - دامنه باید از طریق Cloudflare به سرور متصل باشد **دریافت کلید API جهانی Cloudflare:** 1. دستور `x-ui` را اجرا و گزینه `گواهی SSL کلادفلر` را انتخاب کنید. 2. به لینک [Cloudflare API Tokens](https://dash.cloudflare.com/profile/api-tokens) مراجعه کنید. 3. روی "View Global API Key" کلیک کنید: ![](media/APIKey1.PNG) 4. پس از احراز هویت، کلید API نمایش داده می‌شود: ![](media/APIKey2.png) در هنگام استفاده، نام دامنه، ایمیل و کلید API را وارد کنید: ![](media/DetailEnter.png)

نصب دستی و ارتقا

جزئیات نصب دستی #### استفاده 1. دریافت آخرین نسخه از سرور: ```sh ARCH=$(uname -m) case "${ARCH}" in x86_64 | x64 | amd64) XUI_ARCH="amd64" ;; i*86 | x86) XUI_ARCH="386" ;; armv8* | armv8 | arm64 | aarch64) XUI_ARCH="arm64" ;; armv7* | armv7) XUI_ARCH="armv7" ;; armv6* | armv6) XUI_ARCH="armv6" ;; armv5* | armv5) XUI_ARCH="armv5" ;; s390x) echo 's390x' ;; *) XUI_ARCH="amd64" ;; esac wget https://github.com/MHSanaei/3x-ui/releases/latest/download/x-ui-linux-${XUI_ARCH}.tar.gz ``` 2. نصب یا ارتقا: ```sh ARCH=$(uname -m) case "${ARCH}" in x86_64 | x64 | amd64) XUI_ARCH="amd64" ;; i*86 | x86) XUI_ARCH="386" ;; armv8* | armv8 | arm64 | aarch64) XUI_ARCH="arm64" ;; armv7* | armv7) XUI_ARCH="armv7" ;; armv6* | armv6) XUI_ARCH="armv6" ;; armv5* | armv5) XUI_ARCH="armv5" ;; s390x) echo 's390x' ;; *) XUI_ARCH="amd64" ;; esac cd /root/ rm -rf x-ui/ /usr/local/x-ui/ /usr/bin/x-ui tar zxvf x-ui-linux-${XUI_ARCH}.tar.gz chmod +x x-ui/x-ui x-ui/bin/xray-linux-* x-ui/x-ui.sh cp x-ui/x-ui.sh /usr/bin/x-ui cp -f x-ui/x-ui.service /etc/systemd/system/ mv x-ui/ /usr/local/ systemctl daemon-reload systemctl enable x-ui systemctl restart x-ui ```

نصب با Docker

جزئیات Docker #### استفاده 1. **نصب Docker:** ```sh bash <(curl -sSL https://get.docker.com) ``` 2. **کلون پروژه:** ```sh git clone https://github.com/MHSanaei/3x-ui.git cd 3x-ui ``` 3. **راه‌اندازی سرویس:** ```sh docker compose up -d ``` یا ```sh docker run -itd \ -e XRAY_VMESS_AEAD_FORCED=false \ -v $PWD/db/:/etc/x-ui/ \ -v $PWD/cert/:/root/cert/ \ --network=host \ --restart=unless-stopped \ --name 3x-ui \ ghcr.io/mhsanaei/3x-ui:latest ``` 4. **به‌روزرسانی:** ```sh cd 3x-ui docker compose down docker compose pull 3x-ui docker compose up -d ``` 5. **حذف:** ```sh docker stop 3x-ui docker rm 3x-ui cd -- rm -r 3x-ui ```

تنظیمات Nginx

پیکربندی Reverse Proxy #### Nginx Reverse Proxy ```nginx location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Range $http_range; proxy_set_header If-Range $http_if_range; proxy_redirect off; proxy_pass http://127.0.0.1:2053; } ``` #### مسیر فرعی در Nginx - اطمینان حاصل کنید "URI Path" در تنظیمات پنل یکسان باشد. - `url` در تنظیمات پنل باید با `/` پایان یابد. ```nginx location /sub { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Range $http_range; proxy_set_header If-Range $http_if_range; proxy_redirect off; proxy_pass http://127.0.0.1:2053; } ```

سیستم‌عامل‌های توصیه شده

  • Ubuntu 20.04+
  • Debian 11+
  • CentOS 8+
  • OpenEuler 22.03+
  • Fedora 36+
  • Arch Linux
  • Parch Linux
  • Manjaro
  • Armbian
  • AlmaLinux 8.0+
  • Rocky Linux 8+
  • Oracle Linux 8+
  • OpenSUSE Tubleweed
  • Amazon Linux 2023
  • Windows x64

معماری‌ها و دستگاه‌های پشتیبانی شده

جزئیات معماری‌ها و دستگاه‌ها - **amd64**: معماری استاندارد برای کامپیوترهای شخصی و سرورها - **x86 / i386**: سیستم‌های دسکتاپ و لپ‌تاپ - **armv8 / arm64 / aarch64**: دستگاه‌های موبایل و embedded مانند Raspberry Pi 4 - **armv7 / arm / arm32**: دستگاه‌های قدیمی مانند Orange Pi Zero - **armv6 / arm / arm32**: دستگاه‌های بسیار قدیمی مانند Raspberry Pi 1 - **armv5 / arm / arm32**: سیستم‌های embedded قدیمی - **s390x**: کامپیوترهای IBM mainframe

زبان‌های پشتیبانی شده

  • انگلیسی
  • فارسی
  • چینی سنتی
  • چینی ساده‌شده
  • ژاپنی
  • روسی
  • ویتنامی
  • اسپانیایی
  • اندونزیایی
  • اوکراینی
  • ترکی
  • پرتغالی (برزیل)

ویژگی‌ها

  • مانیتورینگ وضعیت سیستم
  • جستجو در بین inboundها و کلاینت‌ها
  • تم تاریک/روشن
  • پشتیبانی از چند کاربر و پروتکل
  • پروتکل‌های VMESS، VLESS، Trojan، Shadowsocks، Dokodemo-door، Socks، HTTP، WireGuard
  • پشتیبانی از XTLS شامل RPRX-Direct، Vision، REALITY
  • آمار ترافیک، محدودیت ترافیک، محدودیت زمانی
  • تنظیمات سفارشی Xray
  • پشتیبانی از HTTPS برای پنل
  • دریافت خودکار گواهی SSL
  • مسیرهای API اصلاح شده
  • پشتیبانی از تغییر تنظیمات از طریق پنل
  • امکان export/import دیتابیس

تنظیمات پیش‌فرض پنل

جزئیات تنظیمات پیش‌فرض ### نام کاربری، رمز عبور، پورت و مسیر وب در صورت عدم تغییر، این موارد به صورت تصادفی ایجاد می‌شوند (به جز Docker). **تنظیمات پیش‌فرض Docker:** - **نام کاربری:** admin - **رمز عبور:** admin - **پورت:** 2053 ### مدیریت دیتابیس: امکان Backup و Restore دیتابیس از طریق پنل. - **مسیر دیتابیس:** - `/etc/x-ui/x-ui.db` ### مسیر پایه وب 1. **بازنشانی مسیر:** - اجرای دستور `x-ui` - انتخاب گزینه `Reset Web Base Path` 2. **ساخت یا تنظیم مسیر:** - مسیر به صورت تصادفی ساخته شده یا قابل تنظیم است 3. **مشاهده تنظیمات فعلی:** - استفاده از دستور `x-ui settings` یا `View Current Settings` در `x-ui` **توصیه امنیتی:** - استفاده از مسیرهای طولانی و تصادفی برای افزایش امنیت **مثال:** - `http://ip:port/*webbasepath*/panel` - `http://domain:port/*webbasepath*/panel`

پیکربندی WARP

جزئیات WARP #### استفاده **برای نسخه‌های `v2.1.0` و جدیدتر:** WARP به صورت داخلی پشتیبانی می‌شود. تنها نیاز به فعال‌سازی در پنل است.

محدودیت IP

جزئیات محدودیت IP #### استفاده **توجه:** محدودیت IP در صورت استفاده از IP Tunnel کار نمی‌کند. - **تا نسخه `v1.6.1`:** - محدودیت IP به صورت داخلی در پنل وجود دارد **برای نسخه‌های `v1.7.0` و جدیدتر:** برای فعال‌سازی نیاز به نصب `fail2ban` است: 1. اجرای دستور `x-ui` و انتخاب `مدیریت محدودیت IP` 2. گزینه‌های موجود: - **تغییر مدت زمان Ban** - **حذف تمام Banها** - **مشاهده لاگ‌ها** - **وضعیت Fail2ban** - **راه‌اندازی مجدد Fail2ban** - **حذف Fail2ban** 3. تنظیم مسیر `Access log` در پنل به `./access.log` و ذخیره و راه‌اندازی مجدد Xray - **قبل از نسخه `v2.1.3`:** - تنظیم دستی `access.log` در تنظیمات Xray: ```sh "log": { "access": "./access.log", "dnsLog": false, "loglevel": "warning" }, ``` - **از نسخه `v2.1.3`:** - امکان تنظیم `access.log` از طریق پنل

ربات تلگرام

جزئیات ربات تلگرام #### استفاده ربات تلگرام برای اطلاع‌رسانی ترافیک، ورود به پنل، Backup دیتابیس و ... استفاده می‌شود. نیازمند تنظیم: - توکن تلگرام - Chat ID ادمین‌ها - زمان اطلاع‌رسانی (Cron syntax) - اطلاع‌رسانی انقضا - اطلاع‌رسانی ترافیک - Backup دیتابیس - اطلاع‌رسانی مصرف CPU **سینتکس نمونه:** - `30 \* \* \* \* \*` - اطلاع در ثانیه 30 هر دقیقه - `@hourly` - هر ساعت - `@daily` - هر روز ### ویژگی‌های ربات - گزارش دوره‌ای - اطلاع ورود به پنل - اطلاع مصرف CPU - اطلاع پیش‌از موعد انقضا و ترافیک - گزارش ترافیک کلاینت‌ها - منوی مبتنی بر دستور - جستجوی کلاینت بر اساس ایمیل - بررسی inboundها - بررسی وضعیت سرور - دریافت Backup - چندزبانه ### راه‌اندازی ربات - شروع [Botfather](https://t.me/BotFather) در تلگرام: ![Botfather](./media/botfather.png) - ساخت ربات جدید با دستور /newbot: ![Create new bot](./media/newbot.png) - شروع ربات ساخته شده: ![token](./media/token.png) - تنظیمات پنل: ![Panel Config](./media/panel-bot-config.png) وارد کردن توکن و Chat ID (دریافت از [این ربات](https://t.me/useridinfobot)): ![User ID](./media/user-id.png)

مسیرهای API

جزئیات API #### استفاده - [مستندات API](https://www.postman.com/hsanaei/3x-ui/collection/q1l5l0u/3x-ui) - `/login` با `POST` داده کاربر: `{username: '', password: ''}` | Method | مسیر | عملکرد | | :----: | ---------------------------------- | ------------------------------------------- | | `GET` | `"/list"` | دریافت تمام inboundها | | `GET` | `"/get/:id"` | دریافت inbound بر اساس id | | `POST` | `"/add"` | افزودن inbound | | `POST` | `"/del/:id"` | حذف inbound | - [Run In Postman](https://app.getpostman.com/run-collection/5146551-dda3cab3-0e33-485f-96f9-d4262f437a?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D5146551-dda3cab3-0e33-485f-96f9-d4262f437a%26entityType%3Dcollection%26workspaceId%3Dd64f609f-485a-4951-9b8f-876b3f9171)

متغیرهای محیطی

جزئیات متغیرها #### استفاده | متغیر | نوع | پیش‌فرض | | ------------- | :--------------------------------------------: | :------------ | | XUI_LOG_LEVEL | `"debug"` \| `"info"` \| `"warn"` \| `"error"` | `"info"` | | XUI_DEBUG | `boolean` | `false` | | XUI_BIN_FOLDER| `string` | `"bin"` | مثال: ```sh XUI_BIN_FOLDER="bin" XUI_DB_FOLDER="/etc/x-ui" go build main.go ```

پیش‌نمایش

3x-ui 3x-ui

قدردانی ویژه از

تشکر و قدردانی

Stargazers over Time

Stargazers over time