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

Edge for Private Cloud v4.18.05

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

http://ms_IP:8080

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

https://ms_IP:8443

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

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

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

पक्का करें कि आपका TLS पोर्ट खुला हुआ है

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

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

TLS कॉन्फ़िगर करें

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

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

  1. कीस्टोर JKS फ़ाइल जनरेट करें, जिसमें आपका TLS सर्टिफ़िकेशन और निजी कुंजी हो. ज़्यादा जानकारी के लिए, Edge On Premises के लिए TLS/एसएसएल को कॉन्फ़िगर करना देखें.
  2. कीस्टोर JKS फ़ाइल को मैनेजमेंट सर्वर नोड जैसी किसी डायरेक्ट्री में कॉपी करें. जैसे, /opt/apigee/customer/application.
  3. JKS फ़ाइल के मालिकाना हक को apigee में बदलें:
    chown apigee:apigee keystore.jks
    यहां keystore.jks आपकी कीस्टोर फ़ाइल का नाम है.
  4. इन प्रॉपर्टी को सेट करने के लिए, /opt/apigee/customer/application/management-server.properties में बदलाव करें. अगर फ़ाइल मौजूद नहीं है, तो इसे बनाएं:
    conf_webserver_ssl.enabled=true
    # Leave conf_webserver_http.turn.off set to false
    # because many Edge internal calls use HTTP.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # Enter the obfuscated keystore password below.
    conf_webserver_keystore.password=OBF:obfuscatedPassword
    जहां keyStore.jks आपकी कीस्टोर फ़ाइल है और obfuscatedPassword आपका कीस्टोर पासवर्ड है. उलझाने वाला पासवर्ड जनरेट करने के बारे में जानकारी के लिए, TLS/SSL for Edge On Premises को कॉन्फ़िगर करना देखें.
  5. निर्देश देकर एज मैनेजमेंट सर्वर को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

मैनेजमेंट एपीआई अब TLS पर ऐक्सेस देता है.

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

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

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

  1. ऊपर बताए गए तरीके से, मैनेजमेंट एपीआई के लिए TLS के ऐक्सेस को कॉन्फ़िगर करें.
  2. यह पुष्टि करने के बाद कि TLS, मैनेजमेंट एपीआई के लिए काम कर रहा है, नीचे दी गई प्रॉपर्टी को सेट करने के लिए /opt/apigee/customer/application/management-server.properties में बदलाव करें: conf_webserver_http.turn.off=true
  3. निर्देश देकर एज मैनेजमेंट सर्वर को रीस्टार्ट करें:
    /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. सिर्फ़ तब, जब आपने खुद किए गए सर्टिफ़िकेट का इस्तेमाल किया हो (प्रोडक्शन एनवायरमेंट में इसका सुझाव नहीं दिया जाता). ऐसा तब करें, जब ऊपर दिए गए मैनेजमेंट एपीआई के लिए TLS का ऐक्सेस कॉन्फ़िगर करते समय, दी गई प्रॉपर्टी को 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 प्रॉपर्टी

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

प्रॉपर्टी

Description

conf_webserver_http.port=8080

डिफ़ॉल्ट संख्या 8080 है.

conf_webserver_ssl.enabled=false

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

conf_webserver_http.turn.off=true

http के साथ-साथ http को चालू/बंद करने के लिए. अगर आपको सिर्फ़ एचटीटीपीएस का इस्तेमाल करना है, तो डिफ़ॉल्ट वैल्यू को 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=

अपने ट्रस्ट स्टोर की सेटिंग कॉन्फ़िगर करें. तय करें कि आपको सभी TLS/एसएसएल सर्टिफ़िकेट स्वीकार करने हैं या नहीं. उदाहरण के लिए, नॉन-स्टैंडर्ड टाइप स्वीकार करने के लिए. डिफ़ॉल्ट वैल्यू 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=

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

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