Mengonfigurasi TLS untuk Management API

Secara default, TLS dinonaktifkan untuk API pengelolaan dan Anda mengakses API pengelolaan Edge melalui HTTP menggunakan alamat IP node Server Pengelolaan dan port 8080. Contoh:

http://ms_IP:8080

Atau, Anda dapat mengonfigurasi akses TLS ke API pengelolaan sehingga Anda dapat mengaksesnya dalam bentuk:

https://ms_IP:8443

Dalam contoh ini, Anda mengonfigurasi akses TLS untuk menggunakan port 8443. Namun, nomor port tersebut tidak diperlukan oleh Edge - Anda dapat mengonfigurasi Server Pengelolaan untuk menggunakan nilai port lain. Satu-satunya persyaratan adalah firewall Anda mengizinkan traffic melalui port yang ditentukan.

Untuk memastikan enkripsi traffic ke dan dari Management API Anda, konfigurasi setelan di file /opt/apigee/customer/application/management-server.properties.

Selain konfigurasi TLS, Anda juga dapat mengontrol validasi sandi (panjang dan kekuatan sandi) dengan mengubah file management-server.properties.

Pastikan port TLS Anda terbuka

Prosedur di bagian ini mengonfigurasi TLS untuk menggunakan port 8443 di Server Pengelolaan. Terlepas dari port yang Anda gunakan, Anda harus memastikan bahwa port tersebut terbuka di Server Pengelolaan. Misalnya, Anda dapat menggunakan perintah berikut untuk membukanya:

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

Mengonfigurasi TLS

Edit file /opt/apigee/customer/application/management-server.properties untuk mengontrol penggunaan TLS pada traffic ke dan dari API pengelolaan Anda. Jika file ini tidak ada, buat file tersebut.

Untuk mengonfigurasi akses TLS ke API pengelolaan:

  1. Buat file JKS keystore yang berisi sertifikasi TLS dan kunci pribadi Anda. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi TLS/SSL untuk Edge On Premises.
  2. Salin file JKS keystore ke direktori di node Server Pengelolaan, seperti /opt/apigee/customer/application.
  3. Ubah kepemilikan file JKS menjadi pengguna "apigee":
    chown apigee:apigee keystore.jks

    Dengan keystore.jks adalah nama file keystore Anda.

  4. Edit /opt/apigee/customer/application/management-server.properties untuk menetapkan properti berikut. Jika file tersebut tidak ada, buat file:
    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

    Dengan keyStore.jks adalah file keystore Anda, dan obfuscatedPassword adalah sandi keystore yang di-obfuscate. Lihat Mengonfigurasi TLS/SSL untuk Edge On Premises untuk mengetahui informasi tentang cara membuat sandi yang di-obfuscate.

  5. Mulai ulang Edge Management Server menggunakan perintah:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Management API kini mendukung akses melalui TLS.

Mengonfigurasi UI Edge Baru agar menggunakan TLS untuk mengakses Edge API

Dalam prosedur di atas, Apigee merekomendasikan untuk membiarkan conf_webserver_http.turn.off=false agar UI Edge Baru dapat terus melakukan panggilan API Edge melalui HTTP.

Gunakan prosedur berikut untuk mengonfigurasi UI New Edge agar melakukan panggilan ini hanya melalui HTTPS:

  1. Konfigurasikan akses TLS ke Management API seperti yang dijelaskan di atas.
  2. Setelah mengonfirmasi bahwa TLS berfungsi untuk API pengelolaan, edit /opt/apigee/customer/application/management-server.properties untuk menetapkan properti berikut:
    conf_webserver_http.turn.off=true
  3. Mulai ulang Server Pengelolaan Edge dengan menjalankan perintah berikut:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart 
  4. Perbarui konfigurasi UI New Edge untuk terhubung ke Server Pengelolaan melalui HTTPS. Tetapkan properti berikut dalam file konfigurasi UI Edge Baru:
    APIGEE_PORT_HTTP_MS=port
    MS_SCHEME=https

    Dengan port adalah port yang ditentukan sebelumnya oleh conf_webserver_ssl.port (misalnya, 8443).

  5. Terapkan konfigurasi yang telah diupdate ke UI Edge Baru:
    /opt/apigee/apigee-setup/bin/setup.sh -p ue -f configFile

    Untuk mengetahui detail selengkapnya tentang file konfigurasi UI Edge Baru, lihat Mengonfigurasi UI Edge Baru. Untuk mengonfigurasi akses HTTPS ke UI Edge Baru itu sendiri, lihat Mengonfigurasi TLS untuk UI Edge Baru.

