دانشنامه مارال هاست دانشنامه مارال هاست
  • صفحه اصلی
  • مقالات
    • هاست اشتراکی
    • دامنه
    • سرور مجازی
    • کنترل پنل سی‌پنل
    • کنترل پنل پلسک
    • کنترل پنل دایرکت ادمین
    • ایمیل
    • CloudLinux
    • Cloudflare
  • تماس با ما
دانشنامه مارال هاست دانشنامه مارال هاست
دانشنامه مارال هاست دانشنامه مارال هاست
  • صفحه اصلی
  • مقالات
    • هاست اشتراکی
    • دامنه
    • سرور مجازی
    • کنترل پنل سی‌پنل
    • کنترل پنل پلسک
    • کنترل پنل دایرکت ادمین
    • ایمیل
    • CloudLinux
    • Cloudflare
  • تماس با ما
  • banner shape
  • banner shape
  • plus icon
  • plus icon
دسته‌بندی نشده

آموزش نصب و راه‌اندازی RustDesk Server با Docker

Shayan Kianpoor
35 Views
Share

Copy link

Docy theme
آموزش نصب و راه‌اندازی RustDesk Server با Docker

مقدمه

RustDesk یکی از محبوب‌ترین نرم‌افزارهای متن‌باز برای دسترسی از راه دور (Remote Desktop) است که به شما اجازه می‌دهد بدون وابستگی به سرورهای شخص ثالث، زیرساخت اختصاصی خود را راه‌اندازی کنید.

برخلاف نرم‌افزارهایی مانند TeamViewer یا AnyDesk، در RustDesk می‌توانید سرور اختصاصی خود را راه‌اندازی کرده و تمامی ارتباطات را از طریق زیرساخت سازمانی خود مدیریت کنید. این موضوع علاوه بر افزایش امنیت، کنترل کامل بر داده‌ها و ارتباطات را نیز در اختیار شما قرار می‌دهد.

در این آموزش، نسخه Community سرور RustDesk را با استفاده از Docker روی Ubuntu 24.04 نصب و پیکربندی خواهیم کرد.

آموزش نصب و راه‌اندازی RustDesk Server با Docker

معماری RustDesk Server

سرور RustDesk از دو سرویس اصلی تشکیل شده است:

سرویسوظیفه
hbbsسرور ID یا Rendezvous Server برای معرفی کلاینت‌ها به یکدیگر
hbbrRelay Server برای انتقال ترافیک زمانی که ارتباط مستقیم برقرار نشود

برای عملکرد صحیح RustDesk، هر دو سرویس باید همزمان در حال اجرا باشند.


پیش‌نیازها

قبل از شروع موارد زیر را آماده کنید:

  • Ubuntu Server 24.04
  • دسترسی Root یا Sudo
  • IP Public ثابت
  • دسترسی به تنظیمات Firewall
  • نصب Docker

نحوه عملکرد RustDesk

                    اینترنت
                       │
        ┌──────────────┴──────────────┐
        │                             │
        ▼                             ▼
   Client A                      Client B
        │                             │
        └──────────────┬──────────────┘
                       │
                RustDesk Server
        ┌──────────────┴──────────────┐
        │                             │
        ▼                             ▼
      HBBS                         HBBR

در حالت عادی، سرور فقط وظیفه معرفی دو کلاینت را بر عهده دارد و ارتباط به‌صورت مستقیم (Peer-to-Peer) برقرار می‌شود. اگر ارتباط مستقیم امکان‌پذیر نباشد، ترافیک از طریق سرویس Relay عبور خواهد کرد.


مرحله اول: نصب Docker

ابتدا سیستم را بروزرسانی کنید.

apt update && apt upgrade -y

سپس Docker را نصب نمایید.

apt install -y docker.io docker-compose-v2

فعال‌سازی سرویس Docker

systemctl enable docker
systemctl start docker

بررسی نصب

docker --version

در صورت مشاهده نسخه Docker، نصب با موفقیت انجام شده است.


مرحله دوم: ایجاد پوشه پروژه

یک پوشه برای نگهداری اطلاعات سرور ایجاد کنید.

