पॉडकास्ट ट्रान्सक्रिप्ट पहा
Ubiquiti UniFi साठी Captive Portal — एक Purple तांत्रिक माहिती
[परिचय आणि संदर्भ — अंदाजे १ मिनिट]
Purple तांत्रिक माहितीच्या (Technical Briefing) मालिकेत आपले स्वागत आहे. मी तुमचा होस्ट आहे, आणि आज आपण Ubiquiti UniFi इन्फ्रास्ट्रक्चरवर बाह्य (external) captive portal कशा प्रकारे उपयोजित करावे याच्या तपशीलांबद्दल बोलणार आहोत — जे जागतिक स्तरावर हॉस्पिटॅलिटी, रिटेल आणि एंटरप्राइझ वातावरणात सर्वाधिक वापरल्या जाणाऱ्या नेटवर्क प्लॅटफॉर्मपैकी एक आहे.
जर तुम्ही आयटी मॅनेजर, नेटवर्क आर्किटेक्ट किंवा UniFi Cloud Gateways, Dream Machines किंवा UniFi Network Application सोबत काम करणारे सिस्टम्स इंटिग्रेटर असाल, तर हा एपिसोड तुमच्यासाठी आहे. आम्ही तुम्हाला हे सांगणार आहोत की बाह्य पोर्टल यंत्रणा प्रत्यक्षपणे अंतर्गत कशा प्रकारे कार्य करते, ते योग्यरित्या कसे कॉन्फिगर करावे, सामान्य त्रुटी कुठे आढळतात आणि मूलभूत स्पॅश पेजपेक्षा अधिक गरज असलेल्या ठिकाणांसाठी UniFi उपयोजनावर (deployment) Purple चे आवरण जोडणे हा योग्य आर्किटेक्चरल निर्णय का आहे.
चला तर मग सुरुवात करूया.
[तांत्रिक सखोल माहिती — अंदाजे ५ मिनिटे]
प्रथम, जेव्हा एखादे अतिथी डिव्हाइस captive portal सक्षम असलेल्या UniFi SSID शी कनेक्ट होते, तेव्हा नेमके काय घडते हे समजून घेऊ.
जेव्हा एखादे अतिथी डिव्हाइस तुमच्या अतिथी SSID शी जोडले जाते, तेव्हा UniFi Access Point नेहमीप्रमाणे DHCP द्वारे त्याला आयपी (IP) ॲड्रेस वाटप करतो. परंतु ते डिव्हाइस लगेचच UniFi ज्याला "pending" स्थिती (state) म्हणते, त्यामध्ये ठेवले जाते. या स्थितीत, AP ची अंगभूत DNSmasq प्रक्रिया डिव्हाइसद्वारे केल्या जाणाऱ्या प्रत्येक DNS क्वेरीला अडवते, मग ते डिव्हाइस कोणत्याही DNS सर्व्हरचा वापर करत असले तरीही. AP सर्व DNS ट्रॅफिक स्वतःकडे वळवतो (redirect करतो).
त्याच वेळी, AP पोर्ट ८० वर एक लाईटवेट HTTP रिडायरेक्टर चालवतो. ज्या क्षणी अतिथीच्या ब्राउझरमधून कोणतीही HTTP विनंती केली जाते - आणि हा महत्त्वाचा शब्द आहे, HTTP, HTTPS नाही - रिडायरेक्टर ३०२ रिडायरेक्ट प्रतिसाद देतो, ज्यामुळे ब्राउझर captive portal च्या स्प्लॅश पेजवर पाठवला जातो. हीच ती यंत्रणा आहे जी iOS आणि Android डिव्हाइसेसवर "Sign in to WiFi" नोटिफिकेशन ट्रिगर करते.
आता, येथेच अंगभूत (built-in) पोर्टल विरुद्ध बाह्य (external) पोर्टल यामधील फरक अत्यंत महत्त्वाचा ठरतो. अंगभूत UniFi Hotspot Portal सह, स्प्लॅश पेज थेट UniFi Network Application द्वारे सर्व्ह केले जाते. हे कार्यात्मक आहे, सेट अप करण्यास जलद आहे, परंतु अत्यंत मर्यादित आहे. तुम्हाला मूलभूत पासवर्ड प्रमाणीकरण, व्हाउचर आणि Stripe पेमेंट मिळतात. यामध्ये ईमेल कॅप्चर, सोशल लॉगिन, GDPR संमती व्यवस्थापन, CRM इंटिग्रेशन आणि सेशन काउंटच्या पलीकडे कोणतेही अर्थपूर्ण ॲनालिटिक्स मिळत नाही.
जेव्हा तुम्ही External Portal Server कॉन्फिगर करता — ज्या सेटिंगवर आपण आज लक्ष केंद्रित करत आहोत — तेव्हा तुम्ही UniFi कंट्रोलरला अतिथींना पूर्णपणे वेगळ्या वेब ॲप्लिकेशनवर वळवण्यास सांगत असता. आमच्या बाबतीत, ते Purple आहे. तुम्ही External Portal Server फील्डमध्ये एंटर करता तो URL त्या सर्व ३०२ रिडायरेक्ट्सचे गंतव्यस्थान (destination) बनतो.त्या रिडायरेक्ट URL बद्दलचा महत्त्वाचा तांत्रिक तपशील येथे आहे. जेव्हा UniFi एखाद्या पाहुण्याला (guest) तुमच्या बाह्य पोर्टलवर रिडायरेक्ट करते, तेव्हा ते URL मध्ये अनेक क्वेरी पॅरामीटर्स जोडते. यामध्ये: AP MAC ॲड्रेस, क्लायंट डिव्हाइस MAC ॲड्रेस, Unix टाइमस्टॅम्प, क्लायंट ज्या मूळ URL वर पोहोचण्याचा प्रयत्न करत होता तो पत्ता, आणि SSID नाव यांचा समावेश होतो. तुमचे बाह्य पोर्टल - या संदर्भात Purple - हे पॅरामीटर्स कॅप्चर करते, कनेक्टिंग डिव्हाइस ओळखण्यासाठी त्यांचा वापर करते, योग्य स्प्लॅश पृष्ठ (splash page) सादर करते, ऑथेंटिकेशन हाताळते, आणि नंतर त्या MAC ॲड्रेसला ऑथराइज करण्यासाठी UniFi Network Application ला पुन्हा API कॉल करते.
तो API कॉल हा अत्यंत महत्त्वाचा हँडशेक आहे. UniFi Network Application 9.1 आणि त्यानंतरच्या आवृत्त्यांमध्ये, योग्य की-आधारित (key-based) ऑथेंटिकेशनसह अधिकृत REST API उपलब्ध आहे. ऑथरायझेशन एंडपॉइंट हा साइट्स API च्या व्हर्जन वन साठी असलेला POST रिक्वेस्ट आहे, जो विशिष्ट क्लायंट आयडीला लक्ष्य करतो, ज्यामध्ये JSON बॉडी असते जी मिनिटांमध्ये वेळ मर्यादा, मेगाबाइट्समध्ये डेटा वापर मर्यादा आणि प्रति सेकंद किलोबिट्समध्ये रेट मर्यादा निर्दिष्ट करू शकते. एकदा कंट्रोलरला ते ऑथरायझेशन मिळाले की, ते AP ला सूचना पाठवते, आणि पाहुणा प्रलंबित (pending) मधून ऑथराइज्ड (authorised) कडे जातो. इंटरनेटचा ॲक्सेस मंजूर केला जातो.
आता Walled Garden बद्दल बोलूया, ज्याला UniFi प्री-ऑथरायझेशन ॲक्सेस (Pre-Authorization Access) म्हणते. पाहुण्यांनी ऑथेंटिकेशन करण्यापूर्वी ते ज्या डोमेन्स आणि IP ॲड्रेसवर पोहोचू शकतात त्यांची ही व्हाइटलिस्ट (whitelist) आहे. हे अत्यंत आवश्यक आहे, आणि चुकीच्या कॉन्फिगरेशनच्या सर्वात सामान्य कारणांपैकी हे एक आहे.
किमानपक्षी, तुमच्या walled garden मध्ये तुमच्या Purple पोर्टलचे पूर्णपणे पात्र डोमेन नाव (fully qualified domain name), आणि Purple च्या इन्फ्रास्ट्रक्चरचे IP ॲड्रेसेस किंवा CIDR रेंज समाविष्ट असणे आवश्यक आहे. जर तुम्ही सोशल लॉगिन - Facebook, Google, Microsoft - वापरत असाल, तर तुम्हाला त्या प्रदात्यांसाठी OAuth एंडपॉईंट डोमेन्स देखील जोडणे आवश्यक आहे. Google चे लॉगिन एंडपॉइंट्स अनेक IP रेंज आणि accounts.google.com आणि oauth2.googleapis.com सह अनेक डोमेन्समध्ये पसरलेले आहेत. Facebook च्या लॉगिन इन्फ्रास्ट्रक्चरला देखील अशाच प्रकारे अनेक एंट्रीज आवश्यक आहेत. Purple चे दस्तऐवज (documentation) आवश्यक असलेल्या अचूक एंट्रीजची अद्ययावत सूची प्रदान करते, आणि हे प्रदाते त्यांचे इन्फ्रास्ट्रक्चर अपडेट करत असल्याने ही सूची अद्ययावत ठेवली जाते.
UniFi बाबत एक गंभीर समस्या आहे जी अनेक डेप्लॉयमेंट्समध्ये अडथळा निर्माण करते. AP वरील HTTP रिडायरेक्टर फक्त पोर्ट 80 वरील प्लेन HTTP ट्रॅफिक अडवतो. आधुनिक डिव्हाइसेस - iOS, Android, Windows, macOS - हे सर्व HTTPS-आधारित Captive Portal शोधतात. Apple डिव्हाइसेस HTTPS वर captive.apple.com वर जातात. Android डिव्हाइसेस connectivitycheck.gstatic.com वर जातात. जर त्या HTTPS विनंत्यांना विशिष्ट प्रतिसाद मिळाला नाही, तर डिव्हाइस ठरवू शकते की तेथे कोणतेही Captive Portal नाही आणि फक्त साइन-इन प्रॉम्प्ट दाखवण्यात अपयशी ठरू शकते.
याचा उपाय म्हणजे तुमच्या walled garden मध्ये प्रमुख ऑपरेटिंग सिस्टीम्ससाठी Captive Portal डिटेक्शन डोमेन्स समाविष्ट असल्याची खात्री करणे, आणि तुमचे Purple पोर्टल वैध, विश्वसनीय SSL प्रमाणपत्रासह HTTPS वर ॲक्सेस करण्यायोग्य आहे याची खात्री करणे. सेल्फ-साइन केलेल्या प्रमाणपत्रांमुळे ब्राउझर सुरक्षा इशारे मिळतील जे पोर्टल लोड होण्यापासून रोखतात. प्रॉडक्शन डेप्लॉयमेंट्ससाठी ही तडजोड न करता येणारी गोष्ट आहे.
इतर UniFi-विशिष्ट विचार म्हणजे कंट्रोलरची सुलभता (accessibility). UniFi Network Application - मग ते Cloud Gateway वर, Cloud Key वर किंवा स्वतः होस्ट केलेल्या सर्व्हरवर चालत असले तरी - API ऑथोरायझेशन कॉल्स यशस्वी होण्यासाठी Purple च्या इन्फ्रास्ट्रक्चरवरून पोहोचण्यायोग्य (reachable) असणे आवश्यक आहे. जर तुमचे कंट्रोलर NAT च्या मागे खाजगी नेटवर्कवर असेल, तर तुम्हाला संबंधित API पोर्ट्स सुलभतेने उपलब्ध आहेत याची खात्री करावी लागेल. स्वतः होस्ट केलेल्या कंट्रोलर्ससाठी, हे सामान्यतः लेगसी API साठी पोर्ट 8443 आहे किंवा आवृत्ती 9.1 मध्ये सादर केलेल्या नवीन API साठी मानक HTTPS पोर्ट 443 आहे. Purple च्या सपोर्ट डॉक्युमेंटेशनमध्ये नेमके IP रेंजेस दिलेले आहेत ज्यांना तुमच्या कंट्रोलरवर इनबाउंड ॲक्सेस आवश्यक आहे.
RADIUS-आधारित ऑथेंटिकेशनसाठी - जे तुम्ही ओपन गेस्ट SSID मॉडेलऐवजी WPA2-Enterprise किंवा WPA3-Enterprise SSIDs सोबत Purple डिप्लॉय करत असताना सुसंगत असते - UniFi चे इन-बिल्ट RADIUS सर्व्हर मानक 802.1X EAP पद्धतींना सपोर्ट करते. तुम्ही Settings, Networks, RADIUS Servers अंतर्गत RADIUS प्रोफाईल कॉन्फिगर करता आणि नंतर तुमच्या SSID कॉन्फिगरेशनमध्ये त्या प्रोफाईलचा संदर्भ देता. UniFi हे आवृत्ती 8.4 आणि त्यापुढील आवृत्तीपासून TLS वरील RADIUS ला देखील सपोर्ट करते, ज्याला RADSEC म्हणून ओळखले जाते, जे AP आणि ऑथेंटिकेशन सर्व्हर दरम्यानच्या RADIUS ट्रॅफिकला एन्क्रिप्ट करते. मल्टि-साईट डिप्लॉयमेंटसाठी जिथे RADIUS ट्रॅफिक सार्वजनिक इंटरनेटवरून प्रवास करते, तिथे RADSEC ची जोरदार शिफारस केली जाते.
[अमलबजावणीच्या शिफारसी आणि अडचणी — अंदाजे 2 मिनिटे]
UniFi वर Purple डिप्लॉय करणाऱ्या कोणत्याही क्लायंटसोबत मी ज्या प्रॅक्टिकल अंमलबजावणी चेकलिस्टचा वापर करतो, ती मी तुम्हाला सांगतो.
पहिले, नेटवर्क सेगमेंटेशन. तुमचे गेस्ट SSID एका समर्पित VLAN वर असणे आवश्यक आहे, जे तुमच्या कॉर्पोरेट आणि IoT नेटवर्कपासून वेगळे असेल. UniFi हे सोपे करते - Settings, Networks मध्ये एक समर्पित नेटवर्क तयार करा, त्याला एक VLAN ID असाइन करा आणि तुमचे गेस्ट SSID त्या नेटवर्कशी असोसिएट करा. गेस्ट-टू-गेस्ट ट्रॅफिक रोखण्यासाठी गेस्ट नेटवर्कवर क्लायंट आयसोलेशन सक्षम करा.
दुसरे, कंट्रोलरकडे एक वैध FQDN आणि एक विश्वसनीय SSL सर्टिफिकेट असणे आवश्यक आहे. IP ॲड्रेसवर अवलंबून राहू नका. योग्य डोमेन नेम वापरा, त्यावर Let's Encrypt किंवा व्यावसायिक सर्टिफिकेट मिळवा आणि ते सर्टिफिकेट वापरण्यासाठी UniFi कॉन्फिगर करा. यामुळे बहुतांश HTTPS रिडायरेक्ट समस्या सुटतात.
तिसरे, तुमची वॉल्ड गार्डन (walled garden) काळजीपूर्वक तयार करा आणि त्याची चाचणी घ्या. किमान नोंदी असाव्यात: तुमचे Purple पोर्टल डोमेन आणि त्याच्या IP रेंजेस, iOS, Android आणि Windows साठी कॅप्टिव्ह पोर्टल डिटेक्शन डोमेन्स आणि तुम्ही वापरत असलेले कोणतेही OAuth प्रोव्हाइडर डोमेन्स. आधी कधीही नेटवर्कशी कनेक्ट न केलेल्या डिव्हाइससह चाचणी घ्या - चाचणी दरम्यान कॅश केलेले DNS आणि नेटवर्क स्टेट वॉल्ड गार्डनमधील त्रुटी लपवू शकतात.
चौथे, API इंटिग्रेशनसाठी, किमान आवश्यक परवानग्यांसह UniFi Network Application मध्ये समर्पित लोकल ॲडमिन अकाउंट वापरा. तुमचे प्राथमिक ॲडमिन क्रेडेंशियल्स वापरू नका. तुम्ही Network Application 9.1 किंवा त्यानंतरच्या आवृत्तीवर असल्यास, Control Plane, Integrations अंतर्गत नवीन API की मेकॅनिझम वापरा - हे अधिक सुरक्षित आहे आणि यासाठी क्रेडेंशियल-आधारित ऑथेंटिकेशनची आवश्यकता नसते.
पाचवे, session duration चा काळजीपूर्वक विचार करा. UniFi ची डिफॉल्ट गेस्ट session expiry आठ तासांइतकी लहान असू शकते. हॉस्पिटॅलिटी डिप्लॉयमेंट्ससाठी जेथे पाहुणे अनेक रात्री मुक्काम करू शकतात, तेथे Purple पोर्टल सेटिंग्जमध्ये योग्य session durations कॉन्फिगर करा आणि API ऑथरायझेशन कॉलमध्ये हे ड्युरेशन्स योग्यरित्या पास केले गेल्याची खात्री करा.
मी पाहलेली सर्वात सामान्य चूक म्हणजे अशा सेल्फ-होस्ट केलेल्या कंट्रोलरवर डिप्लॉय करणे जे सार्वजनिकरित्या ॲक्सेसिबल नाही. जर Purple पाहुण्यांना ऑथराईझ करण्यासाठी तुमच्या कंट्रोलरपर्यंत पोहोचू शकले नाही, तर पोर्टल लोड होईल परंतु ऑथेंटिकेशन गुप्तपणे अपयशी ठरेल. लाईव्ह जाण्यापूर्वी नेहमी Purple च्या इन्फ्रास्ट्रक्चरवरून API कनेक्टिव्हिटी तपासा.
[रॅपिड-फायर प्रश्नोत्तरे - साधारण १ मिनिट]
हे UniFi Dream Machine Pro वर कार्य करते का? होय. सर्व UniFi OS कन्सोल - UDM, UDM Pro, UDM SE, UCG Ultra, UCG-Max - External Portal Server कॉन्फिगरेशनला सपोर्ट करतात. Network Application डिव्हाइसवर चालते.
मी एकाच Purple अकाउंटवरून अनेक UniFi साईट्सवर Purple वापरू शकतो का? होय. Purple चे मल्टी-साईट आर्किटेक्चर तंतोतंत याचसाठी डिझाइन केले आहे. प्रत्येक वेन्यू Purple मध्ये स्वतंत्र साईट म्हणून कॉन्फिगर केला जातो आणि संबंधित UniFi साईटशी मॅप केला जातो.
मला UniFi गेटवेवर फायरवॉल पोर्ट्स उघडण्याची गरज आहे का? आपल्याला हे सुनिश्चित करावे लागेल की गेस्ट VLAN ट्रॅफिक पोर्ट 443 वरील Purple पोर्टल डोमेनपर्यंत पोहोचू शकेल. कंट्रोलर API पोर्ट देखील Purple च्या सर्व्हरवरून ॲक्सेसिबल असणे आवश्यक आहे. Purple चे डॉक्युमेंटेशन विशिष्ट IP रेंज प्रदान करते.
WPA3 बद्दल काय? UniFi WPA3 Personal आणि WPA3 Enterprise ला सपोर्ट करते. Captive Portal मेकॅनिझम गेस्ट नेटवर्क्सवर WPA3 Personal सोबत काम करते. WPA3 Enterprise हे 802.1X आणि RADIUS वापरते, जो एक वेगळा ऑथेंटिकेशन फ्लो आहे.
[सारांश आणि पुढील पावले - साधारण १ मिनिट]
थोडक्यात सांगायचे तर: UniFi वर एक्सटर्नल Captive Portal म्हणून Purple डिप्लॉय करणे हे एक उत्तम प्रकारे सपोर्टेड, आर्किटेक्चरली सुदृढ इंटिग्रेशन आहे. महत्त्वाच्या पायऱ्या आहेत: तुमच्या Purple पोर्टल URL कडे निर्देशित करणाऱ्या External Portal Server पर्यायासह तुमचे गेस्ट SSID कॉन्फिगर करा, एक व्यापक walled garden तयार करा ज्यामध्ये Purple चे इन्फ्रास्ट्रक्चर आणि तुम्ही वापरत असलेले कोणतेही OAuth प्रोव्हायडर्स समाविष्ट असतील, तुमच्या UniFi कंट्रोलरकडे वैध SSL सर्टिफिकेट असल्याची आणि ते Purple च्या API सर्व्हरवरून ॲक्सेसिबल असल्याची खात्री करा आणि तुमच्या वेन्यूच्या प्रकारासाठी योग्य session durations कॉन्फिगर करा.
बिझनेस केस अगदी सोपी आहे. इन-बिल्ट UniFi पोर्टल तुम्हाला एक स्प्लॅश पेज देते. Purple तुम्हाला एक कंप्लायन्स-रेडी, ॲनालिटिक्स-ड्रिव्हन गेस्ट एक्सपिरियन्स प्लॅटफॉर्म देते जे तुमच्या CRM सोबत इंटिग्रेट होते, GDPR संमतीअंतर्गत फर्स्ट-पार्टी डेटा गोळा करते आणि वेन्यू ऑपरेटर्स आणि मार्केटिंग टीम्सना खरोखर आवश्यक असणारे फूटफॉल आणि ड्वेल-टाइम ॲनालिटिक्स प्रदान करते.
जर तुम्ही मोठ्या प्रमाणावर UniFi डिप्लॉय करणारे MSP किंवा सिस्टम्स इंटिग्रेटर असाल, तर Purple चे मल्टी-साईट मॅनेजमेंट आणि व्हाईट-लेबल क्षमता तुमच्या क्लायंटसाठी योग्य पर्याय ठरतात.
तपशीलवार कॉन्फिगरेशन डॉक्युमेंटेशन, walled garden IP लिस्ट आणि API इंटिग्रेशन गाईड्ससाठी, purple.ai ला भेट द्या. ऐकल्याबद्दल धन्यवाद.