मैनेजमेंट एपीआई के लिए TLS कॉन्फ़िगर करना

Edge for Private Cloud v. 4.17.05

डिफ़ॉल्ट रूप से, मैनेजमेंट एपीआई के लिए टीएलएस बंद होता है. साथ ही, मैनेजमेंट सर्वर नोड के आईपी पते और पोर्ट 8080 का इस्तेमाल करके, एचटीटीपी पर Edge मैनेजमेंट एपीआई को ऐक्सेस किया जाता है. उदाहरण के लिए:

http://ms_IP:8080

इसके अलावा, मैनेजमेंट एपीआई के लिए टीएलएस ऐक्सेस को कॉन्फ़िगर किया जा सकता है, ताकि इसे इस फ़ॉर्मैट में ऐक्सेस किया जा सके:

https://ms_IP:8443

इस उदाहरण में, पोर्ट 8443 का इस्तेमाल करने के लिए टीएलएस ऐक्सेस को कॉन्फ़िगर किया गया है. हालांकि, Edge के लिए उस पोर्ट नंबर की ज़रूरत नहीं होती. मैनेजमेंट सर्वर को अन्य पोर्ट वैल्यू इस्तेमाल करने के लिए कॉन्फ़िगर किया जा सकता है. इसके लिए, सिर्फ़ यह ज़रूरी है कि आपका फ़ायरवॉल, तय किए गए पोर्ट पर ट्रैफ़िक को अनुमति दे.

मैनेजमेंट एपीआई से आने और जाने वाले ट्रैफ़िक को एन्क्रिप्ट (सुरक्षित) करने के लिए, /opt/apigee/customer/application/management-server.properties फ़ाइल में सेटिंग कॉन्फ़िगर करें.

टीएलएस कॉन्फ़िगरेशन के अलावा, पासवर्ड की पुष्टि (पासवर्ड की लंबाई और मज़बूती) को भी कंट्रोल किया जा सकता है. इसके लिए, management-server.properties फ़ाइल में बदलाव करें.

पक्का करना कि आपका टीएलएस पोर्ट खुला हो

इस सेक्शन में दी गई प्रोसेस, मैनेजमेंट सर्वर पर पोर्ट 8443 का इस्तेमाल करने के लिए टीएलएस को कॉन्फ़िगर करती है. चाहे किसी भी पोर्ट का इस्तेमाल किया जा रहा हो, आपको यह पक्का करना होगा कि वह पोर्ट, मैनेजमेंट सर्वर पर खुला हो. उदाहरण के लिए, इसे खोलने के लिए इस निर्देश का इस्तेमाल किया जा सकता है:

$ iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose 

टीएलएस को कॉन्फ़िगर करना

मैनेजमेंट एपीआई पर आने और जाने वाले ट्रैफ़िक पर टीएलएस के इस्तेमाल को कंट्रोल करने के लिए, /opt/apigee/customer/application/management-server.properties फ़ाइल में बदलाव करें. अगर यह फ़ाइल मौजूद नहीं है, तो इसे बनाएं.

मैनेजमेंट एपीआई के लिए टीएलएस ऐक्सेस कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:

  1. कीस्टोर जेकेएस फ़ाइल जनरेट करें. इसमें आपका टीएलएस सर्टिफ़िकेट और निजी पासकोड शामिल होना चाहिए. ज़्यादा जानकारी के लिए, Edge On Premises के लिए टीएलएस/एसएसएल कॉन्फ़िगर करना देखें.
  2. कीस्टोर जेकेएस फ़ाइल को मैनेजमेंट सर्वर नोड की किसी डायरेक्ट्री में कॉपी करें, जैसे कि /opt/apigee/customer/application.
  3. जेकेएस फ़ाइल का मालिकाना हक apigee को दें:
    $ chown apigee:apigee keystore.jks

    जहां keystore.jks आपकी कीस्टोर फ़ाइल का नाम है.
  4. इन प्रॉपर्टी को सेट करने के लिए, /opt/apigee/customer/application/management-server.properties में बदलाव करें. अगर वह फ़ाइल मौजूद नहीं है, तो उसे बनाएं:
    conf_webserver_ssl.enabled=true
    # conf_webserver_http.turn.off को false पर सेट रहने दें
    # क्योंकि Edge के कई इंटरनल कॉल, एचटीटीपी का इस्तेमाल करते हैं.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # नीचे, कीस्टोर का छिपाया गया पासवर्ड डालें.
    conf_webserver_keystore.password=OBF:obfuscatedPassword
    conf_webserver_cert.alias=apigee-devtest


    जहां keyStore.jks आपकी कीस्टोर फ़ाइल है और obfuscatedPassword आपका छिपा हुआ कीस्टोर पासवर्ड है. छिपाए गए पासवर्ड को जनरेट करने के बारे में जानकारी पाने के लिए, Edge On Premises के लिए टीएलएस/एसएसएल को कॉन्फ़िगर करना लेख पढ़ें.
  5. इस निर्देश का इस्तेमाल करके, Edge Management Server को रीस्टार्ट करें:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