Properti TLS untuk Server Pengelolaan

Tabel berikut mencantumkan semua properti TLS/SSL yang dapat Anda tetapkan di management-server.properties:

Properti Deskripsi

conf_webserver_http.port=8080

Defaultnya adalah 8080.

conf_webserver_ssl.enabled=false

Untuk mengaktifkan/menonaktifkan TLS/SSL. Dengan TLS/SSL diaktifkan (true), Anda juga harus menetapkan properti ssl.port dan keystore.path.

conf_webserver_http.turn.off=true

Untuk mengaktifkan/menonaktifkan http bersama dengan https. Jika Anda hanya ingin menggunakan HTTPS, biarkan nilai defaultnya tetap true.

conf_webserver_ssl.port=8443

Port TLS/SSL.

Diperlukan saat TLS/SSL diaktifkan (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.path=path

Jalur ke file keystore Anda.

Diperlukan saat TLS/SSL diaktifkan (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.password=password

Gunakan sandi yang di-obfuscate dalam format ini: OBF:xxxxxxxxxx

conf_webserver_cert.alias=alias

Alias sertifikat keystore opsional

conf_webserver_keymanager.password=password

Jika pengelola kunci Anda memiliki sandi, masukkan versi sandi yang di-obfuscate dalam format ini:

OBF:xxxxxxxxxx

conf_webserver_trust.all=[false | true]

conf_webserver_trust.store.path=path

conf_webserver_trust.store.password=password

Konfigurasikan setelan untuk trust store Anda. Tentukan apakah Anda ingin menerima semua sertifikat TLS/SSL (misalnya, untuk menerima jenis non-standar). Nilai defaultnya adalah false. Berikan jalur ke trust store Anda, dan masukkan sandi trust store yang di-obfuscate dalam format ini:

OBF:xxxxxxxxxx

conf_http_HTTPTransport.ssl.cipher.suites.blacklist=CIPHER_SUITE_1, CIPHER_SUITE_2

conf_http_HTTPTransport.ssl.cipher.suites.whitelist=

Tunjukkan cipher suite yang ingin Anda sertakan atau kecualikan. Misalnya, jika Anda menemukan kerentanan dalam cipher, Anda dapat mengecualikannya di sini. Pisahkan beberapa cipher dengan koma.

Setiap cipher yang Anda hapus menggunakan daftar hitam akan lebih diprioritaskan daripada cipher yang disertakan dalam daftar yang diizinkan.

Catatan: Secara default, jika tidak ada daftar hitam atau daftar yang diizinkan yang ditentukan, cipher yang cocok dengan ekspresi reguler Java berikut akan dikecualikan secara default.

^.*_(MD5|SHA|SHA1)$
^TLS_RSA_.*$
^SSL_.*$
^.*_NULL_.*$
^.*_anon_.*$

Namun, jika Anda menentukan daftar yang tidak diizinkan, filter ini akan diganti, dan Anda harus memasukkan semua cipher ke daftar yang tidak diizinkan satu per satu.

Untuk mengetahui informasi tentang rangkaian sandi dan arsitektur kriptografi, lihat Dokumentasi Penyedia Oracle Java Cryptography Architecture untuk JDK 8.

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

Bilangan bulat yang menentukan:

  • Ukuran cache sesi TLS/SSL (dalam byte) untuk menyimpan informasi sesi bagi beberapa klien.
  • Durasi sesi TLS/SSL dapat berlangsung sebelum waktu tunggu habis (dalam milidetik).