Computer >> कंप्यूटर >  >> प्रणाली >> Windows Server

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

इस गाइड में, हम आपको दिखाएंगे कि विंडोज सर्वर 2019/2016/2012 R2 पर चल रहे IIS वेब सर्वर पर एक साइट के लिए एक मुफ्त TLS/SSL Let's Encrypt सर्टिफिकेट कैसे इंस्टॉल और बाइंड करें।

सामग्री:

  • आइए विंडोज़ के लिए एन्क्रिप्ट और एसीएमई क्लाइंट करें
  • डब्ल्यूएसीएस क्लिंट विंडोज सर्वर पर आईआईएस में लेट्स एनक्रिप्ट टीएलएस सर्टिफिकेट इंस्टॉल करेगा
  • आईआईएस यूआरएल पुनर्लेखन का उपयोग करके एचटीटीपी से एचटीटीपीएस पर रीडायरेक्ट करें
  • आरडीएस गेटवे और वेब एक्सेस के साथ लेट्स एनक्रिप्ट सर्टिफिकेट का उपयोग करना

आइए Windows के लिए एन्क्रिप्ट और ACME क्लाइंट करें

किसी वेबसाइट का TLS/SSL प्रमाणपत्र सार्वजनिक नेटवर्क पर स्थानांतरित किए गए उपयोगकर्ता डेटा को मैन-इन-द-बीच (MITM) से सुरक्षित रखने की अनुमति देता है ) हमला करता है और डेटा अखंडता प्रदान करता है। गैर-लाभकारी प्रमाणन केंद्र आइए एन्क्रिप्ट करें आपको API का उपयोग करके HTTPS एन्क्रिप्शन के लिए स्वचालित रूप से निःशुल्क X.509 एन्क्रिप्शन TLS प्रमाणपत्र जारी करने की अनुमति देता है। केवल 90 दिनों में समाप्त होने वाले डोमेन सत्यापन के लिए प्रमाणपत्र जारी किए जाते हैं (प्रति सप्ताह एक डोमेन के लिए 50 प्रमाणपत्रों की सीमा है)। लेकिन आप सरल शेड्यूलिंग का उपयोग करके अपनी वेबसाइट के लिए एसएसएल प्रमाणपत्र का स्वतः नवीनीकरण कर सकते हैं।

प्रमाणपत्रों को स्वचालित रूप से जारी करने के लिए Let's Encrypt API इंटरफ़ेस को स्वचालित प्रमाणपत्र प्रबंधन वातावरण कहा जाता है (एसीएमई ) एपीआई। विंडोज सिस्टम के लिए 3 सबसे लोकप्रिय एसीएमई एपीआई क्लाइंट कार्यान्वयन हैं:

  1. Windows ACME सरल (WACS) एक एसएसएल प्रमाणपत्र इंटरैक्टिव जारी करने के लिए कमांड प्रॉम्प्ट टूल है और इसे आपके आईआईएस वेब सर्वर पर एक विशिष्ट साइट से बांधता है;
  2. पावरशेल ACMESharp मॉड्यूल - एसीएमई एपीआई पर लेट्स एनक्रिप्ट सर्वर के साथ इंटरैक्ट करने के लिए कई cmdlets के साथ पावरशेल लाइब्रेरी है;
  3. प्रमाणित करें एसीएमई एपीआई का उपयोग करके एसएसएल प्रमाणपत्रों को अंतःक्रियात्मक रूप से प्रबंधित करने के लिए एक विंडोज ग्राफिक्स टूल है।

डब्ल्यूएसीएस क्लिंट इंस्टाल करने के लिए विंडोज सर्वर पर आईआईएस में लेट्स एनक्रिप्टेड टीएलएस सर्टिफिकेट करें

Let's Encrypt से SSL प्रमाणपत्र प्राप्त करने का सबसे आसान तरीका है कंसोल टूल Windows ACME Simple का उपयोग करना (WACS ) (पहले इस प्रोजेक्ट को LetsEncrypt-Win-Simple . कहा जाता था ) यह एक साधारण विज़ार्ड है जो आपको IIS पर चलने वाली वेबसाइटों में से किसी एक को चुनने की अनुमति देता है, स्वचालित रूप से एक SSL प्रमाणपत्र जारी करता है और उसे बाध्य करता है।

