Mengonfigurasi TLS untuk Management API

Edge untuk Private Cloud v. 4.17.05

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

http://ms_IP:8080

Atau, Anda dapat mengonfigurasi akses TLS ke Management API 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 API pengelolaan Anda, konfigurasikan 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 digunakan, Anda harus memastikan bahwa port 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, buatlah file tersebut.

Gunakan prosedur berikut untuk mengonfigurasi akses TLS ke API pengelolaan:

  1. Buat file JKS keystore yang berisi sertifikasi TLS dan kunci pribadi Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi TLS/SSL untuk Edge On Premises.
  2. Salin file JKS keystore ke direktori di node Management Server, seperti /opt/apigee/customer/application.
  3. Ubah kepemilikan file JKS ke 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 tersebut:
    conf_webserver_ssl.enabled=true
    # Biarkan conf_webserver_http.turn.off disetel ke false
    # karena banyak panggilan internal Edge menggunakan HTTP.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # Masukkan sandi keystore yang di-obfuscate di bawah.
    conf_webserver_keystore.password=OBF:obfuscatedPassword
    conf_webserver_cert.alias=apigee-devtest


    dengan keyStore.jks adalah file keystore Anda, dan obfuscatedPassword adalah sandi keystore yang di-obfuscate. Lihat Mengonfigurasi TLS/SSL untuk Edge On Premises untuk mendapatkan 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.

Setelah memastikan TLS berfungsi dengan benar, termasuk memastikannya berfungsi untuk UI Edge, Anda dapat menonaktifkan akses HTTP ke API pengelolaan seperti yang dijelaskan di bagian berikutnya.

Mengonfigurasi UI Edge untuk menggunakan TLS untuk mengakses Edge API

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

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

  1. Konfigurasikan akses TLS ke API pengelolaan 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 Edge Management Server menggunakan perintah:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  4. Edit /opt/apigee/customer/application/ui.properties untuk menetapkan properti berikut untuk UI Edge. Jika file tersebut tidak ada, buat file tersebut:
    conf_apigee_apigee.mgmt.baseurl="https://FQDN:8443/v1"

    dengan FQDN adalah nama domain lengkap, sesuai alamat sertifikat Server Pengelolaan Anda, dan nomor port adalah port yang ditentukan di atas oleh conf_webserver_ssl.port.
  5. Hanya jika Anda menggunakan sertifikat yang ditandatangani sendiri (tidak direkomendasikan di lingkungan produksi) saat mengonfigurasi akses TLS ke API pengelolaan di atas, tambahkan properti berikut ke ui.properties:
    conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true

    Jika tidak, UI Edge akan menolak sertifikat yang ditandatangani sendiri.
  6. Mulai ulang UI Edge menggunakan perintah:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

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 mengaktifkan TLS/SSL (true), Anda juga harus menetapkan properti ssl.port dan keystore.path.

conf_webserver_http.turn.off=true

Untuk mengaktifkan/menonaktifkan http beserta https. Jika Anda hanya ingin menggunakan HTTPS, biarkan nilai default ke true.

conf_webserver_ssl.port=8443

Porta 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=

Gunakan sandi yang disamarkan dalam format ini: OBF:xxxxxxxxxx

conf_webserver_cert.alias=

Alias sertifikat keystore opsional

conf_webserver_keymanager.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=

Konfigurasi 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_webserver_exclude.cipher.suites=<CIPHER_SUITE_1 CIPHER_SUITE_2>

conf_webserver_include.cipher.suites=

Tentukan cipher suite yang ingin Anda sertakan atau kecualikan. Misalnya, jika Anda menemukan kerentanan dalam sebuah penyandian, Anda dapat mengecualikannya di sini. Pisahkan beberapa cipher dengan spasi.

Untuk informasi tentang rangkaian penyandian dan arsitektur kriptografi, lihat:

http://docs.oracle.com/javase/8/docs/technotes/
Guides/security/SunProviders.html#SunJSSE

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 untuk beberapa klien.
  • Jumlah waktu sesi TLS/SSL dapat bertahan sebelum waktu habis (dalam milidetik).