پرش به مطلب اصلی

نصب نود

کد منبع

پنل — xray-panel/backend · نود — xray-panel/node · صفحه اشتراک — xray-panel/subscription-page

نود کانتینری روی سرور پروکسی است. خودش به هیچ‌جا متصل نمی‌شود: پنل با HTTPS و mutual TLS و JWT به آن متصل می‌شود.

1. دریافت SECRET_KEY​

در پنل: Nodes → ایجاد نود. پنل مقدار SECRET_KEY را نشان می‌دهد — یک رشته base64 بلند. آن را کامل کپی کنید: یک‌بارمصرف است.

درون آن گواهی‌ها و کلیدها قرار دارند: CA، گواهی نود، کلید خصوصی و کلید عمومی JWT. نود هنگام راه‌اندازی آن‌ها را بررسی می‌کند و اگر چیزی ناهمخوان باشد از کار کردن امتناع می‌کند.

2. راه‌اندازی​

docker run -d \
--name xpanel-node \
--restart unless-stopped \
--network host \
--cap-add NET_ADMIN \
--ulimit nofile=1048576:1048576 \
-e NODE_PORT=2222 \
-e SECRET_KEY="<SECRET_KEY را وارد کنید>" \
ghcr.io/xray-panel/node:latest

همان گزینه به‌صورت compose:

docker-compose.yml
services:
xpanelnode:
image: ghcr.io/xray-panel/node:latest
container_name: xpanel-node
restart: unless-stopped
network_mode: host
cap_add:
- NET_ADMIN
ulimits:
nofile:
soft: 1048576
hard: 1048576
environment:
- NODE_PORT=2222
- SECRET_KEY=${SECRET_KEY}
گزینهچرا
--network hostXray خودش روی پورت‌ها گوش می‌دهد؛ هدایت پورت‌ها تشخیص IP واقعی کلاینت را خراب می‌کند
--cap-add NET_ADMINبرای پلاگین‌ها لازم است (مسدودسازی تورنت از طریق nftables)؛ بدون پلاگین‌ها می‌توان آن را حذف کرد
--ulimit nofileمحدودیت بالای توصیفگرها برای تعداد زیاد اتصال‌ها

3. بررسی​

هنگام راه‌اندازی، در لاگ نود گزارشی از بررسی SECRET_KEY و نسخه هسته چاپ می‌شود:

docker logs -f xpanel-node
Xray version: Xray 26.9.9

پنل باید ظرف یک دقیقه نود را به‌صورت متصل نشان دهد. اگر نود ظاهر نمی‌شود:

  • بررسی کنید که NODE_PORT از سرور پنل در دسترس باشد (nc -vz <ip نود> 2222)، نه از مرورگر شما؛
  • مطمئن شوید که SECRET_KEY کامل و بدون شکستگی خط کپی شده است؛
  • لاگ کانتینر را ببینید — در صورت نادرست بودن کلید، نود علت امتناع را می‌نویسد.

4. پلاگین‌ها​

پلاگین‌های نود (مثلاً torrent-blocker) در صفحه نود در پنل نصب می‌شوند. برای پلاگین‌هایی که با nftables کار می‌کنند، NET_ADMIN و هسته‌ای با ماژول nftables لازم است. اگر از پلاگین‌ها استفاده نمی‌کنید — نیازی به افزودن این فلگ نیست.

5. لاگ‌های Xray​

docker exec -it xpanel-node xlogs

پاکسازی — در پنل در صفحه Logs، بخش «Node system logs»، دکمه «Clear logs». نود فایل را rotate می‌کند، Xray در این حین دوباره راه‌اندازی نمی‌شود و ترافیک قطع نمی‌شود. به‌صورت دستی:

docker exec -it xpanel-node cli --clear-logs

چند نود​

نودها را یکی‌یکی اضافه کنید: هر نود SECRET_KEY و گواهی مخصوص خود را دریافت می‌کند. کلید مشترک برای چند سرور پیش‌بینی نشده است — در صورت به‌خطرافتادن یک سرور، باید همه دوباره صادر می‌شدند.