मान लीजिए, आपके पास एक आईआईएस वेबसाइट है जो विंडोज सर्वर 2016 पर चल रही है। आपका काम लेट्स एनक्रिप्ट से एक मुफ्त एसएसएल प्रमाणपत्र स्थापित करके वेबसाइट को एचटीटीपीएस मोड में बदलना है।

GitHub से WACS क्लाइंट की नवीनतम रिलीज़ डाउनलोड करें https://github.com/PKISharp/win-acme/releases (मेरे मामले में, यह संस्करण v2.0.10 है - फ़ाइल का नाम win-acme.v2 है .0.10.444.ज़िप )।

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

सर्वर पर जहाँ IIS स्थापित है, ज़िप संग्रह को निम्न निर्देशिका में निकालें:c:\inetpub\letsencrypt

Win-Acme का उपयोग करने के लिए आपको .NET Framework 4.7.2 या उच्चतर स्थापित करना होगा (अपने .NET Framework संस्करण को स्थापित कैसे करें?)

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

एलिवेटेड कमांड प्रॉम्प्ट खोलें, c:\inetpub\letsencrypt निर्देशिका पर जाएं और wacs.exe चलाएं . यह एक इंटरेक्टिव Let's Encrypt सर्टिफिकेट जनरेशन लॉन्च करेगा और IIS साइट विजार्ड के लिए बाध्यकारी होगा। जल्दी से एक नया प्रमाणपत्र बनाने के लिए, N: . चुनें - नए प्रमाणपत्र बनाएं (IIS के लिए आसान)

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

इसके बाद, आपको प्रमाणपत्र प्रकार का चयन करना होगा। हमारे उदाहरण में, उपनाम (एकाधिक SAN - विषय वैकल्पिक नाम) के साथ प्रमाणपत्र का उपयोग करने की कोई आवश्यकता नहीं है, इसलिए बस एक आइटम 1 का चयन करें। IIS साइट का एकल बाइंडिंग . यदि आपको वाइल्डकार्ड प्रमाणपत्र की आवश्यकता है, तो विकल्प चुनें 3 .

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

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

अपना ईमेल पता निर्दिष्ट करें जिस पर प्रमाणपत्र नवीनीकरण समस्याओं और अन्य महत्वपूर्ण संदेशों और दुरुपयोगों के बारे में सूचनाएं भेजी जाएंगी (आप अल्पविराम द्वारा अलग किए गए एकाधिक ईमेल पते निर्दिष्ट कर सकते हैं)। यह उपयोग की शर्तों से सहमत होना बाकी है और Windows ACME Simple Let’s Encrypt सर्वर से कनेक्ट होगा और आपकी वेबसाइट के लिए स्वचालित रूप से एक नया SSL प्रमाणपत्र जेनरेट करने का प्रयास करेगा।

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

आईआईएस के लिए एसएसएल लेट्स एनक्रिप्ट सर्टिफिकेट बनाने और स्थापित करने की प्रक्रिया पूरी तरह से स्वचालित है।

डिफ़ॉल्ट रूप से, डोमेन सत्यापन http-01 सत्यापन (SelfHosting) . में किया जाता है तरीका। ऐसा करने के लिए, आपके पास अपने वेब सर्वर की ओर इशारा करते हुए एक डोमेन DNS रिकॉर्ड होना चाहिए। मैन्युअल मोड (पूर्ण विकल्प) में WACS चलाते समय, आप सत्यापन प्रकार का चयन कर सकते हैं - 4 [http-01] IIS में अस्थायी एप्लिकेशन बनाएं (अनुशंसित) . इस मामले में, IIS वेब सर्वर पर एक छोटा एप्लिकेशन बनाया जाएगा जिसके माध्यम से Let's Encrypt सर्वर डोमेन सत्यापन करने में सक्षम होंगे।

नोट . TLS/HTTP सत्यापन के दौरान, आपकी साइट को HTTP (80/TCP) और HTTPS (443/TCP) प्रोटोकॉल पर अपने पूर्ण DNS नाम से इंटरनेट से पहुँचा जा सकता है।

