आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं. जानकारी
इस दस्तावेज़ में, Apigee Edge में वर्चुअल होस्ट और राऊटर पर सिफ़र सुइट कॉन्फ़िगर करने का तरीका बताया गया है.
साइफ़र सुइट, एल्गोरिदम का एक सेट होता है. यह टीएलएस का इस्तेमाल करने वाले नेटवर्क कनेक्शन को सुरक्षित करने में मदद करता है. क्लाइंट और सर्वर, दोनों को उस खास सिफ़र सुइट पर सहमत होना चाहिए जिसका इस्तेमाल मैसेज के आदान-प्रदान में किया जाएगा. अगर क्लाइंट और सर्वर, सिफ़र सुइट पर सहमत नहीं होते हैं, तो टीएलएस हैंडशेक की गड़बड़ियों की वजह से अनुरोध पूरे नहीं हो पाते.
Apigee में, सिफ़र सुइट पर क्लाइंट ऐप्लिकेशन और राऊटर, दोनों की सहमति होनी चाहिए.
Apigee Edge पर सिफ़र सुइट में इन वजहों से बदलाव किया जा सकता है:
- क्लाइंट ऐप्लिकेशन और Apigee राऊटर के बीच, सिफ़र सुइट के मेल न खाने की समस्या से बचने के लिए
- सुरक्षा से जुड़े किसी भी जोखिम को ठीक करने या बेहतर सुरक्षा के लिए, ज़्यादा सुरक्षित सिफ़र सुइट का इस्तेमाल करना
सिफ़र सुइट को वर्चुअल होस्ट या Apigee राऊटर पर कॉन्फ़िगर किया जा सकता है. ध्यान दें कि Apigee, वर्चुअल होस्ट और राउटर, दोनों पर सिफ़र सुइट को सिर्फ़ OpenSSL सिफ़र स्ट्रिंग फ़ॉर्मैट में स्वीकार करता है. OpenSSL साइफ़र मैनपेज में, एसएसएल या टीएलएस साइफ़र सुइट के साथ-साथ उनके OpenSSL वर्शन की जानकारी दी गई है.
उदाहरण के लिए:
अगर आपको वर्चुअल होस्ट या Apigee Router पर TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 साइफ़र सुइट कॉन्फ़िगर करना है, तो आपको OpenSSL ciphers manpage से, OpenSSL साइफ़र स्ट्रिंग की पहचान करनी होगी.
साइफ़र सुइट TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 के लिए OpenSSL साइफ़र स्ट्रिंग ECDHE-RSA-AES128-GCM-SHA256. है. इसलिए, आपको वर्चुअल होस्ट में साइफ़र सुइट को कॉन्फ़िगर करते समय या Apigee Router पर, OpenSSL साइफ़र स्ट्रिंग ECDHE-RSA-AES128-GCM-SHA256 का इस्तेमाल करना होगा.
शुरू करने से पहले
- अलग-अलग साइफ़र सुइट के लिए OpenSSL साइफ़र स्ट्रिंग के बारे में जानने के लिए, OpenSSL ciphers manpage पढ़ें.
- अगर आपको वर्चुअल होस्ट प्रॉपर्टी के बारे में जानकारी नहीं है, तो वर्चुअल होस्ट प्रॉपर्टी का रेफ़रंस पढ़ें.
- अगर आपको Private Cloud पर Edge के लिए प्रॉपर्टी कॉन्फ़िगर करने के बारे में नहीं पता, तो Edge को कॉन्फ़िगर करने का तरीका पढ़ें.
वर्चुअल होस्ट पर सिफ़र सुइट कॉन्फ़िगर करना
इस सेक्शन में, किसी संगठन और एनवायरमेंट से जुड़े वर्चुअल होस्ट में सिफ़र सुइट कॉन्फ़िगर करने का तरीका बताया गया है. सिफ़र सुइट को वर्चुअल होस्ट में कॉन्फ़िगर किया जा सकता है. इसके लिए, ssl_ciphers प्रॉपर्टी का इस्तेमाल किया जाता है. यह प्रॉपर्टी, वर्चुअल होस्ट के साथ काम करने वाले सिफ़र सुइट की सूची दिखाती है.
Apigee के साथ काम करने वाली सिफ़र सुइट की सूची देखने के लिए, साथ काम करने वाली सिफ़र सुइट देखें.
इनमें से किसी एक तरीके का इस्तेमाल करके, वर्चुअल होस्ट को कॉन्फ़िगर किया जा सकता है:
- Edge यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करना
- Edge API का इस्तेमाल करना
Edge यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करना
Edge UI का इस्तेमाल करके वर्चुअल होस्ट को कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:
- Edge UI में लॉगिन करें.
- एडमिन > वर्चुअल होस्ट पर जाएं.
- वह एनवायरमेंट चुनें जिसमें आपको यह बदलाव करना है.
- वह वर्चुअल होस्ट चुनें जिसके लिए आपको सिफ़र सुइट कॉन्फ़िगर करने हैं.
-
प्रॉपर्टी में जाकर, सिफ़र की वैल्यू को अपडेट करें. इसके लिए, OpenSSL सिफ़र स्ट्रिंग की कोलन से अलग की गई सूची का इस्तेमाल करें.
उदाहरण के लिए, अगर आपको सिर्फ़ साइफ़र सुइट
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256औरTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256को अनुमति देनी है, तो OpenSSL ciphers manpage से, उनसे जुड़ी OpenSSL साइफ़र स्ट्रिंग का पता लगाएं. इसके लिए, यहां दी गई टेबल देखें:साइफ़र सुइट OpenSSL साइफ़र स्ट्रिंग TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256नीचे दी गई इमेज में दिखाए गए तरीके से, OpenSSL सिफ़र स्ट्रिंग को कोलन से अलग करके जोड़ें:
- बदलाव को सेव करें.
Edge API का इस्तेमाल करना
Edge API का इस्तेमाल करके, किसी वर्चुअल होस्ट पर सिफ़र सुइट कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:
- नीचे दिए गए तरीके से,
वर्चुअल होस्ट पाएं एपीआई का इस्तेमाल करके, मौजूदा वर्चुअल होस्ट कॉन्फ़िगरेशन पाएं:
पब्लिक क्लाउड का उपयोगकर्ता:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Private Cloud का उपयोगकर्ता:
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}{ "hostAliases": [ "api.myCompany,com" ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false } -
propertiesमें मौजूद मौजूदा वर्चुअल होस्ट कॉन्फ़िगरेशन JSON पेलोड में,ssl_ciphersप्रॉपर्टी जोड़ें. साथ ही, OpenSSL सिफ़र स्ट्रिंग का सही इस्तेमाल करें.उदाहरण के लिए, अगर आपको सिर्फ़ साइफ़र सुइट
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256औरTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256को अनुमति देनी है, तो OpenSSL ciphers manpage से, उनसे जुड़ी OpenSSL साइफ़र स्ट्रिंग का पता लगाएं. इसके लिए, यहां दी गई टेबल देखें:साइफ़र सुइट OpenSSL साइफ़र स्ट्रिंग TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256यह
propertiesकोड ब्लॉक जोड़ें:अपडेट किए गए वर्चुअल होस्ट कॉन्फ़िगरेशन का उदाहरण:
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "ssl_ciphers", "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false } -
अपडेट किए गए वर्चुअल होस्ट कॉन्फ़िगरेशन को किसी फ़ाइल में सेव करें. उदाहरण के लिए,
virtualhost-payload.json. -
virtualhostकॉन्फ़िगरेशन में बदलाव करने के लिए, वर्चुअल होस्ट अपडेट करें एपीआई का इस्तेमाल करें. इसके लिए, यह तरीका अपनाएं:पब्लिक क्लाउड का उपयोगकर्ता:
curl -v -X POST Content-Type: application/json https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
Private Cloud का उपयोगकर्ता:
curl -v -X POST Content-Type: application/json http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
साथ काम करने वाले साइफ़र सुइट
Apigee में इन सिफ़र सुइट का इस्तेमाल किया जा सकता है:
ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES256-SHA DHE-RSA-AES256-GCM-SHA384 DHE-RSA-AES256-SHA256 DHE-RSA-AES256-SHA DHE-RSA-CAMELLIA256-SHA AES256-GCM-SHA384 AES256-SHA256 AES256-SHA CAMELLIA256-SHA ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA DHE-RSA-AES128-GCM-SHA256 DHE-RSA-AES128-SHA256 DHE-RSA-AES128-SHA DHE-RSA-CAMELLIA128-SHA AES128-GCM-SHA256 AES128-SHA256 AES128-SHA CAMELLIA128-SHA
वर्चुअल होस्ट पर सिफ़र सुइट की पुष्टि करना
इस सेक्शन में, Edge API का इस्तेमाल करके यह पुष्टि करने का तरीका बताया गया है कि वर्चुअल होस्ट पर सिफ़र सुइट में बदलाव हो गया है.
virtualhostकॉन्फ़िगरेशन पाने के लिए, वर्चुअल होस्ट पाएं एपीआई को लागू करें. इसे यहां दिखाया गया है:पब्लिक क्लाउड का उपयोगकर्ता:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Private Cloud का उपयोगकर्ता:
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}-
पुष्टि करें कि प्रॉपर्टी
ssl_ciphersको नई वैल्यू पर सेट कर दिया गया है.अपडेट किए गए वर्चुअल होस्ट कॉन्फ़िगरेशन का उदाहरण:
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "ssl_ciphers", "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }ऊपर दिए गए उदाहरण में ध्यान दें कि
ssl_ciphersको नई वैल्यू के साथ सेट किया गया है. -
अगर आपको
ssl_ciphersके लिए अब भी पुरानी वैल्यू दिख रही है, तो पुष्टि करें कि आपने वर्चुअल होस्ट पर सिफ़र सुइट कॉन्फ़िगर करना में बताए गए सभी चरणों को सही तरीके से पूरा किया हो. अगर आपने कोई चरण छोड़ दिया है, तो सभी चरणों को फिर से सही तरीके से दोहराएं. - अगर आपको अब भी वर्चुअल होस्ट में सिफ़र सुइट अपडेट करने या जोड़ने में समस्या आ रही है, तो Apigee Edge की सहायता टीम से संपर्क करें.
राउटर पर साइफ़र सुइट कॉन्फ़िगर करना
इस सेक्शन में, राउटर पर सिफ़र सुइट कॉन्फ़िगर करने का तरीका बताया गया है. साइफ़र सुइट को, राउटर प्रॉपर्टी conf_load_balancing_load.balancing.driver.server.ssl.ciphers के ज़रिए कॉन्फ़िगर किया जा सकता है. यह कोलन से अलग किए गए, स्वीकार किए गए साइफ़र सुइट को दिखाता है.
राउटर पर सिफ़र सुइट कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:
-
राउटर मशीन पर, इस फ़ाइल को एडिटर में खोलें. अगर यह पहले से मौजूद नहीं है, तो इसे बनाएं.
/opt/apigee/customer/application/router.properties
उदाहरण के लिए,
viसे फ़ाइल खोलने के लिए, यह डालें:vi /opt/apigee/customer/application/router.properties
-
propertiesफ़ाइल में, इस फ़ॉर्मैट में एक लाइन जोड़ें. इसमें colon_separated_cipher_suites की जगह कोई वैल्यू डालें:conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
उदाहरण के लिए, अगर आपको सिर्फ़ साइफ़र सुइट
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256औरTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256को अनुमति देनी है, तो OpenSSL ciphers manpage से, उनसे जुड़ी OpenSSL साइफ़र स्ट्रिंग का पता लगाएं. इसके लिए, यहां दी गई टेबल देखें:साइफ़र सुइट OpenSSL साइफ़र स्ट्रिंग TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256इसके बाद, यह लाइन जोड़ें:
conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
- बदलावों को सेव करें.
-
पक्का करें कि इस प्रॉपर्टी फ़ाइल का मालिकाना हक
apigeeउपयोगकर्ता के पास हो. इसके बारे में यहां बताया गया है:chown apigee:apigee /opt/apigee/customer/application/router.properties
-
राऊटर को रीस्टार्ट करें. इसके लिए, यहां दिया गया तरीका अपनाएं:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- अगर आपके पास एक से ज़्यादा राऊटर हैं, तो ऊपर दिया गया तरीका सभी राऊटर पर दोहराएं.
राऊटर पर साइफ़र सुइट की पुष्टि करना
इस सेक्शन में, यह पुष्टि करने का तरीका बताया गया है कि राउटर पर सिफ़र सुइट में बदलाव हो गया है.
-
राउटर पर, प्रॉपर्टी खोजें
conf_load_balancing_load.balancing.driver.server.ssl.ciphers. इसके लिए,/opt/apigeeफ़ोल्डर में मौजूद Apigee search utility का इस्तेमाल करें. साथ ही, देखें कि इसे नई वैल्यू के साथ सेट किया गया है या नहीं. इसके लिए, यह तरीका अपनाएं:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
-
अगर राउटर पर नई सिफ़र सुइट सेट हो जाती हैं, तो ऊपर दिया गया निर्देश नई वैल्यू दिखाता है.
ऊपर दी गई
searchकमांड का सैंपल नतीजा यहां दिया गया है. इसमें सिफ़र सुइट कोDHE-RSA-AES128-GCM-SHA256औरECDHE-RSA-AES128-GCM-SHA256पर अपडेट किया गया है:Found key conf_load_balancing_load.balancing.driver.server.ssl.ciphers, with value, DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256, in /opt/apigee/customer//application/router.properties
ऊपर दिए गए उदाहरण के आउटपुट में, ध्यान दें कि नई सिफ़र सुइट वैल्यू के साथ प्रॉपर्टी
conf_load_balancing_load.balancing.driver.server.ssl.ciphersसेट की गई है. इससे पता चलता है कि राऊटर पर साइफ़र सुइट को OpenSSL साइफ़र स्ट्रिंगDHE-RSA-AES128-GCM-SHA25औरECDHE-RSA-AES128-GCM-SHA256पर अपडेट कर दिया गया है. -
अगर आपको अब भी सिफ़र सुइट
conf_load_balancing_load.balancing.driver.server.ssl.ciphersके लिए पुरानी वैल्यू दिखती हैं, तो पुष्टि करें कि आपने राउटर पर सिफ़र सुइट कॉन्फ़िगर करना में बताए गए सभी चरणों का सही तरीके से पालन किया हो. अगर आपने कोई चरण छोड़ दिया है, तो सभी चरणों को फिर से सही तरीके से दोहराएं. - अगर आपको अब भी राउटर पर सिफ़र सुइट में बदलाव करने में समस्या आ रही है, तो Apigee Edge की सहायता टीम से संपर्क करें.