پیکربندی TLS 1.3 برای ترافیک جنوب

این صفحه نحوه پیکربندی TLS 1.3 را در پردازنده‌های پیام Apigee برای ترافیک جنوب (ترافیک بین پردازشگر پیام و سرور باطن) توضیح می‌دهد.

برای کسب اطلاعات بیشتر در مورد ویژگی TLS 1.3 در جاوا، به یادداشت‌های انتشار به‌روزرسانی JDK 8u261 مراجعه کنید.

روش فعال کردن TLS 1.3 به نسخه جاوای مورد استفاده شما بستگی دارد. برای یافتن نسخه جاوا نصب شده در پردازشگر پیام، به بررسی نسخه جاوا در یک پردازشگر پیام در زیر مراجعه کنید.

نسخه های TLS نسخه 1.3 و جاوا

ویژگی TLS 1.3 در نسخه های زیر جاوا معرفی شد:

  • Oracle JDK 8u261
  • OpenJDK 8u272

در نسخه های جاوا زیر، ویژگی TLS v1.3 وجود دارد اما به طور پیش فرض در نقش های کلاینت فعال نیست:

  • Oracle JDK 8u261 یا جدیدتر اما کمتر از Oracle JDK 8u341
  • OpenJDK 8u272 یا جدیدتر اما کمتر از OpenJDK 8u352

اگر از یکی از این نسخه ها استفاده می کنید، باید TLS v1.3 را فعال کنید، همانطور که در نحوه فعال کردن TLS v1.3 در زمانی که به طور پیش فرض فعال نیست توضیح داده شده است.

اگر از یکی از نسخه‌های زیر استفاده می‌کنید، نسخه 1.3 TLS باید قبلاً به‌طور پیش‌فرض در نقش‌های کلاینت فعال باشد (پردازنده پیام به‌عنوان یک کلاینت برای اتصالات TLS به جنوب عمل می‌کند)، بنابراین نیازی به انجام هیچ اقدامی نیست:

  • Oracle JDK 8u341 یا جدیدتر
  • OpenJDK 8u352 یا جدیدتر

برای اینکه TLS نسخه 1.3 کار کند، همه موارد زیر باید درست باشد:

  • جاوا در پردازشگر پیام باید از TLS نسخه 1.3 پشتیبانی کند.
  • TLS نسخه 1.3 باید در جاوا روی پردازشگر پیام فعال باشد.
  • TLS v1.3 باید در برنامه Message Processor فعال باشد.

نحوه فعال کردن TLS v1.3 در جاوا وقتی که به طور پیش فرض فعال نیست.

این بخش نحوه فعال کردن TLS v1.3 را در صورتی که از یکی از نسخه های زیر جاوا استفاده می کنید توضیح می دهد:

  • Oracle JDK 8u261 یا جدیدتر اما کمتر از Oracle JDK 8u341
  • OpenJDK 8u272 یا جدیدتر اما کمتر از OpenJDK 8u352

در پردازشگر پیام، ویژگی جاوا jdk.tls.client.protocols را تنظیم کنید. مقادیر با کاما از هم جدا شده اند و می توانند شامل یک یا چند TLSv1 ، TLSv1.1 ، TLSv1.2 ، TLSv1.3 و SSLv3 باشند.

به عنوان مثال، تنظیم -Djdk.tls.client.protocols=TLSv1.2,TLSv1.3 پروتکل های سرویس گیرنده TLSv1.2 و TLSv1.3 را فعال می کند.

برای یادگیری نحوه تنظیم خصوصیات JVM در کامپوننت Edge، به تغییر سایر خصوصیات JVM مراجعه کنید.

برای فعال کردن پروتکل های 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 نسخه 1.3 هنگامی که به طور پیش فرض فعال است

اگر از Oracle JDK 8u341 یا جدیدتر یا OpenJDK 8u352 یا جدیدتر استفاده می کنید، TLSv1.3 به طور پیش فرض برای مشتریان فعال است. اگر می خواهید در چنین مواردی TLS v1.3 را غیرفعال کنید، دو گزینه دارید:

  • SSLInfo سرور مورد نظر خود را پیکربندی کنید و مطمئن شوید که TLSv1.3 در لیست پروتکل ها ذکر نشده است. عناصر پیکربندی TLS/SSL TargetEndpoint را ببینید. توجه: اگر هیچ پروتکلی در پیکربندی سرور مورد نظر مشخص نشده باشد، هر پروتکلی که توسط جاوا پشتیبانی می‌شود، به عنوان گزینه در دست دادن مشتری ارسال می‌شود.
  • با غیرفعال کردن کامل پروتکل TLS v1.3 را در پردازشگر پیام غیرفعال کنید. به تنظیم پروتکل TLS در پردازشگر پیام مراجعه کنید.

نسخه جاوا را در یک پردازشگر پیام بررسی کنید

برای بررسی نسخه جاوا نصب شده در یک پردازشگر پیام، وارد گره Message Processor شوید و دستور زیر را اجرا کنید:

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)

رمزهای پشتیبانی شده

در حال حاضر جاوا 8 از 2 رمز TLS v1.3 پشتیبانی می کند:

  • TLS_AES_256_GCM_SHA384
  • TLS_AES_128_GCM_SHA256

می توانید از openssl استفاده کنید تا بررسی کنید آیا سرور مورد نظر شما از TLS نسخه 1.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