कॉन्फ़िगरेशन: SSL सेटअप करना

बारे में

Agent DVR का मुफ़्त संस्करण HTTP का उपयोग करके स्थानीय कनेक्शन के लिए बहुत अच्छा है। हालांकि, दूरस्थ कनेक्शन के लिए सुरक्षा आवश्यक है, और यह वह जगह है जहाँ SSL आता है। Agent DVR के साथ कोई सेटअप किए बिना सुरक्षित दूरस्थ कनेक्शन के लिए, हमारे दूरस्थ वेब पोर्टल का उपयोग करें।

महत्वपूर्ण: SSL, DNS, और port forwarding सेट अप करना थोड़ा मुश्किल हो सकता है, और हम यह गारंटी नहीं दे सकते कि यह सभी नेटवर्क पर विश्वसनीय रूप से काम करेगा। हम दूरस्थ एक्सेस के लिए हमारे दूरस्थ वेब पोर्टल का उपयोग करने की सिफारिश करते हैं। आपको अभी भी Agent चलाने वाले कंप्यूटर की आवश्यकता होगी जो आपके कैमरों से जुड़ा हुआ है, लेकिन आपको किसी अन्य चीज़ के साथ छेड़छाड़ करने की आवश्यकता नहीं होगी।

Pro Tip: एक बार जब आप SSL और DNS को चालू कर लेते हैं, तो आप अपने मोबाइल डिवाइस से अपने Agent DVR को एक्सेस कर सकते हैं और इसे अपने ब्राउज़र के उपकरण मेनू के माध्यम से ऐप्लिकेशन के रूप में जोड़ सकते हैं।

Windows पर SSL

Agent DVR अब SSL को स्वयं समाप्त करता है, इसलिए आपको केवल एक PKCS#12 प्रमाणपत्र फ़ाइल (.p12 या .pfx) की आवश्यकता है जिसमें निजी कुंजी हो। आपको अब प्रमाणपत्र को Windows में स्थापित करने या इसे netsh से बाँधने की आवश्यकता नहीं है।

विकल्प 1 - त्वरित स्व-हस्ताक्षरित प्रमाणपत्र (परीक्षण के लिए): localhost के लिए एक प्रमाणपत्र बनाने और इसे .p12 में निर्यात करने के लिए PowerShell में यह चलाएँ (पासवर्ड को अपनी आवश्यकता के अनुसार बदलें):

$cert = New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "Cert:\CurrentUser\My" -NotAfter (Get-Date).AddYears(5)
$pwd = ConvertTo-SecureString -String "yourpassword" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath "C:\Agent\certificate.p12" -Password $pwd

सार्वजनिक होस्टनाम के लिए localhost के स्थान पर -DnsName "youragentserver.ddns.net" का उपयोग करें।

विकल्प 2 - वास्तविक प्रमाणपत्र (Let's Encrypt): letsencrypt निर्देश का पालन करें, फिर उत्पन्न .pem फ़ाइलों को openssl के साथ .p12 में परिवर्तित करें:

openssl pkcs12 -export -out C:\Certbot\live\youragentserver.ddns.net\certificate.p12 -inkey C:\Certbot\live\youragentserver.ddns.net\privkey.pem -in C:\Certbot\live\youragentserver.ddns.net\fullchain.pem

Agent DVR खोलें, सर्वर आइकन - सेटिंग्स - स्थानीय सर्वर टैब पर क्लिक करें और सेट करें:

  • SSL पोर्ट: HTTPS प्रदान करने के लिए पोर्ट, उदा. 8443 (या मानक HTTPS पोर्ट के लिए 443)।
  • SSL प्रमाणपत्र: आपकी .p12 फ़ाइल का पूर्ण पथ, उदा. C:\Agent\certificate.p12
  • SSL पासवर्ड: वह पासवर्ड जो आपने प्रमाणपत्र बनाते समय सेट किया था।

ठीक है पर क्लिक करें। Agent स्वचालित रूप से स्थानीय सर्वर को पुनः आरंभ करता है। Accepting SSL connections at https://... के लिए लॉग देखें। अब आप यूआई को https://your.server.address:8443 पर लोड कर सकते हैं। SSL पोर्ट पर http:// के साथ ब्राउज़ करने से खाली प्रतिक्रिया मिलती है, इसलिए https:// का उपयोग करना सुनिश्चित करें।

एक स्व-हस्ताक्षरित प्रमाणपत्र (विकल्प 1) को ब्राउज़र द्वारा विश्वास नहीं किया जाता, इसलिए पहली बार जब आप यात्रा करते हैं तो आप एक गोपनीयता चेतावनी देखेंगे। उन्नत पर क्लिक करें फिर localhost को जारी रखें (असुरक्षित) पर क्लिक करें। यह स्व-हस्ताक्षरित प्रमाणपत्रों के लिए अपेक्षित है। एक वास्तविक प्रमाणपत्र (विकल्प 2) चेतावनी नहीं दिखाएगा।

SSL पर Linux / macOS

Agent DVR एक PKCS#12 certificate फ़ाइल (एक .p12 या .pfx) से SSL को समाप्त करता है जिसमें निजी कुंजी होती है।

त्वरित self-signed certificate (परीक्षण के लिए):

openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 1825 -nodes -subj "/CN=localhost"
openssl pkcs12 -export -out certificate.p12 -inkey key.pem -in cert.pem -passout pass:yourpassword

वास्तविक certificate (Let's Encrypt): letsencrypt निर्देशों का पालन करें, फिर उत्पन्न .pem फ़ाइलों को .p12 में बदलें (उस फ़ोल्डर से चलाएं जहां आपका certificate सहेजा गया था):

openssl pkcs12 -export -out certificate.p12 -inkey privkey.pem -in fullchain.pem

Agent DVR के स्थानीय UI में Server आइकन पर क्लिक करें, Server Settings, Local Server टैब, फिर SSL Port, SSL Certificate (आपकी .p12 फ़ाइल का पूर्ण पथ) और SSL Password सेट करें, और OK पर क्लिक करें। Agent स्थानीय सर्वर को स्वचालित रूप से पुनः आरंभ करता है और आप UI को https://your.server.address:8443 पर लोड कर सकते हैं (https:// का उपयोग करें)।

Linux पर, 1024 से कम ports (मानक HTTPS port 443 सहित) को root की आवश्यकता है। सेवा के रूप में स्थापित Agent DVR root के रूप में चलता है, इसलिए 443 काम करता है; यदि आप इसे सामान्य उपयोगकर्ता के रूप में मैन्युअल रूप से चलाते हैं तो 8443 जैसा एक उच्च port चुनें।
सुनिश्चित करें कि प्रमाणपत्र फ़ाइल Agent प्रक्रिया द्वारा पठनीय है। यदि आवश्यक हो तो chmod 644 certificate.p12 चलाएं। एक स्व-हस्ताक्षरित प्रमाणपत्र पहली बार ब्राउज़र गोपनीयता चेतावनी को ट्रिगर करता है (Advanced पर क्लिक करें फिर आगे बढ़ें); एक वास्तविक प्रमाणपत्र नहीं करेगा।