Colituمرکز راهنما
نصب و راه‌اندازی

Colitu روی Raspberry Pi و Linux بدون رابط گرافیکی

Colitu را بدون دسکتاپ روی Raspberry Pi یا سرور Linux اجرا کنید: بسته را نصب کنید، با یک کد وارد شوید، از ترمینال متصل شوید و آن را هنگام روشن شدن دستگاه اجرا کنید.

کلاینت بدون رابط گرافیکی، Colitu را روی دستگاه‌هایی بدون صفحه‌نمایش یا دسکتاپ اجرا می‌کند: Raspberry Pi، مینی‌پی‌سی یا سرور Linux. دو بخش دارد: colitud، یک سرویس سیستمی که ورود شما را نگه می‌دارد و تونل VPN را اجرا می‌کند، و colitu، دستوری که در ترمینال برای ورود، انتخاب سرور و اتصال به کار می‌برید. کلاینت بدون رابط گرافیکی جدید است و هنوز در مرحلهٔ بتا قرار دارد.

نیازمندی‌ها

  • یک سیستم 64 بیتی: Raspberry Pi OS (64 بیتی) مبتنی بر Debian 12 «Bookworm»، یا Debian یا Ubuntu روی x64 یا ARM64. Raspberry Pi مدل 3، 4، 5 یا Zero 2 W کار می‌کند؛ مدل‌های قدیمی‌تر فقط 32 بیتی (Pi 1، Pi 2، Pi Zero W) کار نمی‌کنند. با uname -m بررسی کنید: باید aarch64 (Raspberry Pi) یا x86_64 نشان دهد.
  • systemd (هر Raspberry Pi OS فعلی آن را دارد) و اتصال به اینترنت.
  • یک حساب Colitu با طرح فعال. Pi یکی از دستگاه‌های شما حساب می‌شود.
  • دستگاه دیگری با مرورگر (گوشی یا رایانه) برای تأیید ورود. هرگز رمز عبور خود را روی Pi تایپ نمی‌کنید.

نصب

  1. روی Pi بستهٔ .deb مخصوص ARM64 را از colitu.com/download/linux دانلود کنید (روی دستگاه x64 نسخهٔ x64 را بردارید).
  2. آن را از پوشهٔ دانلود نصب کنید:

`` sudo apt install ./colitu-vpn_*_arm64.deb ``

همین بسته هم برنامهٔ دسکتاپ و هم کلاینت بدون رابط گرافیکی را دارد. در Raspberry Pi OS Lite دسکتاپ وجود ندارد، بنابراین برنامه فقط بلااستفاده می‌ماند و مقداری فضای دیسک می‌گیرد. اگر دسکتاپ دارید، هر دو را می‌توان کنار هم نصب کرد، اما هر بار فقط با یکی از آن‌ها متصل شوید.

  1. سرویس به‌طور خودکار شروع نمی‌شود. آن را راه‌اندازی کنید و بگذارید در هر بار روشن شدن اجرا شود:

`` sudo systemctl enable --now colitud ``

  1. به کاربر خود اجازهٔ کنترل آن را بدهید. اعضای گروه colitu می‌توانند بدون sudo از دستور colitu استفاده کنند:

`` sudo usermod -aG colitu $USER ``

برای اعمال شدن گروه، یک بار خارج و دوباره وارد شوید (یا newgrp colitu را اجرا کنید).

ورود

`` colitu login ``

این دستور یک پیوند، یک کد 8 نویسه‌ای و (در ترمینال) یک کد QR نشان می‌دهد. روی گوشی یا رایانهٔ خود پیوند را باز کنید، بررسی کنید کد و نام دستگاه (<hostname> (headless)) مطابقت دارند و تأیید کنید. Pi ظرف چند ثانیه خودش وارد می‌شود. کد حدود 10 دقیقه معتبر است؛ اگر منقضی شد، دوباره colitu login را اجرا کنید. توکن‌های ورود در /var/lib/colitu/state.json نگه داشته می‌شوند که فقط توسط root قابل خواندن است.

اتصال، بررسی، قطع اتصال

دستورکاری که انجام می‌دهد
colitu serversموقعیت‌ها را با بارشان فهرست می‌کند (--json برای اسکریپت‌ها)
colitu connectبه بهترین سرور وصل می‌شود: آنلاین، کمترین بار
colitu connect --country trبهترین سرور یک کشور (کد دو حرفی)
colitu connect --server <id>یک سرور مشخص، با شناسه یا نام از colitu servers
colitu statusوضعیت، سرور، زمان اتصال، دستگاه، اتصال خودکار (--json برای اسکریپت‌ها)
colitu disconnectاتصال را قطع می‌کند و مسیریابی عادی را برمی‌گرداند
colitu logoutخروج از حساب؛ --remove-device Pi را از حساب شما هم حذف می‌کند

