Ben's VPN روی روترهای OpenWrt

یک فرمان SSH برنامه را روی روتر OpenWrt نصب می‌کند. سپس تمام شبکه خانگی از Ben's VPN عبور می‌کند. هیچ دستگاهی در این شبکه برنامه جداگانه لازم ندارد.

سفت‌افزار
24.10 یا 25.12نسخه رسمی با fw4، مرحله 1
حافظه
256 مگابایتحداقل RAM
نصب
1 فرماناز طریق SSH، مرحله 3
صفحه روتر
پورت 8790192.168.1.1 یا bensvpn.home

نصب و ورود به حساب

پیش‌نیازها: یک کامپیوتر متصل به شبکه خانگی روتر، و حسابی در Ben's VPN که اشتراکش پرداخت شده و ایمیل دارد.

  1. بررسی روتر

    سفت‌افزار: OpenWrt رسمی 24.10 یا 25.12 با fw4. نسخه 23.05 و نسخه‌های قدیمی‌تر پشتیبانی نمی‌شوند. حافظه RAM:‏ 256 مگابایت یا بیشتر؛ LuCI آن را در Status → Overview دست‌کم 200 MiB نشان می‌دهد. روتر باید به اینترنت دسترسی داشته باشد.

    حساب root باید گذرواژه داشته باشد. آن را در LuCI بگذارید: http://192.168.1.1/‎، بخش System → Administration. راه دیگر، فرمان passwd در نشست SSH است.

    بسته‌هایی که جلوی نصب را می‌گیرند: پیش از مرحله 3 حذفشان کنید

    • pbr
    • podkop
    • passwall
    • passwall2
    • homeproxy
    • openclash
    • nikki
    • mihomo
    • sing-box به‌عنوان سرویس مستقل

    بسته یک سرویس VPN دیگر هم مانع نصب می‌شود. اگر برای پردازنده روتر بسته‌ای وجود نداشته باشد، نصب‌کننده همین را اعلام می‌کند و به روتر دست نمی‌زند. روتری که در سفت‌افزارش کلاینت OpenVPN یا PPTP دارد، بدون برنامه هم وصل می‌شود: روشش در زبانه «روترهای دیگر» صفحه حساب آمده است.

  2. باز کردن نشست SSH

    در اولین اتصال، SSH می‌پرسد که به این میزبان اعتماد دارید یا نه. با yes پاسخ دهید. سپس گذرواژه root را وارد کنید.

    آنچه می‌بینید

    اعلان ⁦root@OpenWrt:~#⁩.

    ترمینال با نشست SSH: شماره روی خط ssh root@192.168.1.1، پاسخ yes، درخواست گذرواژه و اعلان root@OpenWrt
  3. اجرای نصب‌کننده

    این فرمان را در نشست SSH جای‌گذاری کنید. نصب‌کننده نسخه OpenWrt و نوع پردازنده را خودش تشخیص می‌دهد. پیام‌هایش به انگلیسی است.

    فرمان نصب · OpenWrt 24.10 و 25.12

    wget -qO /tmp/bensvpn-install.sh https://storage.googleapis.com/bensvpn/router/bensvpn/openwrt/install.sh || wget -qO /tmp/bensvpn-install.sh https://xxvv.loan/router/bensvpn/openwrt/install.sh && sh /tmp/bensvpn-install.sh

    آنچه می‌بینید

    اول بررسی روتر، بعد پرسش تأیید. y را وارد کنید و کلید Enter را بزنید. با هر پاسخ دیگری نصب‌کننده متوقف می‌شود و روتر همان‌طور که بود می‌ماند.

    در حالت پیش‌فرض همه شبکه خانگی از Ben's VPN می‌گذرد. مرحله 7 می‌گوید چطور آن را به دستگاه‌های انتخابی محدود کنید. فرمان را در زبانه OpenWrt از بخش «روتر» صفحه حساب هم پیدا می‌کنید.

  4. صبر تا خط آخر

    اولین کار نصب‌کننده افزودن بسته‌های سیستمی مورد نیاز از مخزن OpenWrt است. پس از آن نوبت دانلود برنامه، بررسی چک‌سام و راه‌اندازی سرویس است. تا آن موقع پنجره SSH را نبندید.

    پیام «No package from …‎» به‌تنهایی خطا نیست. یعنی نصب‌کننده سراغ نشانی بعدی می‌رود. «Critical error» فقط وقتی می‌آید که نشانی دیگری نمانده باشد. دلیل‌ها در پرسش و پاسخ پایین صفحه آمده است.

    آنچه می‌بینید

    در پایان خروجی، خطی با «Done» در ابتدا و نشانی صفحه روتر پس از آن.

  5. باز کردن صفحه روتر

    از دستگاهی در خانه، bensvpn.home:8790 را باز کنید. اگر این نام پیدا نشد، http://192.168.1.1:8790/‎ کار می‌کند.

    در فیلد «نام کاربری» از قبل root نوشته شده است. گذرواژه همان گذرواژه root در LuCI و SSH است.

    آنچه می‌بینید

    روی صفحه «وارد نشده‌اید» نوشته شده و دکمه «ورود با کد» دیده می‌شود. هنوز هیچ حسابی به روتر متصل نیست.

  6. اتصال روتر به حساب با کد 8 رقمی

    روی «ورود با کد» در صفحه روتر بزنید. سپس در بخش «روتر» صفحه حساب، OpenWrt را برگزینید و روی «دریافت کد» کلیک کنید. 8 رقم را در فیلد «کد یک‌بار مصرف» صفحه روتر وارد کنید. اعتبار هر کد 3 دقیقه است.

    آنچه می‌بینید

    کد پس از رقم آخر خودکار فرستاده می‌شود. سپس در «وضعیت» عبارت «متصل» دیده می‌شود.

    شاید به‌جای «دریافت کد» پیامی قرمز ببینید. معنایش این است که حسابتان ایمیل ندارد و روتر حساب بی‌ایمیل را نمی‌پذیرد. اول با ایمیل وارد سایت شوید. دکمه‌های آینه بالای فیلد کد فقط برای یک وضعیت است: روتر به سرویس دسترسی ندارد.

    صفحه روتر OpenWrt، زبانه حساب: فیلد کد یک‌بار مصرف با رقم‌های نمونه داخل کادر و دکمه‌های خاکستری آینه بالای آن
    رقم‌ها نمونه‌اند، نه کد واقعی.
  7. انتخاب دستگاه‌ها

    درست بعد از نصب، هر دستگاهی در شبکه خانگی، چه قدیمی چه تازه، از Ben's VPN استفاده می‌کند. برای خارج کردن دستگاهی از Ben's VPN، در زبانه «دستگاه‌ها» تیکش را بردارید. تنظیم بقیه دستگاه‌ها عوض نمی‌شود.

    حالت برعکس «فقط دستگاه‌های انتخاب‌شده از VPN استفاده می‌کنند» است. این حالت را همان‌جا فعال کنید و برای Ben's VPN فقط دستگاه‌های لازم را تیک بزنید. بقیه دستگاه‌ها و هر دستگاه تازه مستقیم وصل می‌شوند.

    آنچه می‌بینید

    دستگاهی که تیک می‌زنید در کمتر از یک دقیقه به Ben's VPN منتقل می‌شود.