मैनेजमेंट एपीआई अब टीएलएस के ज़रिए ऐक्सेस किया जा सकता है.

यह पक्का करने के बाद कि टीएलएस सही तरीके से काम कर रहा है, जिसमें यह पक्का करना भी शामिल है कि यह Edge यूज़र इंटरफ़ेस (यूआई) के लिए काम कर रहा है, मैनेजमेंट एपीआई के लिए एचटीटीपी ऐक्सेस को बंद किया जा सकता है. इसके बारे में अगले सेक्शन में बताया गया है.

Edge API को ऐक्सेस करने के लिए, Edge यूज़र इंटरफ़ेस (यूआई) को TLS का इस्तेमाल करने के लिए कॉन्फ़िगर करें

ऊपर दी गई प्रोसेस में, Apigee ने conf_webserver_http.turn.off=false को छोड़ने का सुझाव दिया है, ताकि Edge यूज़र इंटरफ़ेस (यूआई), एचटीटीपी पर Edge API कॉल करना जारी रख सके.

Edge यूज़र इंटरफ़ेस (यूआई) को कॉन्फ़िगर करने के लिए, यहां दिया गया तरीका अपनाएं. इससे, ये कॉल सिर्फ़ एचटीटीपीएस पर किए जा सकेंगे:

  1. ऊपर बताए गए तरीके से, मैनेजमेंट एपीआई के लिए टीएलएस ऐक्सेस कॉन्फ़िगर करें.
  2. यह पुष्टि करने के बाद कि मैनेजमेंट एपीआई के लिए टीएलएस काम कर रहा है, /opt/apigee/customer/application/management-server.properties में बदलाव करें, ताकि यह प्रॉपर्टी सेट की जा सके:
    conf_webserver_http.turn.off=true
  3. इस निर्देश का इस्तेमाल करके, Edge Management Server को रीस्टार्ट करें:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  4. Edge यूज़र इंटरफ़ेस (यूआई) के लिए, यह प्रॉपर्टी सेट करने के लिए, /opt/apigee/customer/application/ui.properties में बदलाव करें. अगर वह फ़ाइल मौजूद नहीं है, तो उसे बनाएं:
    conf_apigee_apigee.mgmt.baseurl="https://FQDN:8443/v1"

    जहां FQDN, मैनेजमेंट सर्वर के सर्टिफ़िकेट पते के मुताबिक पूरा डोमेन नेम है. साथ ही, पोर्ट नंबर वह पोर्ट है जो ऊपर conf_webserver_ssl.port में बताया गया है.
  5. अगर आपने खुद हस्ताक्षर किए हुए सर्टिफ़िकेट का इस्तेमाल किया है (प्रोडक्शन एनवायरमेंट में इसका सुझाव नहीं दिया जाता), तो ऊपर दिए गए मैनेजमेंट एपीआई के लिए टीएलएस ऐक्सेस कॉन्फ़िगर करते समय, ui.properties में यह प्रॉपर्टी जोड़ें:
    conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true

    ऐसा न करने पर, Edge यूज़र इंटरफ़ेस (यूआई), खुद हस्ताक्षर किए हुए सर्टिफ़िकेट को अस्वीकार कर देगा.
  6. इस निर्देश का इस्तेमाल करके, Edge यूज़र इंटरफ़ेस (यूआई) को रीस्टार्ट करें:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

