दक्षिण की ओर जाने वाले ट्रैफ़िक के लिए TLS 1.3 को कॉन्फ़िगर करना

इस पेज में बताया गया है कि दक्षिण की ओर के ट्रैफ़िक (मैसेज प्रोसेसर और बैकएंड सर्वर के बीच का ट्रैफ़िक) के लिए, Apigee Message प्रोसेसर में TLS 1.3 को कैसे कॉन्फ़िगर करें.

Java में TLS 1.3 की सुविधा के बारे में ज़्यादा जानने के लिए, JDK 8u261 अपडेट रिलीज़ नोट्स देखें.

TLS 1.3 को चालू करने की प्रक्रिया, आपके इस्तेमाल किए जा रहे Java के वर्शन पर निर्भर करती है. मैसेज प्रोसेसर में इंस्टॉल किए गए Java के वर्शन का पता लगाने के लिए, नीचे दिए गए मैसेज प्रोसेसर में Java वर्शन की जांच करें देखें.

TLS v1.3 और Java वर्शन

TLS 1.3 की सुविधा, Java के इन वर्शन में शुरू की गई थी:

  • Oracle JDK 8u261
  • ओपनजेडीके 8u272

नीचे दिए गए Java वर्शन में, TLS v1.3 सुविधा मौजूद है, लेकिन क्लाइंट की भूमिकाओं में यह डिफ़ॉल्ट रूप से चालू नहीं होती:

  • Oracle JDK 8u261 या इसके बाद का लेकिन Oracle JDK 8u341 से कम
  • OpenJDK 8u272 या इसके बाद का वर्शन, लेकिन OpenJDK 8u352 से कम

अगर आपके पास इनमें से किसी वर्शन का इस्तेमाल करने का विकल्प है, तो आपको TLS v1.3 को चालू करना होगा. इस बारे में, डिफ़ॉल्ट रूप से चालू न होने पर, TLS v1.3 को चालू करने का तरीका बताया गया है.

अगर इनमें से किसी एक वर्शन का इस्तेमाल किया जा रहा है, तो आपको कुछ भी करने की ज़रूरत नहीं है. ऐसा होने पर, क्लाइंट की भूमिकाओं में TLS v1.3, डिफ़ॉल्ट रूप से पहले से चालू होना चाहिए. मैसेज प्रोसेसर, दक्षिण की तरफ़ वाले TLS कनेक्शन के लिए क्लाइंट की तरह काम करता है:

  • Oracle JDK 8u341 या इसके बाद का वर्शन
  • OpenJDK 8u352 या इसके बाद का वर्शन

TLS v1.3 के काम करने के लिए, ये सभी चीज़ें सही होनी चाहिए:

  • मैसेज प्रोसेसर पर मौजूद Java, TLS v1.3 के साथ काम करना चाहिए.
  • Message प्रोसेसर पर Java में TLS v1.3 चालू होना चाहिए.
  • Message प्रोसेसर ऐप्लिकेशन में TLS v1.3 चालू होना चाहिए.

डिफ़ॉल्ट रूप से, Java में TLS v1.3 चालू न होने पर उसे कैसे चालू करें.

इस सेक्शन में बताया गया है कि अगर आपके पास Java के इनमें से किसी वर्शन का इस्तेमाल करने का विकल्प है, तो TLS v1.3 को कैसे चालू करें:

  • Oracle JDK 8u261 या इसके बाद का लेकिन Oracle JDK 8u341 से कम
  • OpenJDK 8u272 या इसके बाद का वर्शन, लेकिन OpenJDK 8u352 से कम

मैसेज प्रोसेसर में, Java प्रॉपर्टी को jdk.tls.client.protocols सेट करें. वैल्यू, कॉमा लगाकर अलग की जाती हैं और इनमें TLSv1, TLSv1.1, TLSv1.2, TLSv1.3, और SSLv3 में से एक या उससे ज़्यादा वैल्यू शामिल हो सकती हैं.

उदाहरण के लिए, -Djdk.tls.client.protocols=TLSv1.2,TLSv1.3 को सेट करने पर, क्लाइंट प्रोटोकॉल TLSv1.2 और TLSv1.3 चालू हो जाते हैं.

Edge कॉम्पोनेंट में जेवीएम प्रॉपर्टी सेट करने का तरीका जानने के लिए, दूसरी जेवीएम प्रॉपर्टी बदलना देखें.

TLS v1, v1.1, v1.2, और v1.3 प्रोटोकॉल चालू करने के लिए:

  1. मैसेज प्रोसेसर कॉन्फ़िगरेशन फ़ाइल (/opt/apigee/customer/application/message-processor.properties) में, ये कॉन्फ़िगरेशन सेट करें:
       bin_setenv_ext_jvm_opts=-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3
  2. मैसेज प्रोसेसर को रीस्टार्ट करें.
>

डिफ़ॉल्ट रूप से चालू होने पर, TLS v1.3 को कैसे बंद करें

अगर आपके पास Oracle JDK 8u341 या इसके बाद का वर्शन है या OpenJDK 8u352 या इसके बाद का वर्शन है, तो क्लाइंट के लिए TLSv1.3 डिफ़ॉल्ट रूप से चालू रहता है. अगर आपको ऐसे मामलों में TLS v1.3 को बंद करना है, तो आपके पास दो विकल्प हैं:

  • अपने टारगेट सर्वर की SSLInfo को कॉन्फ़िगर करें और पक्का करें कि प्रोटोकॉल की सूची में TLSv1.3 का ज़िक्र न किया गया हो. TLS/एसएसएल टारगेटएंडपॉइंट कॉन्फ़िगरेशन एलिमेंट देखें. ध्यान दें: अगर टारगेट सर्वर कॉन्फ़िगरेशन में कोई भी प्रोटोकॉल तय नहीं किया गया है, तो Java के साथ काम करने वाले सभी प्रोटोकॉल, क्लाइंट हैंडशेक में विकल्पों के तौर पर भेजे जाएंगे.
  • प्रोटोकॉल को पूरी तरह से बंद करके, मैसेज प्रोसेसर में TLS v1.3 को बंद करें. देखें मैसेज प्रोसेसर पर TLS प्रोटोकॉल सेट करना.

मैसेज प्रोसेसर में Java वर्शन देखना

किसी मैसेज प्रोसेसर में इंस्टॉल किए गए Java वर्शन की जांच करने के लिए, मैसेज प्रोसेसर नोड में लॉग इन करें और नीचे दिया गया निर्देश दें:

java -version

नीचे दिए गए उदाहरण से पता चलता है कि OpenJDK 8u312 इंस्टॉल है.

$ java -version
openjdk version "1.8.0_312"
OpenJDK Runtime Environment (build 1.8.0_312-b07)
OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)

इस्तेमाल किए जा सकने वाले साइफ़र

फ़िलहाल, Java 8, दो TLS v1.3 साइफ़र के साथ काम करता है:

  • TLS_AES_256_GCM_SHA384
  • TLS_AES_128_GCM_SHA256

openssl का इस्तेमाल करके यह देखा जा सकता है कि आपका टारगेट सर्वर, TLS v1.3 और ऊपर दिए गए, कम से कम एक साइफ़र पर काम करता है या नहीं. ध्यान दें कि यह उदाहरण openssl11 यूटिलिटी का इस्तेमाल करता है, जिसमें TLS v1.3 चालू है.

$ openssl11 s_client -ciphersuites "TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256" -connect target_host:target_port -tls1_3