
منصة خفيفة لإدارة أجهزة OpenWRT للشبكات الصغيرة. إعدادات مركزية، ومراقبة، وإدارة WiFi لعدد 2–20 جهازًا مع نشر بسيط وتوافق مع OpenWISP.
تحذير: هذا إصدار مبكر، يرجى قراءة ملاحظات الإصدار لجميع الإصدارات حتى الآن
صُمم OpenSOHO لإدارة عدد صغير من أجهزة الشبكة القائمة على OpenWRT. ومن هنا جاء اسم SOHO من Small Office Home Office (SOHO) Networks.
إنه مستوحى من OpenWISP، لكنه يستهدف الشبكات الأصغر من أن تتم إدارتها باستخدام OpenWISP. كما ذكر OpenWisp:
ومع ذلك، قد لا يكون OpenWISP الخيار الأنسب للشبكات الصغيرة جدًا (أقل من 20 جهازًا)، أو المؤسسات التي تفتقر إلى الخبرة في مجال تقنية المعلومات، أو الشركات التي تبحث عن بدائل مفتوحة المصدر لأغراض توفير التكاليف فقط.
الإصدارات التالية تم اختبارها
يتطلب إعداد OpenSOHO بضع خطوات بسيطة، كل منها مُفصّل في الأقسام أدناه:
نزّل أحدث إصدار من OpenSOHO (أو استخدم حاوية docker)
شغّل OpenSOHO
أولاً، اختر سرًا مشتركًا (shared secret) يسمح لأجهزة OpenWRT (باستخدام openwisp-config) بالتسجيل في OpenSOHO.
اختر سلسلة عشوائية طويلة لتحقيق الأمان الأمثل.
يجب أن يطابق ما ستُهيّئه في LuCI في الخطوات التالية.
OPENSOHO_SHARED_SECRET=randompassphrase ./opensoho serve --http 0.0.0.0:8090
الآن، يُخرج OpenSOHO عنوان URL في سطر الأوامر يسمح لك بإنشاء حساب المسؤول. ما عليك سوى فتح عنوان URL في متصفحك.
بدلاً من ذلك، يمكنك إنشاء حساب المسؤول عبر سطر الأوامر:
./opensoho superuser upsert EMAIL PASS
opkg install openwisp-config openwisp-monitoring luci-app-openwisp # OpenWRT 24.10
apk add openwisp-config openwisp-monitoring luci-app-openwisp # OpenWRT 25.12+
إذا كنت تريد استخدام توجيه العملاء 802.11v (client steering)، فإن الحزمة الكاملة wpad-mbedtls ضرورية.
على OpenWRT 24.10
opkg remove wpad-basic-mbedtls && \
opkg install wpad-mbedtls && \
service wpad restart
على OpenWRT 25.12+
apk del wpad-basic-mbedtls && \
apk add wpad-mbedtls && \
service wpad restart
بعد تثبيت wpad-mbedtls، جرّب service restart wpad أولاً، وإلا فقد تكون هناك حاجة إلى إعادة تشغيل للتبديل إلى ملف wpad الثنائي الجديد. إذا لم تفعل ذلك، فقد تحصل على خطأ مثل daemon.notice netifd: radio1 (28210): WARNING (wireless_add_process): executable path /usr/sbin/wpad does not match process 1842 path (/usr/sbin/wpad (deleted)).
(يُرجى ملاحظة أن توجيه العملاء 802.11v لا يزال قيد التطوير)
Server URL وShared secret فقط.
Server URL. مثال على عنوان URL: http://192.168.1.1:8090OPENSOHO_SHARED_SECRET).Update Interval إلى 30 ثانية لتحديثات أسرع. (يقوم OpenSOHO بذلك نيابةً عنك إذا لم تفعل)يُوصى بشدة بتفعيل المراقبة، لأن OpenSOHO يستنتج الكثير من إعدادات OpenWRT الحالية ويقوم بتعبئتها لتسهيل الإعداد.
Enabled الخاصة بالجهاز على true.numradios على القيمة الصحيحة. على سبيل المثال، بالنسبة لجهاز 2.4 + 5GHz، ستكون هذه القيمة 2.numradios).يأتي OpenSOHO مع لوحة معلومات أساسية. يمكن الوصول إليها عبر الزر في أقصى يسار الشريط الجانبي، مباشرة أسفل شعار OpenSOHO.
يُرجى ملاحظة أن هذه اللوحة ليست بديلاً عن أدوات الرسوم البيانية الأكثر تقدمًا، فهي أساسية وستُبقى كذلك عن قصد.
يمكن الآن الوصول إلى OpenSoho عبر http://ipaddress:8090/_/
هناك عدة مجموعات إعداد:
هؤلاء هم العملاء المتصلون بشبكة Wi-Fi. هذا الجدول للقراءة فقط، باستثناء الاسم المستعار (alias). يمكن استخدامه لإعطاء الأجهزة اسمًا يسهل قراءته. يعمل هذا بشكل صحيح فقط عندما لا يقوم العميل بتبديل عنوان mac الخاص به عشوائيًا.
يحتوي على قائمة العملاء المتصلين حاليًا بشبكة Wi-Fi الخاصة بك. لعرض عنوان IP للجهاز، يحتاج OpenSOHO إلى الوصول إلى سجلات DHCP (DHCP leases) الخاصة بك. للقيام بذلك، يجب أن يكون برنامج المراقبة الخفي openwisp monitoring قيد التشغيل على الجهاز الذي يحتوي على خادم DHCP. الأجهزة ذات عنوان IP الثابت لن تحصل على عنوان IP. هذا قيد معروف منذ الإصدار 0.12.0.
هذه هي الأجهزة المتصلة.
healthy تعني أن الجهاز تواصل خلال الدقيقة الأخيرة. إذا لم يحدث ذلك، تصبح حالة الصحة unhealthy وقد يكون هناك خطأ ما في الجهاز أو اتصاله.تحقق مما إذا كانت حالة صحة الجهاز healthy.
يعرض هذا العرض جميع عملاء Wi-Fi الذين ما زالوا متصلين خلال الثلاثين ثانية الماضية.
يمكن دمج مراقبة OpenSOHO مع Home Assistant. (مزيد من المعلومات) صُممت واجهة REST API هذه للاستخدام مع Home Assistant، ولكن يمكن أيضًا دمجها مع أدوات أخرى.
عند تغيير Server URL الخاص بـ OpenWISP في LuCI ولا يبدو أن الجهاز يسجّل مع وحدة التحكم الجديدة بشكل صحيح.
لإصلاح ذلك:
uci delete openwisp.http.uuid
uci delete openwisp.http.key
/etc/init.d/openwisp-config restart
يبدو أن هناك مشكلة في OpenWRT حيث لا يتم تفعيل أول SSID مُعد على جهاز Wi-Fi تلقائيًا. الحل البديل: انقر على زر التفعيل في LuCI.
go mod tidy
يُستخدم السر المشترك بواسطة openwisp-config للتسجيل. اختر سلسلة عشوائية طويلة لتحقيق الأمان الأمثل.
تشغيل اختبارات الوحدة:
go test -cover -v -coverprofile=coverage.out
go tool cover -html=coverage.out
تُعتبر بعض ميزات OpenWISP (حاليًا) خارج نطاق OpenSOHO
الهدف هو الاستفادة من pocketbase إلى أقصى حد. يمكن إجراء تعديلات صغيرة نظرًا لأن الواجهة الخلفية pocketbase تفتقر حاليًا إلى نظام إضافات (plug-in). لكن ليس الهدف إنشاء fork من pocketbase، لذا تبقى عملية دمج التغييرات القادمة من upstream مباشرة.
GITHUB_TOKEN=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa goreleaser release