mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-09-18 20:32:30 +03:00
Fold the standalone 3x-ui-docs project (Next.js 16 + Fumadocs, deployed to docs.sanaei.dev) into docs/ so the panel and its documentation share a single source of truth, the way sing-box keeps its docs in-tree. The old repo becomes redundant and can be retired. - Import the full site under docs/ (app, components, content, lib, public, scripts, config). The self-contained pnpm project sits alongside the existing engineering notes with no filename collisions. - Re-point "Edit on GitHub" links from MHSanaei/3x-ui-docs to this repo's docs/content/docs path (docs/lib/shared.ts, docs/app/.../page.tsx). - Add docs-ci.yml and docs-deploy.yml under .github/workflows/, scoped to docs/** and run with working-directory: docs, since GitHub only runs workflows from the repo-root .github/. deploy-static.yml's GitHub Pages publish (CNAME docs.sanaei.dev) carries over unchanged. Follow-up (outside this commit): attach the docs.sanaei.dev custom domain to this repository's Pages (or set the Vercel project's root directory to docs), confirm the site is live from the monorepo, then delete MHSanaei/3x-ui-docs.
54 lines
4.3 KiB
Plaintext
54 lines
4.3 KiB
Plaintext
---
|
||
title: امنیت
|
||
description: سختسازی 3x-ui — احراز هویت پنل و 2FA، محدودیت IP با Fail2ban، قوانین فایروال، BBR و بهروز ماندن.
|
||
icon: ShieldCheck
|
||
---
|
||
|
||
یک پنل پروکسی هدفی پرارزش است. چند لایه سختسازی تأثیر زیادی دارد.
|
||
|
||
## سختسازی پنل
|
||
|
||
- اعتبارنامههای قوی و یکتا و **احراز هویت دومرحلهای** (TOTP).
|
||
- یک پورت غیرپیشفرض برای پنل و یک مسیر پایه وب طولانی و تصادفی.
|
||
- TLS روی پنل (مستقیماً یا از طریق یک [پروکسی معکوس](/docs/operations/reverse-proxy)).
|
||
- **محدودکننده ورود** داخلی، یک IP/نام کاربری را پس از ۵ تلاش ناموفق در بازه ۵ دقیقه (به مدت ۱۵ دقیقه) مسدود میکند، و پنل میتواند ترافیک خروجی خود را از طریق یک outbound مسیریابی کند.
|
||
|
||
برای فهرست کامل به [نخستین ورود](/docs/guide/first-login) مراجعه کنید.
|
||
|
||
## Fail2ban و محدودیتهای IP
|
||
|
||
برای هر کلاینت یک **محدودیت IP** تنظیم کنید (به [کلاینتها](/docs/config/clients) مراجعه کنید) تا تعداد IPهای مبدأ همزمان محدود شود. اعمال این محدودیت توسط **Fail2ban** انجام میشود که 3x-ui آن را برای شما نصب و پیکربندی میکند (در نصبهای اسکریپتی بهطور پیشفرض فعال است و در Docker از طریق `XUI_ENABLE_FAIL2BAN=true`).
|
||
|
||
آن را از منوی `x-ui` مدیریت کنید (**۲۲ — IP Limit Management**): نصب/پیکربندی، تغییر مدت مسدودسازی (پیشفرض **۳۰ دقیقه**)، مسدودسازی/رفع مسدودی یک IP، مشاهده لاگهای مسدودسازی و بررسی وضعیت. در پشت صحنه:
|
||
|
||
- این jail با نام **`3x-ipl`** شناخته میشود؛ لاگهای مسدودسازی در `/var/log/x-ui/3xipl.log` و `/var/log/x-ui/3xipl-banned.log` قرار دارند (همچنین از طریق `x-ui banlog`).
|
||
- مسدودسازیها همه TCP/UDP را پوشش میدهند **بهجز** پورتهای SSH و پنل شما، بنابراین یک مسدودسازی نمیتواند شما را از سرور یا پنل بیرون بیندازد.
|
||
|
||
<Callout type="warn">
|
||
در Docker، Fail2ban با `iptables` مسدودسازی میکند که به قابلیت `NET_ADMIN` (و
|
||
`NET_RAW`) نیاز دارد — `docker-compose.yml` آنها را اعطا میکند. با یک
|
||
`docker run` ساده، `--cap-add=NET_ADMIN --cap-add=NET_RAW` را اضافه کنید وگرنه
|
||
مسدودسازیها لاگ میشوند اما هرگز اعمال نمیشوند.
|
||
</Callout>
|
||
|
||
## فایروال
|
||
|
||
تنها پورتهایی را باز کنید که واقعاً استفاده میکنید: SSH، پورت پنل، پورت اشتراک و پورتهای inbound خود. منوی `x-ui` (**۲۳ — Firewall Management**) ابزار `ufw` را در بر میگیرد، یا اینجا قوانین را تولید کنید:
|
||
|
||
<FirewallRulesGenerator />
|
||
|
||
<Callout type="warn">
|
||
پیش از فعالسازی یک فایروال با سیاست رد پیشفرض، مطمئن شوید که SSH همچنان مجاز
|
||
میماند، وگرنه ممکن است خودتان را بیرون بیندازید. با یک نشست دوم باز آن را آزمایش
|
||
کنید.
|
||
</Callout>
|
||
|
||
## تنظیم شبکه (BBR)
|
||
|
||
منوی `x-ui` (**۲۶ — Enable BBR**) کنترل ازدحام BBR گوگل را فعال/غیرفعال میکند
|
||
(`net.ipv4.tcp_congestion_control = bbr`، `net.core.default_qdisc = fq`) که اغلب توان عملیاتی را روی لینکهای شلوغ بهبود میبخشد.
|
||
|
||
## بهروز ماندن
|
||
|
||
3x-ui و Xray-core را بهطور منظم بهروزرسانی کنید — اصلاحات امنیتی در نسخههای جدید منتشر میشوند. [صفحه انتشارها](https://github.com/MHSanaei/3x-ui/releases) را دنبال کنید و به [بهروزرسانی و حذف نصب](/docs/guide/update-uninstall) مراجعه کنید.
|