مرجع خط فرمان

همهٔ دستورهای sqctl در کلاینت خط فرمان SecurQbit — ورود، اتصال، انتخاب کشور، تغییر ترجیحات، به‌روزرسانی و خروجی قابل خواندن برای برنامه‌ها.

sqctl راهی است که با آن SecurQbit را از ترمینال هدایت می‌کنید. از راه یک سوکت محلی با سرویس پس‌زمینه حرف می‌زند؛ هیچ اطلاعات ورودی نگه نمی‌دارد و به دسترسی ویژه‌ای نیاز ندارد. اگر هنوز نصبش نکرده‌اید، از راه‌اندازی روی رایانه و روتر شروع کنید.

هر دستور گزینهٔ --json را می‌پذیرد که به‌جای خروجی آراسته، سند خام را چاپ می‌کند. همان است که باید برایش اسکریپت بنویسید — چیدمان خواندنی برای انسان ممکن است تغییر کند.

در یک نگاه

sqctl status                        VPN روشن است یا نه، و با چه حسابی
sqctl login                         ورود با تأیید یک پیوند در مرورگر
sqctl logout
sqctl locations                     کشورهایی که این اشتراک اجازه می‌دهد
sqctl connect [COUNTRY] [--fastest]
sqctl disconnect
sqctl set                           نمایش ترجیحات
sqctl set country DE|any
sqctl set autoconnect on|off
sqctl set updates on|off
sqctl update [--check] [--yes]      نصب آخرین نسخه

sqctl status

نشان می‌دهد محافظت شده‌اید یا نه، و با چه حسابی.

$ sqctl status
 
  ● Connected      Germany
    Connected for  12m 40s
    Transferred    ↓ 148 MB   ↑ 22 MB
 
    Account        Alice  [email protected]
    Plan           Monthly
    Renews         1 September 2026

عمداً هیچ‌چیز دربارهٔ چگونگی ساخت تونل نشان نمی‌دهد — نه نشانی سرور و نه شناسهٔ نشست. با هیچ‌کدام کاری از شما برنمی‌آید، و به‌ویژه نشانی سرور چیزی نیست که هنگام درخواست کمک در یک تصویر صفحه بیرون برود.

اگر سرویس در حال اجرا نباشد، sqctl همین را می‌گوید و دستوری را چاپ می‌کند که آن را روی این دستگاه اجرا می‌کند، هر سامانهٔ راه‌اندازی که داشته باشد.

sqctl login

این رایانه را با تأیید در مرورگر وارد حساب می‌کند.

$ sqctl login
 
Open this link to approve the sign-in:
 
    https://accounts.securqbit.com/device?code=BCDF-GHJK
 
Check the page shows this code:
 
    B C D F - G H J K
 
Waiting for approval — expires in 10 minutes, Ctrl-C to cancel

پیوند را باز کنید — sqctl تلاش می‌کند خودش آن را باز کند و --no-browser جلوی این کار را می‌گیرد — اگر هنوز وارد نشده‌اید وارد شوید، بررسی کنید کدی که در صفحه آمده با کد ترمینال شما یکی باشد و تأیید کنید. هرگز چیزی در ترمینال بازنویسی نمی‌شود.

همین مقایسه، تمامِ امنیت این روند است.

فقط درخواستی را تأیید کنید که خودتان آغاز کرده‌اید. اگر کسی چنین پیوندی برایتان بفرستد و شما تأیید کنید، رایانهٔ او را وارد حساب خودتان کرده‌اید. کد و نام دستگاهی که صفحه نشان می‌دهد دقیقاً برای همین است که بتوانید تفاوت را ببینید.

ورود نیازمند حسابی است که از پیش وجود داشته باشد. یکی را در برنامهٔ iOS یا Android بسازید — از جمله حساب مهمان که با کد بازیابی وارد accounts.securqbit.com می‌شود و مانند بقیه از همان‌جا تأیید می‌کند.

sqctl logout

VPN را خاموش می‌کند و این رایانه را از حساب خارج می‌کند. تونل نخست پایین می‌آید و این عمدی است: رها کردن تونل روی اطلاعات ورودی‌ای که همین حالا باطل شده‌اند، ترافیک شما را در نشستی جا می‌گذارد که سرور به‌زودی پاکش می‌کند.

برای حساب مهمان نخست تأیید گرفته می‌شود، چون بدون کد بازیابی دیگر نمی‌توانید وارد شوید. گزینهٔ --force این پرسش را رد می‌کند.

sqctl connect

sqctl connect            # ترجیح ذخیره‌شدهٔ شما
sqctl connect DE         # دیده‌شدن از آلمان
sqctl connect --fastest  # انتخاب با SecurQbit

کشور یک کد دوحرفی است — برای دیدن آنچه اشتراک شما اجازه می‌دهد sqctl locations را اجرا کنید. اتصال چند ثانیه طول می‌کشد؛ ترمینال به‌جای سکوت، وضعیت واقعی را در حین تغییر دنبال می‌کند.

اشتراک آزمایشی نمی‌تواند کشور انتخاب کند. با اشتراک آزمایشی از --fastest استفاده کنید. نام بردن یک کشور خطایی برمی‌گرداند که می‌گوید اشتراک پولی لازم است، به‌جای آنکه بی‌سروصدا شما را جای دیگری وصل کند. به حساب و صورت‌حساب نگاه کنید.

