Turris Omnia पर UniFi कंट्रोलर कैसे चलाएं

Turris Omnia UniFi नेटवर्क नियंत्रक से मिलता है

ट्यूरिस ओमानिया राउटर के साथ मेरा अगला रोमांच राउटर के अंदर यूनीफाई नेटवर्क कंट्रोलर को चलाने के लिए एलएक्ससी कंटेनर स्थापित करना था। विचार यह है कि (अंततः) ओम्निया के क्वालकॉम एथरोस क्यूसीए 9880 से उबिकेति यूनीफाइ के अंक में मेरी वाईफाई को अपग्रेड करें।

यदि आप जानते हैं कि क्या करना है तो यह प्रक्रिया बहुत आसान और सरल है। जानकारी अलग-अलग जगहों पर थोड़ी बिखरी हुई है, मैं इस ब्लॉग पोस्ट को एक पूर्ण और आसान-से-निर्देशित मार्गदर्शिका प्रदान करने के लिए लिख रहा हूं।

अनिवार्य रूप से, प्रक्रिया के तीन चरण हैं:

  1. LXC को चलाने के लिए राउटर तैयार करें
  2. UniFi नेटवर्क नियंत्रक को चलाने के लिए एक नया LXC कंटेनर बनाएं
  3. कंटेनर में UniFi नेटवर्क नियंत्रक स्थापित करें

सेटअप LXC

यदि आप अपने Turris हार्डवेयर पर LXC चलाना चाहते हैं, तो आपको अतिरिक्त संग्रहण (एक mSATA SSD ड्राइव) स्थापित करने की आवश्यकता है। अन्यथा आप अपने राउटर के आंतरिक फ्लैश स्टोरेज को नष्ट कर सकते हैं! डॉक्स में कहा गया है:

आंतरिक फ्लैश स्टोरेज पर LXC के संचालन से तेजी से क्षरण हो सकता है और अंततः भंडारण की विफलता हो सकती है। इससे आपकी वारंटी शून्य हो सकती है।

मैं एक पुराने 16GB mSATA ड्राइव के लिए भाग्यशाली था जो मेरे प्राचीन लेनोवो E530 लैपटॉप के साथ आया था। यह मेरी कैबिनेट में वर्षों से पड़ा हुआ था, मुझे खुशी है कि मैंने इसके लिए एक नया उपयोग पाया। यदि आपके पास कोई अतिरिक्त mSATA ड्राइव नहीं है, तो आगे बढ़ें और एक खरीदें - वे आजकल काफी सस्ते हैं।

टिंकर समय!

ओमटा के वाईफाई कार्ड को वायर्ड करने के तरीके में कुछ बदलाव की आवश्यकता है, लेकिन कदम आश्चर्यजनक रूप से आसान हैं। बस यहां आधिकारिक वीडियो गाइड का पालन करें: https://www.youtube.com/watch?v=71_M2N3ga7s

fdisk

आपके नए ड्राइव का विभाजन कैसे होता है, इस पर निर्भर करते हुए, आपको मौजूदा विभाजन को नए के साथ बदलने के लिए fdisk चलाने की आवश्यकता हो सकती है। उदाहरण के लिए, मेरी ड्राइव को दो 8GB विभाजन में विभाजित किया गया था जिसे मैं पूरे उपलब्ध स्थान को लेते हुए एक विभाजन के साथ बदलना चाहता था।

Turris दस्तावेज़ों का पुराना संस्करण mSATA SSD ड्राइव को विभाजित करने पर एक समुदाय द्वारा योगदान दिया गया मार्गदर्शिका प्रदान करता है, मुझे इसका अनुसरण करना बहुत आसान लगा: https://doc.turris.cz/doc/en/public/partition_a_disk

ध्यान दें कि आपको नए विभाजन को प्रारूपित करने की आवश्यकता नहीं है, ट्यूरिस अगले चरणों में इसका ध्यान रखेगा।

स्टोरेज प्लगइन FTW

एक ताजा विभाजन तैयार होने के साथ, यह ट्यूरिस को इसे इस्तेमाल करने के लिए कहने का समय है। Turris इस भाग के लिए एक अच्छा GUI प्रदान करता है, बस डॉक्स में दिए गए चरणों का पालन करें और राउटर को पुनरारंभ करना न भूलें! https://docs.turris.cz/basics/foris/storage-plugin/storage-plugin/

नमस्ते LXC

अगला चरण एलएक्ससी इंफ्रास्ट्रक्चर स्थापित कर रहा है। Foris (Turris Omnia द्वारा प्रदान की गई कॉन्फ़िगरेशन UI पर) LXC कंटेनरों के साथ काम करने के लिए UI प्रदान नहीं करता है, लेकिन यह आपको सभी आवश्यक पैकेजों को स्थापित करने (और उन्हें अद्यतित रखने) की अनुमति देता है। डॉक्स में और जानें: https://docs.turris.cz/geek/lxc/lxc/

एलएक्ससी कंटेनर की व्यवस्था करें