به‌روزرسانی سفت‌افزار

فلش کردن سفت‌افزار تازه بسته‌های نصب‌شده را پاک می‌کند و برنامه هم یکی از آن‌هاست. درست پیش از فلش، روتر را آماده کنید: «آماده‌سازی برای ارتقا» در زبانه «بیشتر»، یا bensvpn prepare-upgrade در SSH. روتر نسخه برنامه و اطلاعات ورود را نگه می‌دارد. تا وقتی برنامه روی سفت‌افزار تازه برنگشته، دستگاه‌ها مستقیم وصل می‌شوند. هنگام فلش، تنظیمات را نگه دارید. هر نسخه پشتیبان از تنظیمات که بعد از این مرحله بگیرید، کلیدهای دسترسی حسابتان را در خود دارد. این نسخه پشتیبان را به کسی ندهید و جایی منتشر نکنید.

وقتی سفت‌افزار تازه بالا آمد، روتر خودش برنامه را دوباره نصب می‌کند و همان حساب را نگه می‌دارد. جابه‌جایی از 24.10 به 25.12 هم همین‌طور است. اگر برنامه برنگشت، مثلاً چون آماده‌سازی انجام نشده بود، فرمان مرحله 3 را از نو اجرا کنید و مرحله 6 را با کد تازه تکرار کنید.

حذف برنامه

در صفحه روتر به زبانه «بیشتر» بروید و «حذف…» را انتخاب کنید. پنجره نام و گذرواژه مدیر را می‌خواهد؛ در فیلد نام از قبل root نوشته شده است. برای تأیید با «حذف» 2 دقیقه فرصت دارید. پس از آن باید پنجره را دوباره باز کنید.

با حذف، اتصال دستگاه‌ها مستقیم می‌شود، تنظیمات برنامه از بین می‌رود و بسته از روتر پاک می‌شود.

اگر صفحه روتر در دسترس نیست، در SSH این دو فرمان را به ترتیب اجرا کنید: bensvpn uninstall، بعد opkg remove bensvpn. روی OpenWrt 25.12 فرمان دوم apk del bensvpn است.

رفتار برنامه