मैनेजमेंट सर्वर के लिए टीएलएस प्रॉपर्टी

इस टेबल में, उन सभी TLS/SSL प्रॉपर्टी की सूची दी गई है जिन्हें management-server.properties में सेट किया जा सकता है:

प्रॉपर्टी

ब्यौरा

conf_webserver_http.port=8080

डिफ़ॉल्ट रूप से, यह 8080 पर सेट होता है.

conf_webserver_ssl.enabled=false

टीएलएस/एसएसएल को चालू/बंद करने के लिए. टीएलएस/एसएसएल चालू होने पर (सही), आपको ssl.port और keystore.path प्रॉपर्टी भी सेट करनी होंगी.

conf_webserver_http.turn.off=true

एचटीटीपीएस के साथ-साथ एचटीटीपी को चालू या बंद करने के लिए. अगर आपको सिर्फ़ एचटीटीपीएस का इस्तेमाल करना है, तो डिफ़ॉल्ट वैल्यू को true पर सेट रहने दें.

conf_webserver_ssl.port=8443

TLS/एसएसएल पोर्ट.

TLS/एसएसएल चालू होने पर ज़रूरी है (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.path=<path>

आपकी कीस्टोर फ़ाइल का पाथ.

TLS/एसएसएल चालू होने पर ज़रूरी है (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.password=

इस फ़ॉर्मैट में, छिपाए गए पासवर्ड का इस्तेमाल करें: OBF:xxxxxxxxxx

conf_webserver_cert.alias=

कीस्टोर सर्टिफ़िकेट का वैकल्पिक उपनाम

conf_webserver_keymanager.password=

अगर आपके पास कुंजी मैनेजर का पासवर्ड है, तो पासवर्ड का छिपा हुआ वर्शन इस फ़ॉर्मैट में डालें: OBF:xxxxxxxxxx

conf_webserver_trust.all= <false | true>

conf_webserver_trust.store.path=<path>

conf_webserver_trust.store.password=

अपने ट्रस्ट स्टोर के लिए सेटिंग कॉन्फ़िगर करें. तय करें कि आपको सभी टीएलएस/एसएसएल सर्टिफ़िकेट स्वीकार करने हैं या नहीं. उदाहरण के लिए, स्टैंडर्ड टाइप के अलावा अन्य टाइप के सर्टिफ़िकेट स्वीकार करने हैं या नहीं. डिफ़ॉल्ट रूप से, यह false पर सेट रहता है. अपने ट्रस्ट स्टोर का पाथ दें. साथ ही, इस फ़ॉर्मैट में ट्रस्ट स्टोर का पासवर्ड डालें: OBF:xxxxxxxxxx

conf_webserver_exclude.cipher.suites=<CIPHER_SUITE_1 CIPHER_SUITE_2>

conf_webserver_include.cipher.suites=

उन साइफ़र सुइट के बारे में बताएं जिन्हें आपको शामिल करना है या हटाना है. उदाहरण के लिए, अगर आपको किसी साइफ़र में कोई जोखिम मिलता है, तो उसे यहां से हटाया जा सकता है. एक से ज़्यादा साइफ़र को स्पेस से अलग करें.

साइफ़र सुइट और क्रिप्टोग्राफ़ी आर्किटेक्चर के बारे में जानकारी के लिए, यहां जाएं:

http://docs.oracle.com/javase/8/docs/technotes/
guides/security/SunProviders.html#SunJSSE

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

ऐसे पूर्णांक जो यह तय करते हैं:

  • कई क्लाइंट के लिए सेशन की जानकारी सेव करने के लिए, टीएलएस/एसएसएल सेशन की कैश मेमोरी का साइज़ (बाइट में).
  • टीएलएस/एसएसएल सेशन के टाइम आउट होने से पहले, उनके चलने की अवधि (मिलीसेकंड में).