पहला निर्णय जो आपको करने की आवश्यकता है वह है लिनक्स वितरण का उपयोग करने के लिए। यह पता चला है कि यह एक महत्वपूर्ण हिस्सा है और यदि आप इसे गलत पाते हैं, तो आपको सभी चरणों को फिर से करना होगा। मुझे समझाएं क्यों:

  • UniFi कंट्रोलर संस्करण 5.12 (नवीनतम) में एक MongoDB डेटाबेस की आवश्यकता होती है।
  • Turris Omnia में 32 बिट डुअल-कोर ARMv7 CPU है।
  • MongoDB संस्करण 3.x और 4.x केवल ARM64 का समर्थन करते हैं।
  • MongoDB संस्करण 2.6 ARM32 का समर्थन करता है, लेकिन यह अक्टूबर 2016 को जीवन के अंत तक पहुंच गया है और MongoDB अब लिनक्स डिस्ट्रोस के लिए आसानी से इंस्टॉल करने योग्य पैकेज प्रदान नहीं करता है।

सौभाग्य से, Ubuntu 16.04 LTS Xenial बॉक्स से बाहर MongoDB 2.6 संकुल प्रदान करता है। जबकि 16.04 नवीनतम और महानतम से बहुत दूर है, यह अप्रैल 2021 तक समर्थित एलटीएस संस्करण है, जो अप्रैल 2024 तक विस्तारित सुरक्षा रखरखाव के साथ है। इसका मतलब है कि आपको अगले चार वर्षों के लिए उन्नयन के बारे में चिंता करने की आवश्यकता नहीं होगी।

एक नया LXC कंटेनर बनाएं

