Halaman ini menjelaskan cara mengonfigurasi TLS 1.3 di Pemroses Pesan Apigee untuk traffic menuju arah selatan (traffic antara Pemroses Pesan dan server backend).
Untuk mempelajari selengkapnya tentang fitur TLS 1.3 di Java, lihat Catatan Rilis Update JDK 8u261.
Prosedur untuk mengaktifkan TLS 1.3 bergantung pada versi Java yang Anda gunakan. Lihat Periksa versi Java di Pemroses Pesan di bawah untuk mengetahui versi Java yang terinstal di {i>Message Processor<i}.
TLS v1.3 dan versi Java
Fitur TLS 1.3 diperkenalkan dalam versi Java berikut:
- JDK 8u261 Oracle
- OpenJDK 8u272
Pada versi Java berikut, fitur TLS v1.3 ada tetapi tidak diaktifkan secara default dalam peran klien:
- Oracle JDK 8u261 atau yang lebih baru tetapi kurang dari Oracle JDK 8u341
- OpenJDK 8u272 atau yang lebih baru tetapi kurang dari OpenJDK 8u352
Jika menggunakan salah satu versi ini, Anda harus mengaktifkan TLS v1.3, seperti yang dijelaskan di Cara mengaktifkan TLS v1.3 saat tidak diaktifkan secara default.
Jika Anda menggunakan salah satu versi berikut, TLS v1.3 seharusnya sudah diaktifkan secara default dalam peran klien (Pemroses Pesan bertindak sebagai klien untuk koneksi TLS menuju selatan), sehingga Anda tidak perlu melakukan tindakan apa pun:
- Oracle JDK 8u341 atau yang lebih baru
- OpenJDK 8u352 atau yang lebih baru
Agar TLS v1.3 berfungsi, semua hal berikut harus berlaku:
- Java yang mendasari pada Pemroses Pesan harus mendukung TLS v1.3.
- TLS v1.3 harus diaktifkan di Java pada Pemroses Pesan.
- TLS v1.3 harus diaktifkan di aplikasi Pemroses Pesan.
Cara mengaktifkan TLS v1.3 di Java saat tidak diaktifkan secara default.
Bagian ini menjelaskan cara mengaktifkan TLS v1.3 jika Anda menggunakan salah satu dari yang berikut versi Java:
- Oracle JDK 8u261 atau yang lebih baru tetapi kurang dari Oracle JDK 8u341
- OpenJDK 8u272 atau yang lebih baru tetapi kurang dari OpenJDK 8u352
Di pemroses pesan, tetapkan properti Java jdk.tls.client.protocols
.
Nilai dipisahkan koma dan dapat berisi satu atau lebih
TLSv1
, TLSv1.1
, TLSv1.2
, TLSv1.3
, dan
SSLv3
.
Misalnya, menyetel -Djdk.tls.client.protocols=TLSv1.2,TLSv1.3
akan mengaktifkan klien
protokol TLSv1.2
dan TLSv1.3
.
Lihat ke Mengubah lainnya Properti JVM ke pelajari cara menyetel properti JVM dalam komponen Edge.
Untuk mengaktifkan protokol TLS v1, v1.1, v1.2 dan v1.3:
- Setel konfigurasi berikut di
file konfigurasi pemroses pesan
(
/opt/apigee/customer/application/message-processor.properties
):bin_setenv_ext_jvm_opts=-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3
- Mulai ulang Pemroses Pesan.
Cara menonaktifkan TLS v1.3 saat diaktifkan secara default
Jika Anda menggunakan Oracle JDK 8u341 atau yang lebih baru, atau OpenJDK 8u352 atau yang lebih baru, TLSv1.3 diaktifkan oleh default untuk klien. Jika ingin menonaktifkan TLS v1.3 dalam kasus tersebut, Anda memiliki dua opsi:
- Konfigurasikan SSLInfo server target Anda dan pastikan TLSv1.3 tidak disebutkan dalam daftar protokol. Lihat Elemen Konfigurasi TargetEndpoint TLS/SSL. Catatan: Jika tidak ada protokol yang ditentukan dalam konfigurasi server target, protokol yang didukung oleh Java akan dikirim sebagai opsi dalam handshake klien.
- Nonaktifkan TLS v1.3 di pemroses pesan dengan menonaktifkan protokol sepenuhnya. Lihat Menetapkan protokol TLS di Message Processor.
Memeriksa versi Java di Pemroses Pesan
Untuk memeriksa versi Java yang terinstal di Pemroses Pesan, login ke Pemroses Pesan dan jalankan perintah berikut:
java -version
Contoh output di bawah ini menunjukkan bahwa OpenJDK 8u312 telah diinstal.
$ 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)
Cipher yang didukung
Saat ini, Java 8 mendukung 2 penyandian TLS v1.3:
- TLS_AES_256_GCM_SHA384
- TLS_AES_128_GCM_SHA256
Anda dapat menggunakan openssl
untuk memeriksa apakah server target Anda mendukung TLS v1.3 dan setidaknya salah satu dari
penyandian di atas menggunakan kode di bawah ini. Perhatikan bahwa contoh ini menggunakan utilitas openssl11
yang memiliki
TLS v1.3 diaktifkan.
$ openssl11 s_client -ciphersuites "TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256" -connect target_host:target_port -tls1_3