برای بررسی کار کردن، پیش از اتصال نشانی عمومی خود را یادداشت کنید (curl -s https://ifconfig.me) و پس از آن دوباره دستور را اجرا کنید: باید نشانی یک سرور Colitu را نشان دهد. اگر Pi مرورگر دارد، آزمون اتصال VPN نشت‌ها را هم نشان می‌دهد.

اجرای خودکار هنگام روشن شدن

`` colitu connect --country tr colitu autoconnect on ``

یک بار به سروری که می‌خواهید وصل شوید، سپس اتصال خودکار را روشن کنید. از آن پس colitud هر زمان شروع شود به همان آخرین سرور متصل می‌شود و تا بالا آمدن شبکه تلاش مجدد می‌کند. colitu autoconnect off آن را خاموش می‌کند. ساعت Pi اهمیت دارد: باتری ساعت ندارد و اتصال فقط پس از همگام شدن زمان کار می‌کند. این معمولاً چند ثانیه پس از بالا آمدن شبکه اتفاق می‌افتد.

قطع‌کن اضطراری و شبکهٔ محلی شما

در حین اتصال، همهٔ ترافیک Pi از تونل عبور می‌کند و نمی‌تواند خارج از آن برود (مسیریابی سخت‌گیرانه). شبکهٔ محلی شما در دسترس می‌ماند، بنابراین نشست SSH به Pi هنگام اتصال ادامه پیدا می‌کند. این شامل بازه‌های خصوصی 10.0.0.0/8، 172.16.0.0/12، 192.168.0.0/16 و 169.254.0.0/16 است.

یک پیامد برای DNS: برنامه‌هایی روی Pi که از روتر شما به‌عنوان سرور DNS استفاده می‌کنند (پیش‌فرض در Raspberry Pi OS) این پرس‌وجوها را همچنان مستقیم به روتر می‌فرستند، چون روتر در شبکهٔ محلی است. برای فرستادن آن‌ها از تونل، یک حل‌کنندهٔ عمومی به Pi بدهید، برای مثال sudo nmcli connection modify "<connection name>" ipv4.ignore-auto-dns yes ipv4.dns 1.1.1.1 و شبکه را دوباره وصل کنید. پرس‌وجوهای ارسالی به یک حل‌کنندهٔ عمومی توسط Colitu گرفته می‌شوند و به‌صورت خصوصی از طریق تونل پاسخ داده می‌شوند.

به یاد داشته باشید این چه چیزی نیست: کلاینت بدون رابط گرافیکی قطع‌کن اضطراری مبتنی بر فایروال مانند برنامهٔ دسکتاپ ندارد. اگر فرایند تونل از بین برود، colitud آن را خودکار دوباره راه‌اندازی می‌کند، اما تا بازگشت تونل ترافیک Pi ممکن است مستقیم خارج شود. همین موضوع برای چند ثانیهٔ اول پس از روشن شدن، پیش از آنکه اتصال خودکار وصل شود، هم صادق است. استفاده از Pi به‌عنوان دروازه‌ای که VPN را با دستگاه‌های دیگر به اشتراک بگذارد پشتیبانی نمی‌شود.

لاگ‌ها

`` journalctl -u colitud -f ``

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

به‌روزرسانی و حذف

  • به‌روزرسانی

    .deb جدید را به همان روش نصب کنید. بسته colitud در حال اجرا را دوباره راه‌اندازی می‌کند و اگر اتصال خودکار روشن باشد دوباره وصل می‌شود. ورود شما حفظ می‌شود.

  • حذف

    sudo apt remove colitu-vpn سرویس را متوقف می‌کند و تونل را پایین می‌آورد. sudo apt purge colitu-vpn ورود ذخیره‌شده را هم حذف می‌کند. اگر می‌خواهید Pi از فهرست دستگاه‌های حساب شما هم ناپدید شود، ابتدا colitu logout --remove-device را اجرا کنید؛ همچنین می‌توانید آن را در colitu.com در بخش دستگاه‌ها حذف کنید.

عیب‌یابی

  • colitud is not running: sudo systemctl enable --now colitud را اجرا کنید، سپس systemctl status colitud. اگر ناموفق بود، journalctl -u colitud -e دلیل را می‌گوید.
  • no permission to use the colitud socket: کاربر شما هنوز در گروه colitu نیست. sudo usermod -aG colitu $USER را اجرا کنید و دوباره وارد شوید.
  • کد ورود منقضی یا رد شد: دوباره colitu login را اجرا کنید و از دستگاهی که در حساب شما وارد شده تأیید کنید.
  • This device is paused: طرح شما تعداد دستگاه کمتری از دستگاه‌های واردشده مجاز می‌داند. colitu activate Pi را دستگاه فعال می‌کند و دستگاهی را که مدت بیشتری استفاده نشده متوقف می‌کند. به مدیریت دستگاه‌ها نگاه کنید.
  • no active plan یا verify your e-mail address: آن را در حساب خود در colitu.com برطرف کنید، سپس دوباره colitu connect را اجرا کنید.
  • متصل نمی‌شود: تاریخ را با timedatectl بررسی کنید (باید System clock synchronized: yes بگوید؛ با ساعت نادرست اتصال امن ناموفق می‌شود)، سپس journalctl -u colitud -e را بخوانید. به مشکلات اتصال هم نگاه کنید.
  • sing-box was not found: بسته ناقص است؛ دوباره نصبش کنید. هستهٔ تونل در /opt/colitu-vpn/bin/sing_box/sing-box نصب می‌شود.
  • VPN دیگری روی Pi در حال اجراست (WireGuard، گره خروجی Tailscale، برنامهٔ دسکتاپ Colitu): دو VPN نباید هم‌زمان اجرا شوند. ابتدا دیگری را قطع کنید.
آیا این مقاله مفید بود؟

هنوز به کمک نیاز دارید؟

Colitu Bot در چند ثانیه پاسخ می‌دهد و تیم پشتیبانی ما به سه زبان کمک می‌کند.