LuCI कॉन्फ़िगरेशन इंटरफ़ेस में, "सेवा> LXC कंटेनर" (https://192.168.1.1/cgi-bin/luci/admin/services/lxc) पृष्ठ खोलें। नए कंटेनर का नाम दर्ज करें और उपयोग के लिए टेम्पलेट के रूप में Ubuntu 16.04 LTS Xenial चुनें।

जबकि LuCI से नए कंटेनर को शुरू करना संभव है, GUI नए कंटेनर को तुरंत नहीं उठाता (मुझे लगता है कि आपको राउटर को पुनरारंभ करना होगा)। अगले चरणों के लिए CLI पर चलते हैं।

अपने नए कंटेनर से कनेक्ट करें

Ssh (ssh [email protected]) के माध्यम से अपने राउटर से कनेक्ट करें। डिफ़ॉल्ट रूप से, रूट खाते में वही पासवर्ड होता है जिसे आपने LuCI इंटरफ़ेस के लिए कॉन्फ़िगर किया है। आप उस पासवर्ड को Foris इंटरफ़ेस के माध्यम से https://192.168.1.1/foris/config/main/password/ पर बदल सकते हैं।

नए कंटेनर को शुरू करने और उससे कनेक्ट करने के लिए निम्नलिखित दो कमांड चलाएं:

$ lxc-start unifi $ lxc-संलग्न -n unifi

होस्टनाम ठीक करें

LXC कंटेनर एक नई वर्चुअल मशीन है जो आपके होम नेटवर्क में एक और डिवाइस बन जाती है, यह आपके डीएचसीपी सर्वर से नेटवर्क एड्रेस उसी तरह प्राप्त करेगी जैसे अन्य क्लाइंट करते हैं (जैसे आपका कंप्यूटर या मोबाइल फोन)।

मेरे लिए अज्ञात कारणों से, LuCI द्वारा निर्मित LXC कंटेनर होस्ट नाम के रूप में LXC_NAME का उपयोग करते हैं। चलो ठीक है!

अपने पसंदीदा संपादक (मेरा वीआईएम है) का उपयोग करके, मूर्खतापूर्ण स्ट्रिंग LXC_NAME को अधिक वर्णनात्मक नाम (जैसे यूनीफ़ाइ) के साथ बदलने के लिए / etc / hostname और / etc / होस्ट को संपादित करें। Https://forum.turris.cz/t/hostname-for-lxc-container/1232 देखें

हम कंटेनर को अंदर से कॉन्फ़िगर करने के साथ कर रहे हैं, आप इसे अभी से डिस्कनेक्ट कर सकते हैं। (लेकिन कनेक्शन को राउटर से ही रखें।)

ऑटोस्टार्ट सक्षम करें

नव निर्मित कंटेनर स्वचालित रूप से शुरू नहीं होते हैं। आपके राउटर रिबूट (जैसे पावर आउटेज के मामले में) के बाद, कंटेनर को इसे शुरू करने के लिए मैन्युअल हस्तक्षेप की आवश्यकता होती है। यह उन सेवाओं के लिए व्यावहारिक नहीं है जिन पर हम हमेशा बने रहना चाहते हैं।

Https://docs.turris.cz/geek/lxc/lxc#starting-the-container-at-boot पर आधिकारिक गाइड का पालन करके कंटेनर के ऑटो-स्टार्ट को सक्षम करें

अपने LXC कंटेनर को ढूंढना आसान बनाएं

जैसा कि मैंने पहले उल्लेख किया है, कंटेनर डीएचसीपी के माध्यम से कॉन्फ़िगर किया गया सिर्फ एक और नेटवर्क क्लाइंट है। डिफ़ॉल्ट रूप से, डीएचसीपी आईपी पते को गतिशील रूप से असाइन करता है, जिसका अर्थ है कि आपके कंटेनर का आईपी पता समय के साथ बदल सकता है। यह बहुत व्यावहारिक नहीं है - इससे पहले कि आप इसे कनेक्ट कर सकें, आपको कंटेनर का वर्तमान आईपी पता देखना होगा।

मैं कंटेनर के लिए कस्टम आईपी पते के साथ एक स्थिर डीएचसीपी पट्टे आवंटित करने और इस पते के लिए एक डीएनएस प्रविष्टि जोड़ने की सलाह देता हूं।

  1. Https://192.168.1.1/cgi-bin/luci/admin/network/dhcp पर जाएं, "स्टेटिक लीज़" पर स्क्रॉल करें और एक नया रिकॉर्ड जोड़ें। अपने एलएक्ससी कंटेनर के मैक पते को खोजने के लिए "सक्रिय डीएचसीपी पट्टों" में सूची देखें।
  2. Https://192.168.1.1/foris/config/main/dns/ पर जाएं और "DNS में DHCP क्लाइंट सक्षम करें" चेक करें। अपने स्थानीय होस्ट्स के लिए उपयोग करने के लिए एक शीर्ष-स्तरीय डोमेन चुनें, जैसे। Https: //unifi.lan/ पाने के लिए अपने LXC कंटेनर के पते के रूप में।

UniFi नेटवर्क नियंत्रक स्थापित करें

यह आश्चर्यजनक रूप से आसान हो जाता है! अनिवार्य रूप से, आपको यूबिकिटी पैकेज रिपॉजिटरी को जोड़ना होगा और फिर एप्टी-गेट इंस्‍टॉल यूनिफी चलाना होगा। बस अपने कंटेनर को फिर से संलग्न करें (lxc-संलग्न का उपयोग करके) और आधिकारिक Ubiquity गाइड का पालन करें: https://help.ubnt.com/hc/en-us/articles/220066768-UniFi-How-to-Install-and-Update -via-अपार्ट-ऑन-डेबियन या उबंटू

वैकल्पिक रूप से, आप यहां UniFi समुदाय द्वारा प्रदान की गई सभी इन-वन-वन इनस्टॉल और अपडेट स्क्रिप्ट का उपयोग कर सकते हैं: https://community.ui.com/questions/UniFi-Installation-Scripts-or-UniFi-Easy-Update-Script-or -UniFi-Lets-Encrypt-or-Ubuntu-16-04-18-04- / ccbc7530-dd61-40a7-82ec-22b17f027776 (कृपया ध्यान दें कि मैंने इसे स्वयं नहीं चलाया था, मुझे पता नहीं है कि स्क्रिप्ट काम करती है या नहीं हमारे सेटअप।)

महत्वपूर्ण: आप MongoDB संस्करण 2.6 स्थापित और चलाने जा रहे हैं। यह संस्करण 2016 से समर्थित नहीं है, सुरक्षा कमजोरियां हो सकती हैं। सुनिश्चित करें कि डेटाबेस सर्वर आपके नेटवर्क के संपर्क में नहीं है! सौभाग्य से, डिफ़ॉल्ट कॉन्फ़िगरेशन सर्वर को 127.0.0.1 पर केवल configuration से बांधता है। जब तक आप उस कॉन्फ़िगरेशन को नहीं बदलते तब तक सब अच्छा होना चाहिए।

वैकल्पिक रूप से, आप यूबीटीआईटी द्वारा जारी टीएसएल प्रमाण पत्र या पैकेज स्थापित स्क्रिप्ट पर भरोसा करने से बचने के लिए एक HTTPS प्रमाणपत्र उत्पन्न कर सकते हैं। आधिकारिक डॉक्स यहां देखें: https://help.ubnt.com/hc/en-us/articles/212500127-UniFi-SSL-certificate-error-upon-opening-controller-page दुर्भाग्य से, यह एक स्व-हस्ताक्षरित प्रमाण पत्र बनाता है जो ब्राउज़रों पर भरोसा नहीं करता है, लेकिन कम से कम आप यह सुनिश्चित कर सकते हैं कि किसी और के पास निजी कुंजी नहीं है।

और बस! अब आप ब्राउज़र में https: //unifi.lan: 8443 / खोल सकते हैं और अपने नियंत्रक के कॉन्फ़िगरेशन के साथ आगे बढ़ सकते हैं।

भविष्य में, आप नियंत्रक को एक नए संस्करण में अपग्रेड करना चाह सकते हैं। यह सुपर आसान है क्योंकि यह अन्य लिनक्स पैकेज को अपग्रेड करने के लिए समान प्रक्रिया है।

# उपलब्ध पैकेज और संस्करणों के डेटाबेस को अपडेट करें $ apt-get अपडेट
# अपने नवीनतम संस्करण $ apt-get उन्नयन के लिए सभी पैकेजों को अपग्रेड करें