WACS उपकरण प्रमाणपत्र (*.pem), प्रमाणपत्र की निजी कुंजी और C:\Users\%username%\AppData\Roaming\letsencrypt-win-simple<में कई अन्य फ़ाइलों को सहेजता है /em> . फिर यह पृष्ठभूमि में उत्पन्न Let’s Encrypt SSL प्रमाणपत्र को स्थापित करेगा और इसे आपकी IIS साइट से जोड़ देगा। यदि साइट पर एक एसएसएल प्रमाणपत्र स्थापित है (उदाहरण के लिए, स्व-हस्ताक्षरित प्रमाणपत्र), तो इसे एक नए से बदल दिया जाएगा।

IIS प्रबंधक में, साइट बाइंडिंग खोलें अपनी वेबसाइट के लिए सेटिंग और सत्यापित करें कि यह लेट्स एनक्रिप्ट अथॉरिटी X3 द्वारा जारी किए गए प्रमाणपत्र का उपयोग करती है ।

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

यदि आपने Windows विश्वसनीय रूट प्रमाणन प्राधिकरणों को अद्यतन किया है तो यह प्रमाणपत्र आपके कंप्यूटर पर विश्वसनीय के रूप में दिखाई देगा।

आप वेब होस्टिंग -> प्रमाणपत्र के अंतर्गत कंप्यूटर प्रमाणपत्र स्टोर में Let's Encrypt IIS प्रमाणपत्र प्राप्त कर सकते हैं ।

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

विंडोज एसीएमई सिंपल विंडोज टास्क शेड्यूलर में एक नया काम बनाता है (win-acme-renew (acme-v02.api.letsencrypt.org) ) प्रमाणपत्र को स्वचालित रूप से नवीनीकृत करने के लिए। कार्य हर दिन शुरू होता है, और प्रमाणपत्र का नवीनीकरण 60 दिनों के बाद किया जाता है। यह कार्य कमांड चलाता है:

C:\inetpub\letsencrypt\wacs.exe --renew --baseuri "https://acme-v02.api.letsencrypt.org"

लेट्स एनक्रिप्ट सर्टिफिकेट को मैन्युअल रूप से अपडेट करने के लिए आप उसी कमांड का उपयोग कर सकते हैं।

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

IIS URL पुनर्लेखन का उपयोग करके HTTP से HTTPS पर पुनर्निर्देशित करें