mkdir -p /opt/rustdesk

cd /opt/rustdesk

در این مسیر کلیدهای رمزنگاری و تنظیمات RustDesk ذخیره خواهند شد.


مرحله سوم: اجرای سرور RustDesk

ابتدا سرویس HBBS را اجرا کنید.

docker run \
--name hbbs \
-v /opt/rustdesk:/root \
-td \
--net=host \
rustdesk/rustdesk-server hbbs

سپس سرویس Relay را اجرا نمایید.

docker run \
--name hbbr \
-v /opt/rustdesk:/root \
-td \
--net=host \
rustdesk/rustdesk-server hbbr

در این آموزش از حالت Host Network استفاده شده است تا تمام پورت‌های موردنیاز مستقیماً روی سرور در دسترس باشند.


مرحله چهارم: باز کردن پورت‌های فایروال

در صورت استفاده از UFW، پورت‌های زیر را باز کنید.

ufw allow 21115:21119/tcp

ufw allow 8000/tcp

ufw allow 21116/udp

اگر از فایروال دیتاسنتر، Cloud Firewall یا تجهیزات سخت‌افزاری استفاده می‌کنید، همین پورت‌ها را نیز در آن‌ها باز کنید.


مرحله پنجم: دریافت Public Key سرور

پس از اولین اجرای HBBS، کلید رمزنگاری سرور به‌صورت خودکار تولید می‌شود.

برای مشاهده آن دستور زیر را اجرا کنید.

cat /opt/rustdesk/id_ed25519.pub

خروجی مشابه نمونه زیر خواهد بود.

WsLxXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

این کلید را در اختیار داشته باشید، زیرا تمام کلاینت‌ها برای اتصال به سرور به آن نیاز خواهند داشت.


مرحله ششم: پیکربندی کلاینت‌ها

در نرم‌افزار RustDesk مسیر زیر را باز کنید.

Settings → Network

سپس مقادیر زیر را وارد نمایید.

گزینهمقدار
ID ServerIP یا دامنه سرور
Relay ServerIP یا دامنه سرور
Keyمقدار فایل id_ed25519.pub
API Serverخالی

به عنوان مثال:

گزینهمقدار
ID Server91.223.116.151
Relay Server91.223.116.151
Keyمقدار کلید عمومی
API Serverخالی

API Server چیست؟

در نسخه Community نیازی به تنظیم API Server وجود ندارد.

این بخش تنها در نسخه‌های مدیریتی یا Pro برای امکاناتی مانند:

  • پنل مدیریت
  • مدیریت کاربران
  • مدیریت دستگاه‌ها
  • Web Console
  • API مرکزی

استفاده می‌شود.

بنابراین در نسخه Community بهترین گزینه، خالی گذاشتن این قسمت است.

اگر نرم‌افزار اصرار به وارد کردن مقدار داشت، می‌توانید یکی از موارد زیر را وارد کنید.

http://SERVER-IP

یا

https://SERVER-IP

اما در اکثر نسخه‌های Community این قسمت بدون مقدار نیز به‌درستی کار می‌کند.


مرحله هفتم: تست اتصال

پس از ذخیره تنظیمات کلاینت:

  • هر سیستم باید یک شناسه (ID) دریافت کند.
  • سیستم‌ها باید یکدیگر را مشاهده کنند.
  • امکان اتصال Remote Desktop برقرار شود.

در صورت وجود NAT مناسب، ارتباط به‌صورت مستقیم برقرار خواهد شد.


مرحله هشتم: بررسی وضعیت سرویس‌ها

برای مشاهده کانتینرهای فعال:

docker ps

باید دو سرویس زیر در وضعیت Running باشند.

  • hbbs
  • hbbr

بررسی لاگ‌ها

در صورت بروز مشکل، لاگ سرویس‌ها را بررسی کنید.

docker logs hbbs

و

docker logs hbbr

این لاگ‌ها اطلاعات مفیدی درباره خطاهای شبکه، پورت‌ها یا ارتباط کلاینت‌ها ارائه می‌دهند.


مرحله نهم: اجرای خودکار پس از راه‌اندازی مجدد