توقف سرویس
‎/etc/init.d/bensvpn stop شبکه را فوراً به اتصال مستقیم می‌برد
قطع و وصل
دستگاه‌هایی که به Ben's VPN سپرده شده‌اند تا وصل شدن دوباره برنامه بی‌اینترنت می‌مانند. به اتصال مستقیم نمی‌روند
به‌روزرسانی‌ها
به‌طور پیش‌فرض خودکار، شب‌ها از 03:00 تا 05:00 به وقت روتر. در «بیشتر» ← «به‌روزرسانی» می‌توانید آن‌ها را خاموش کنید یا با «بررسی به‌روزرسانی‌ها» و «هم‌اکنون نصب شود» یک به‌روزرسانی را فوراً نصب کنید. هنگام به‌روزرسانی، دستگاه‌های متصل به Ben's VPN حدود یک دقیقه اینترنت ندارند
استثناها
در زبانه «استثناها»: پیش‌تنظیم روسیه یا فهرستی از سایت‌های دلخواه

پرسش و پاسخ درباره OpenWrt

پرسش‌های دیگر را از پشتیبانی 24/7 بپرسید: Telegram @bensvpn و [email protected].

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

اول شبکه و نشانی را بررسی کنید: کامپیوتر باید در شبکه همین روتر باشد. Windows بدون فرمان ssh به OpenSSH Client یا PuTTY نیاز دارد. OpenSSH Client از مسیر «Settings»‏ ← «Apps»‏ ← «Optional features» اضافه می‌شود. پس از فلش دوباره، SSH ممکن است پیام REMOTE HOST IDENTIFICATION HAS CHANGED بدهد. کلید قدیمی را با ssh-keygen -R 192.168.1.1 پاک کنید و دوباره وصل شوید.

گذرواژه پذیرفته نمی‌شود

گذرواژه root را وارد کنید. LuCI هم همین گذرواژه را می‌خواهد. روش گذاشتن آن در مرحله 1 آمده است.

خطاهایی درباره wget یا && در ترمینال

فرمان روی کامپیوترتان اجرا شده است، نه روی روتر. مرحله 2 را تکرار کنید و فرمان را بعد از اعلان ⁦root@OpenWrt:~#⁩ جای‌گذاری کنید.

نصب‌کننده با خطا متوقف می‌شود

دلیل بعد از «Critical error» چاپ می‌شود. پیش از پرسش [y/N]، نصب‌کننده فقط اطلاعات روتر را می‌خواند؛ هیچ تغییری نمی‌دهد. دلیل‌های رایج: حساب root گذرواژه ندارد؛ بسته‌ای از مرحله 1 هنوز نصب است؛ روتر اینترنت ندارد؛ RAM کمتر از 200 MiB است؛ نسخه سفت‌افزار پیش از 24.10 است؛ حافظه داخلی جای خالی کافی ندارد.

صفحه روتر در دسترس نیست

از دستگاهی در شبکه اصلی خانه استفاده کنید. شبکه مهمان به این صفحه دسترسی ندارد. اگر «Private DNS» روی Android یا حالت DNS امن مرورگر فعال است، نام bensvpn.home پیدا نمی‌شود: از http://192.168.1.1:8790/‎ یا نشانی روترتان با پورت 8790 استفاده کنید. ضمناً ببینید نصب‌کننده خط «Done» را نوشته باشد.

کد پذیرفته نمی‌شود یا وقتش گذشته است

کد را فقط وقتی بگیرید که زبانه «حساب کاربری» صفحه روتر از قبل باز است. هر کد یک بار و به مدت 3 دقیقه کار می‌کند. پیام صفحه درباره حسابی بدون ایمیل یعنی باید با ایمیل وارد سایت شوید؛ بعد کد جدید بگیرید.

دستگاه به اینترنت وصل است، اما نه از طریق Ben's VPN

در 4 حالت این رفتار طبیعی است: روتر به حسابی وصل نیست، اشتراک پرداخت نشده، برنامه در توقف موقت است، یا سرویس آن متوقف شده است. وضعیت اتصال روتر در زبانه «وضعیت» دیده می‌شود. تیک دستگاه را هم در زبانه «دستگاه‌ها» بررسی کنید.

راهنمای روترهای دیگر

VPN برای روتر
برنامه ما، یا OpenVPN و PPTP
VPN روی روترهای Keenetic و Netcraze
برنامه روی خود روتر
VPN روی روتر MikroTik
کانتینر روی RouterOS 7
VPN روی روتر TP-Link
کلاینت داخلی Archer و فهرست دستگاه‌ها
VPN روی روتر Xiaomi
PPTP در سفت‌افزار کارخانه، یا OpenWrt
VPN روی روتر ASUS
پروفایل OpenVPN، سفت‌افزار جدید یا قدیمی
VPN روی روتر Tenda
کلاینت PPTP و نام کاربری صفحه حساب
VPN روی روتر D-Link
کلاینت سفت‌افزار یا روتر دوم
VPN روی روتر Zyxel
برنامه ما روی Keenetic یا PPTP