आने वाले सभी HTTP ट्रैफ़िक को HTTPS वेबसाइट URL पर पुनर्निर्देशित करने के लिए, Microsoft URL पुनर्लेखन मॉड्यूल स्थापित करें (https://www.iis.net/downloads/microsoft/url-rewrite), और सुनिश्चित करें कि साइट सेटिंग्स में एसएसएल की आवश्यकता विकल्प अक्षम है। अब पुनर्लेखन को web.config में पुनर्लेखन नियमों के साथ कॉन्फ़िगर करें:

<नियम नाम ="HTTP से HTTPS रीडायरेक्ट" सक्षम ="सत्य" स्टॉपप्रोसेसिंग ="सत्य"> <मिलान url ="(। *)" /> <शर्तें> <इनपुट जोड़ें ="{HTTPS}" पैटर्न ="बंद" अनदेखा करें ="सत्य" />  <क्रिया प्रकार ="रीडायरेक्ट" url ="https://{HTTP_HOST}/{R:1}" appendQueryString ="सच" रीडायरेक्ट टाइप ="स्थायी" />
 आप IIS प्रबंधक GUI के माध्यम से URL पुनर्लेखन एक्सटेंशन का उपयोग करके ट्रैफ़िक रीडायरेक्ट को भी कॉन्फ़िगर कर सकते हैं। साइटें Select चुनें -> आपका साइटनाम -> यूआरएल पुनर्लेखन

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

एक नया नियम बनाएं नियम जोड़ें -> रिक्त नियम

नियम का नाम निर्दिष्ट करें और निम्नलिखित पैरामीटर मान बदलें:

  • अनुरोधित URL :पैटर्न से मेल खाता है
  • उपयोग करना :रेगुलर एक्सप्रेशन
  • पैटर्न :(.*)

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

शर्तों . में अनुभाग में, तार्किक समूहीकरण . बदलें :सभी का मिलान करें और जोड़ें . पर क्लिक करें . निम्नलिखित सेटिंग्स निर्दिष्ट करें:

  • शर्त इनपुट: {एचटीटीपीएस}
  • जांचें कि क्या इनपुट स्ट्रिंग: पैटर्न से मेल खाता है
  • पैटर्न: ^ऑफ$

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

अब एक्शन ब्लॉक में चुनें:

  • कार्रवाई का प्रकार: रीडायरेक्ट
  • यूआरएल रीडायरेक्ट करें :https://{HTTP_HOST}/{R:1}
  • रीडायरेक्ट प्रकार :स्थायी (301)

एक ब्राउज़र खोलें और अपनी साइट को एक HTTP पते के साथ खोलने का प्रयास करें; आपको स्वचालित रूप से HTTPS URL पर पुनर्निर्देशित किया जाना चाहिए।

आरडीएस गेटवे और वेब एक्सेस के साथ लेट्स एनक्रिप्ट सर्टिफिकेट का उपयोग करना

यदि आप बाहरी उपयोगकर्ताओं को कॉर्पोरेट नेटवर्क से जोड़ने के लिए RDS गेटवे या RDS वेब एक्सेस का उपयोग करते हैं, तो आप स्व-हस्ताक्षरित प्रमाणपत्र के बजाय Let’s Encrypt से विश्वसनीय SSL प्रमाणपत्र का उपयोग कर सकते हैं। Windows सर्वर पर दूरस्थ डेस्कटॉप सेवाओं को सुरक्षित करने के लिए Let's Encrypt प्रमाणपत्र को सही ढंग से स्थापित करने के तरीके पर विचार करें।

यदि दूरस्थ डेस्कटॉप गेटवे सर्वर पर RDSH भूमिका भी स्थापित है, तो आपको गैर-व्यवस्थापक उपयोगकर्ताओं को उस निर्देशिका तक पहुँचने से रोकना चाहिए जिसमें WACS फ़ाइलें (मेरे उदाहरण में, c:\inetpub\letencrypt) और Let's एन्क्रिप्ट प्रमाणपत्र और कुंजियाँ ( C:\ProgramData\win-acme) संग्रहीत हैं।

फिर, जैसा कि ऊपर बताया गया है, RD गेटवे सर्वर पर wacs.exe चलाएँ। वांछित आईआईएस साइट का चयन करें (आमतौर पर यह डिफ़ॉल्ट वेब साइट . है . आइए एनक्रिप्ट आपको एक नया प्रमाणपत्र जारी करेगा और इसे आईआईएस वेबसाइट से जोड़ देगा, और स्वचालित प्रमाणपत्र नवीनीकरण कार्य टास्क शेड्यूलर में दिखाई देगा।

आप इस प्रमाणपत्र को मैन्युअल रूप से निर्यात कर सकते हैं और इसे एसएसएल बाइंडिंग के माध्यम से आवश्यक आरडीएस सेवाओं से जोड़ सकते हैं। लेकिन जब Let's Encrypt प्रमाणपत्र का नवीनीकरण किया जाता है, तो आपको हर 60 दिनों में इन चरणों को मैन्युअल रूप से करना होगा।

लेट्स एनक्रिप्ट सर्टिफिकेट को अपडेट करने के बाद हम एसएसएल सर्टिफिकेट को आरडीएस गेटवे से स्वचालित रूप से बांधने के लिए पावरशेल स्क्रिप्ट का उपयोग कर सकते हैं।

win-acme . में एक तैयार PowerShell स्क्रिप्ट है प्रोजेक्ट - ImportRDGateway.ps1 (https://github.com/PKISharp/win-acme/tree/master/dist/Scripts ), जो आपको दूरस्थ डेस्कटॉप सेवाओं के लिए चयनित SSL प्रमाणपत्र स्थापित करने की अनुमति देता है। इस स्क्रिप्ट का मुख्य दोष यह है कि आपको नए प्रमाणपत्र के अंगूठे के निशान को मैन्युअल रूप से निर्दिष्ट करना होगा:

ImportRDGateway.ps1 <certThumbprint>

निर्दिष्ट आईआईएस साइट से स्वचालित रूप से प्रमाणपत्र थंबप्रिंट प्राप्त करने के लिए, संशोधित स्क्रिप्ट का उपयोग करें ImportRDGateway_Cert_From_IIS.ps1 (ImportRDGateway.ps1 पर आधारित)।

आप इस स्क्रिप्ट को मैन्युअल रूप से चला सकते हैं:

powershell -File ImportRDGateway_Cert_From_IIS.ps1

यदि आपका RDS गेटवे IIS "डिफ़ॉल्ट वेब साइट" पर इंडेक्स 0 के साथ चलता है, तो आप बिना बदलाव के स्क्रिप्ट का उपयोग कर सकते हैं।

IIS पर साइट आईडी प्राप्त करने के लिए, PowerShell कंसोल खोलें और चलाएं:

Import-Module WebAdministration
Get-ChildItem IIS:Sites|ft -AutoSize

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना आईडी कॉलम आपकी साइट की अनुक्रमणिका दिखाता है, उसमें से एक घटाएं। परिणामी अनुक्रमणिका 0 . के बजाय निर्दिष्ट की जानी चाहिए PowerShell स्क्रिप्ट की पंक्ति 27 में:

$NewCertThumbprint =(Get-ChildItem IIS:SSLBindings)[0 ].अंगूठे के निशान

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

अब win-acme-renew खोलें शेड्यूलर कार्य, और कार्रवाइयां . पर टैब एक नया कार्य जोड़ें जो SSL प्रमाणपत्र को अद्यतन करने के बाद ImportRDGateway_Cert_From_IIS.ps1 स्क्रिप्ट चलाता है।

PowerShell निष्पादन नीति को न बदलने के लिए, आप स्क्रिप्ट को कमांड के साथ चला सकते हैं:

PowerShell.exe -ExecutionPolicy Bypass -File c:\inetpub\letsencrypt\ImportRDGateway_Cert_From_IIS.ps1

आईआईएस वेब सर्वर/आरडीएस पर एक निःशुल्क लेट्स एनक्रिप्ट टीएलएस/एसएसएल प्रमाणपत्र स्थापित करना

अब लेट्स एनक्रिप्ट सर्टिफिकेट के नवीनीकरण के तुरंत बाद एसएसएल सर्टिफिकेट को आरडीएस से जोड़ने की स्क्रिप्ट को निष्पादित किया जाएगा। इस मामले में, आरडी गेटवे सेवा स्वचालित रूप से कमांड के साथ पुनरारंभ हो जाती है:

Restart-Service TSGateway

[अलर] जब TSGateway सेवा फिर से शुरू होती है, तो सभी मौजूदा उपयोगकर्ता सत्र डिस्कनेक्ट हो जाते हैं, इसलिए हर 60 दिनों में एक बार प्रमाणपत्र नवीनीकरण कार्य शुरू करने की आवृत्ति को बदलने की सिफारिश की जाती है।[/अलर्ट]


  1. माइक्रोसॉफ्ट विंडोज पर MySQL इंस्टाल करना

    आइए समझें कि माइक्रोसॉफ्ट विंडोज पर MySQL कैसे इंस्टाल किया जा सकता है - MySQL केवल माइक्रोसॉफ्ट विंडोज 64-बिट ऑपरेटिंग सिस्टम के लिए उपलब्ध है। समर्थित Windows प्लेटफ़ॉर्म जानकारी देखने के लिए, https:// www.mysql.com/support/supportedplatforms/database.html पर जाएँ। Microsoft Windows पर MySQL को

  1. लेट्स एनक्रिप्ट से फ्री वाइल्डकार्ड एसएसएल सर्टिफिकेट कैसे प्राप्त करें

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

  1. क्या फ्री एसएसएल सर्टिफिकेट कमर्शियल वाले से बेहतर हैं?

    पूरे वेब पर एन्क्रिप्शन के उपयोग के बढ़ने के कारण, लोगों ने इसे भरोसे के साथ जोड़ना शुरू कर दिया है। यह, निश्चित रूप से, एक स्नोबॉल प्रभाव पैदा करता है जहां अधिक वेबसाइटों ने एसएसएल / टीएलएस एन्क्रिप्शन को अपनाने के लिए प्रोत्साहन महसूस किया, ऐसा न हो कि वे पीछे पड़ जाएं। ई-कॉमर्स साइटें, विशेष रूप