sqctl disconnect

تونل را پایین می‌آورد و مسیریابی و DNS شما را به حالت پیشین برمی‌گرداند.

قطع کردن، در ضمن، همان چیزی است که به SecurQbit می‌گوید بایست. اگر تونل خودش بیفتد، سرویس برای بازگرداندنش تلاش را ادامه می‌دهد — و این همان چیزی است که از لپ‌تاپی که از خواب بیدار شده یا روتری که خطش نوسان داشته انتظار دارید. تنها sqctl disconnect، خروج از حساب، یا خاموش کردن سرویس این خواست را لغو می‌کند.

sqctl locations

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

$ sqctl locations
 
    DE             Germany
    FR             France
    NL             Netherlands
    SG             Singapore
    US             United States

sqctl set

ترجیحات شما را نشان می‌دهد یا تغییر می‌دهد. سه‌تا هستند، و همان سه‌تایی‌اند که واقعاً انتخابشان با شماست.

sqctl set                    # نمایش هر سه
sqctl set country DE         # پیش‌فرض آلمان
sqctl set country any        # پیش‌فرض سریع‌ترین
sqctl set autoconnect on     # اتصال به‌محض روشن شدن دستگاه
sqctl set updates off        # پایان جست‌وجوی نسخه‌های تازه
$ sqctl set
 
    Location       Germany (DE)
    Auto-connect   on
    Updates        on

باقی چیزها دربارهٔ تونل — چگونه ساخته می‌شود، چه DNSای به کار می‌برد، چگونه دوباره تلاش می‌کند — برای شما تصمیم گرفته شده و از خط فرمان در دسترس نیست. اینها انتخاب‌هایی نیستند که عرضه‌شان یک VPN را بهتر کند.

updates یک تنظیم است و نه یک ثابت، چون این بررسی تماسی دوره‌ای با CDN‏ SecurQbit است و کسی که VPN اجرا می‌کند حق دارد آن را نخواهد.

sqctl update

آخرین نسخه را نصب می‌کند.

sqctl update            # پرسیدن، سپس نصب و راه‌اندازی دوباره
sqctl update --check    # فقط بگوید نسخهٔ تازه‌ای هست یا نه
sqctl update --yes      # بدون پرسش
$ sqctl update
 
  ! Update available
 
    Installed      v1.0.0
    Latest         v1.1.0
 
  SecurQbit restarts to finish, so the VPN disconnects for a moment.
 
Install it now? [y/N]

پیش از جایگزینی هر چیزی، فایل دانلودشده با چکیده‌های منتشرشده مقایسه می‌شود و سپس سرویس روی نسخهٔ تازه دوباره راه می‌افتد. sqctl منتظر بازگشتش می‌ماند و نسخه را از خودش می‌خواند، پس آنچه به شما گفته می‌شود همان چیزی است که واقعاً اجرا می‌شود، نه آنچه روی دیسک نوشته شده.

SecurQbit روزی یک‌بار هم خودش بررسی می‌کند و فقط به شما اطلاع می‌دهد — سطری زیر sqctl status:

    Update         v1.1.0 available — run: sqctl update

هرگز خودش نصب نمی‌کند. کامل کردن به‌روزرسانی یعنی راه‌اندازی دوباره، و راه‌اندازی دوباره تونل برقرار را قطع می‌کند؛ انجام این کار بدون خبر بدتر از آن است که کسی یک نسخه عقب بماند.

اگر SecurQbit را بستهٔ توزیع شما نصب کرده باشد، sqctl update پیش از دانلود هر چیزی امتناع می‌کند و می‌گوید آن را به همان روشی که نصب کرده‌اید به‌روز کنید.

نوشتن اسکریپت

--json روی هر دستور، سند پروتکل را چاپ می‌کند:

$ sqctl status --json | jq '.state, .country'
"connected"
"DE"
# وصل شوید و مطمئن شوید که واقعاً کار کرده است
sqctl connect --fastest --json > /dev/null
test "$(sqctl status --json | jq -r .state)" = connected

کدهای خروج: 0 موفقیت، 1 شکست دستور، 2 سرویس SecurQbit در دسترس نیست.

وقتی چیزی درست نیست

sqctl خطاها را به چیزی ترجمه می‌کند که بتوانید بر پایه‌اش کاری بکنید و جزئیات درونی را کنار می‌گذارد. وقتی به آن جزئیات نیاز دارید — برای گزارش یک ایراد — یک دستور عیب‌یابی پنهان هست:

sqctl debug          # نسخه‌ها، جای هر چیز، اینکه کدام سوکت پاسخ داد،
                     # موتور تونل، و آخرین خطای خام
sqctl debug probe DE # آزمودن یک سرور از سر تا ته، بدون اتصال

sqctl debug probe از همه کاربردی‌تر است. پروکسی را به یک سرور واقعی وصل می‌کند، یک درخواست از میان آن می‌فرستد و نشانی‌ای را که سوی دیگر دیده گزارش می‌دهد — اما هیچ دستگاه تونلی نمی‌سازد و هیچ مسیری را تغییر نمی‌دهد، پس به شما می‌گوید مسیر کار می‌کند یا نه، بی‌آنکه در صورت کار نکردن اینترنتتان را بگیرد.

هنگام گزارش مشکل، خروجی sqctl debug را همراه کنید. به عیب‌یابی نگاه کنید.

گام‌های بعدی