برای اینکه پس از ریبوت سرور، سرویس‌ها به‌صورت خودکار اجرا شوند، دستورات زیر را اجرا کنید.

docker update --restart unless-stopped hbbs

docker update --restart unless-stopped hbbr

مرحله دهم: بررسی باز بودن پورت‌ها

برای اطمینان از دسترسی کلاینت‌ها، باز بودن پورت‌های اصلی را بررسی کنید.

مهم‌ترین پورت‌ها عبارت‌اند از:

  • 21115/TCP
  • 21116/TCP
  • 21116/UDP

می‌توانید از وب‌سایت‌های بررسی پورت (Port Checker) برای تست دسترسی استفاده کنید.


عیب‌یابی

کلاینت شناسه (ID) دریافت نمی‌کند

موارد زیر را بررسی کنید:

  • اجرای HBBS
  • باز بودن پورت‌ها
  • تنظیم صحیح ID Server
  • تنظیم صحیح Key

اتصال برقرار نمی‌شود

ابتدا وضعیت HBBS و HBBR را بررسی کنید.

docker ps

سپس لاگ سرویس‌ها را مشاهده نمایید.

docker logs hbbs

docker logs hbbr

ارتباط فقط داخل شبکه داخلی برقرار می‌شود

معمولاً یکی از موارد زیر علت مشکل است:

  • پورت‌ها در فایروال بسته هستند.
  • NAT یا Port Forwarding انجام نشده است.
  • IP عمومی به‌درستی تنظیم نشده است.

جمع‌بندی

در این آموزش، یک سرور اختصاصی RustDesk با استفاده از Docker راه‌اندازی شد.

مراحل انجام‌شده شامل موارد زیر بود:

  • نصب Docker
  • اجرای سرویس‌های HBBS و HBBR
  • پیکربندی فایروال
  • دریافت Public Key
  • تنظیم کلاینت‌ها
  • بررسی وضعیت سرویس‌ها
  • فعال‌سازی اجرای خودکار پس از ریبوت
  • تست عملکرد سرور

با این ساختار، تمامی ارتباطات Remote Desktop از طریق زیرساخت اختصاصی شما انجام می‌شود و دیگر وابسته به سرورهای عمومی RustDesk نخواهید بود. این موضوع امنیت، حریم خصوصی و کنترل بیشتری بر ارتباطات سازمانی فراهم می‌کند.

کیان پور

پست‌های مرتبط

4 minutes دسته‌بندی نشده

آموزش نصب و راه‌اندازی Ma...

مقدمهاگر قصد دارید یک پیام‌...

5 minutes دسته‌بندی نشده

ساخت سرور چت المنت بروی ل...

در این آموزش، نحوه راه‌اندازی...

2 minutes دسته‌بندی نشده

Geo Routing و Geo DNS

1. مقدمهبا رشد سرویس‌های این...

1 minute دسته‌بندی نشده

CXS چیست و چگونه کار می‌کن...

CXS یک ابزار امنیتی پیشرفته است ...

نظرات خود را بنویسید... لغو پاسخ

ما در مارال هاست، تلاش می‌کنیم میزبانی وب را به تجربه‌ای دلپذیر و بی‌دردسر برای شما تبدیل کنیم.

خرید هاست

  • هاست لینوکس
  • هاست ویندوز
  • هاست وردپرس
  • هاست ووکامرس
  • هاست دانلود
  • هاست نمایندگی
  • سرویس ایمیل OpenSRS

خرید سرور

  • سرور مجازی ایران
  • سرور مجازی اروپا
  • سرور مجازی فرانسه
  • سرور مجازی آلمان
  • سرور مجازی فنلاند
  • ثبت دامنه
  • گواهینامه SSL

دسترسی سریع

  • بلاگ
  • تماس با ما
  • ورود به ناحیه کاربری
  • ارسال تیکت پشتیبانی
  • قوانین استفاده از خدمات

تمام حقوق این وب سایت متعلق به میزبانی وب مارال هاست می باشد © 2025

آموزش نصب و راه‌اندازی RustDesk Server با Docker

Or copy link

Clipboard Icon