−25%

روی پرداخت سالانه Windows، تا ۳۱ اکتبر. مشاهده پلن‌ها

EQVPS

VPS برای Headscale: سرور کنترل Tailscale خودمیزبان

Headscale را روی یک VPS کوچک اجرا کنید و سرور هماهنگی mesh VPN خود را در کنترل خودتان نگه دارید. نصب، اولین کاربر، اتصال دستگاه‌ها و محدودیت‌ها.

mesh VPN از آن ابزارهایی است که بی‌سروصدا همه‌چیز را ساده‌تر می‌کند: لپ‌تاپ، سرور خانگی، گوشی و VPSهای شما، هر جا که باشند، همدیگر را روی آدرس‌های خصوصی می‌بینند. ایراد mesh VPNهای میزبانی‌شده سرور هماهنگی است: یک شرکت نقشه همه دستگاه‌های شما را نگه می‌دارد. Headscale جایگزینی متن‌باز برای آن سرور کنترل است. آن را روی یک VPS کوچک اجرا کنید، از همان اپلیکیشن‌های معمولی کلاینت استفاده کنید، و نقشه مال شما می‌شود.

اجزا چطور کنار هم قرار می‌گیرند

همین نکته آخر دلیل کار کردن یک پلن بسیار کوچک است: VPS فقط به درخواست‌های هماهنگی کوچک پاسخ می‌دهد.

چه چیزهایی لازم دارید

نصب (Debian 12 / Ubuntu 24.04)

فایل .deb فعلی را از صفحه انتشارهای Headscale در GitHub بگیرید و نسخه را با آخرین نسخه جایگزین کنید:

HS_VER=0.26.1
wget -O headscale.deb \
  "https://github.com/juanfont/headscale/releases/download/v${HS_VER}/headscale_${HS_VER}_linux_amd64.deb"
apt install -y ./headscale.deb caddy

/etc/headscale/config.yaml را ویرایش کنید؛ دو خط مهم این‌ها هستند:

server_url: https://hs.example.com
listen_addr: 127.0.0.1:8080

Caddy را برای HTTPS جلوی آن بگذارید:

cat > /etc/caddy/Caddyfile <<'EOF'
hs.example.com {
    reverse_proxy 127.0.0.1:8080
}
EOF
systemctl enable --now headscale
systemctl reload caddy

یک کاربر و یک دستگاه اضافه کنید

headscale users create alice
headscale users list            # note the user's ID
headscale preauthkeys create --user 1 --expiration 24h

نسخه‌های قدیمی‌تر در --user نام کاربر را به جای شناسه می‌گیرند؛ headscale preauthkeys create --help به شما می‌گوید نسخه شما کدام را انتظار دارد.

روی یک دستگاه لینوکسی:

tailscale up --login-server https://hs.example.com --authkey YOUR_KEY

روی گوشی‌ها و رایانه‌های رومیزی، اپلیکیشن Tailscale اجازه می‌دهد در تنظیماتش یک سرور کنترل سفارشی تعیین کنید. headscale nodes list را روی VPS اجرا کنید؛ دستگاه شما باید آنجا باشد.

رله‌ها و عبور از NAT

بیشتر دستگاه‌ها مستقیم وصل می‌شوند. وقتی دو دستگاه نتوانند (شبکه‌های موبایل سخت‌گیر، NAT دوگانه)، ترافیک از یک رله DERP عبور می‌کند. به طور پیش‌فرض Headscale از رله‌های عمومی Tailscale استفاده می‌کند که فقط بسته‌های رمزنگاری‌شده را می‌بینند. اگر نمی‌خواهید هیچ چیز خارجی در مسیر باشد، رله داخلی را در config.yaml فعال کنید (derp.server.enabled: true) و UDP 3478 را باز کنید. آن وقت ترافیک رله‌شده از پهنای باند VPS شما حساب می‌شود.

محدودیت‌ها، صادقانه

داشبورد وب رسمی وجود ندارد: کاربران، کلیدها و مسیرها دستورات خط فرمان هستند (بعد از دو بار انجام دادن، کار ساده‌ای است). ویژگی‌های جدیدتر سرویس میزبانی‌شده دیرتر به Headscale می‌رسند، اگر برسند. و سرور کنترل حالا مسئولیت شماست: اگر از کار بیفتد، اتصال‌های موجود کار می‌کنند، اما دستگاه‌های جدید نمی‌توانند بپیوندند و کلیدها تمدید نمی‌شوند. از آن پشتیبان بگیرید: کل وضعیت در /var/lib/headscale است.

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

مرتبط

آماده استقرار؟ با رمزارز بپرداز، بدون KYC — در حدود یک دقیقه فعال می‌شود.

← همین حالا مستقر کن

سؤالات متداول

سرور Headscale در عمل چه چیزی را می‌بیند؟

فراداده: کدام دستگاه‌ها وجود دارند، کلیدهای عمومی‌شان، آدرس‌هایشان و آخرین زمان آنلاین بودنشان. خود ترافیک شما مستقیماً بین دستگاه‌ها از طریق WireGuard جریان دارد (یا اگر به هم نرسند، از طریق یک رله) و سرتاسر رمزنگاری‌شده است. خودمیزبانی یعنی این فراداده روی سرور شماست، نه سرور کس دیگری.

آیا به کلاینت خاصی نیاز دارم؟

نه. از اپلیکیشن‌های معمولی Tailscale روی Linux، macOS، Windows، iOS و Android استفاده می‌کنید و آن‌ها را به آدرس سرور خود هدایت می‌کنید. روی Linux یک گزینه کافی است: ‎--login-server.

کدام پلن کافی است؟

Headscale بسیار سبک است: Nano-IP (۸ دلار در ماه) به‌راحتی یک خانواده یا تیم کوچک را پوشش می‌دهد. به IP اختصاصی نیاز دارید چون دستگاه‌ها باید از طریق HTTPS به سرور کنترل برسند؛ پلن NAT پورت ۴۴۳ ورودی را نمی‌پذیرد.

اگر دو دستگاه نتوانند مستقیم وصل شوند چه؟

به یک رله (DERP) برمی‌گردند. به طور پیش‌فرض Headscale از رله‌های عمومی Tailscale استفاده می‌کند که فقط بسته‌های رمزنگاری‌شده را می‌بینند. می‌توانید به جای آن رله داخلی Headscale را فعال کنید؛ به باز بودن UDP 3478 نیاز دارد و برای ترافیک رله‌شده از پهنای باند VPS شما استفاده می‌کند.

در مقایسه با سرویس میزبانی‌شده Tailscale چه چیزی کم است؟

پنل مدیریت وب رسمی وجود ندارد: کاربران و کلیدها را از خط فرمان مدیریت می‌کنید (رابط‌های کاربری جامعه وجود دارند). برخی ویژگی‌های جدیدتر سرویس میزبانی‌شده دیرتر یا هرگز به Headscale نمی‌رسند. برای یک شبکه شخصی یا تیم کوچک، هسته اصلی به خوبی کار می‌کند: mesh، ACL، MagicDNS و exit nodes.

نظرات

هنوز نظری نیست. اولین نفر باشید.

یک نظر بگذارید

نظرات پیش از نمایش بررسی می‌شوند.