Mengonfigurasi rangkaian penyandian pada {i>hostRouter

Anda sedang melihat dokumentasi Apigee Edge.
Buka Dokumentasi Apigee X.
info

Dokumen ini menjelaskan cara mengonfigurasi cipher suite di host dan Router virtual di Apigee Edge.

Cipher suite adalah seperangkat algoritma yang membantu mengamankan koneksi jaringan yang menggunakan TLS. Klien dan server harus menyetujui cipher suite spesifik yang akan digunakan saat bertukar pesan. Jika klien dan server tidak menyetujui sebuah{i> cipher suite<i}, maka permintaan gagal dengan kegagalan TLS Handshake.

Di Apigee, cipher suite harus disepakati bersama antara aplikasi klien dan {i>Router<i}.

Anda mungkin perlu mengubah cipher suite di Apigee Edge karena alasan berikut:

  • Untuk menghindari ketidakcocokan cipher suite antara aplikasi klien dan Router Apigee
  • Untuk menggunakan paket penyandian yang lebih aman untuk memperbaiki kerentanan keamanan atau untuk meningkatkan keamanan

Suite cipher dapat dikonfigurasi di host virtual atau Router Apigee. Catatan Apigee menerima cipher suite hanya dalam format string cipher OpenSSL dengan baik {i>host<i} virtual maupun {i>Router<i}. Tujuan Halaman utama cipher OpenSSL menyediakan rangkaian penyandian SSL atau TLS dari spesifikasi yang relevan dan padanan OpenSSL-nya.

Contoh:

Jika Anda ingin mengonfigurasi cipher TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 di host virtual atau Apigee Router, maka Anda perlu mengidentifikasi rangkaian{i> <i}kode sandi OpenSSL yang sesuai dari Halaman utama cipher OpenSSL. String cipher OpenSSL untuk cipher suite TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 adalah ECDHE-RSA-AES128-GCM-SHA256. Jadi, Anda perlu menggunakan string penyandian OpenSSL ECDHE-RSA-AES128-GCM-SHA256 saat mengonfigurasi cipher suite di host virtual atau di Router Apigee.

Sebelum memulai

Mengonfigurasi cipher suite pada host virtual

Bagian ini menjelaskan cara mengonfigurasi cipher suite di host virtual yang terkait dengan organisasi dan lingkungan. Cipher suite dapat dikonfigurasi di host virtual melalui properti ssl_ciphers, yang mewakili daftar cipher suite yang didukung oleh host virtual.

Lihat Cipher suite yang didukung untuk mengetahui daftar cipher yang didukung Apigee.

Anda dapat mengonfigurasi host virtual menggunakan salah satu metode berikut:

  • Menggunakan UI Edge
  • Menggunakan Edge API

Menggunakan UI Edge

Untuk mengonfigurasi host virtual menggunakan UI Edge, lakukan hal berikut:

  1. Login ke UI Edge.
  2. Buka Admin > Host Virtual.
  3. Pilih Lingkungan tertentu tempat Anda ingin membuat perubahan ini.
  4. Pilih host virtual spesifik yang ingin Anda konfigurasi rangkaian penyandiannya.
  5. Di bagian Properties, perbarui nilai Ciphers dengan daftar string cipher OpenSSL yang dipisahkan titik dua.

    Misalnya, jika Anda ingin mengizinkan paket penyandian saja TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 dan TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, lalu tentukan respons String penyandian OpenSSL dari Halaman utama cipher OpenSSL seperti yang ditunjukkan dalam tabel berikut:

    Suite Cipher String cipher OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    Tambahkan string cipher OpenSSL dengan pemisahan titik dua seperti ditunjukkan dalam gambar berikut:

    Contoh cipher

  6. Simpan perubahan.

Menggunakan Edge API

Untuk mengonfigurasi cipher suite pada host virtual menggunakan Edge API, lakukan hal berikut:

  1. Dapatkan konfigurasi host virtual saat ini dengan menggunakan Dapatkan API host virtual seperti yang ditunjukkan di bawah ini:

    Pengguna Cloud Publik:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    Pengguna Private Cloud:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
    {
      "hostAliases": [
        "api.myCompany,com"
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  2. Tambahkan properti ssl_ciphers ke konfigurasi host virtual yang ada Payload JSON dalam properties dengan string cipher OpenSSL yang sesuai.

    Misalnya, jika Anda ingin mengizinkan paket penyandian saja TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 dan TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, lalu tentukan respons String penyandian OpenSSL dari Halaman utama cipher OpenSSL seperti yang ditunjukkan dalam tabel berikut:

    Suite Cipher String cipher OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    Tambahkan blok kode properties berikut:

    Contoh konfigurasi host virtual yang diperbarui:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  3. Simpan konfigurasi host virtual yang diperbarui dalam file. Contoh: virtualhost-payload.json
  4. Update konfigurasi virtualhost dengan perubahan tersebut menggunakan Update virtual host API sebagai berikut:

    Pengguna Cloud Publik:

    curl -v -X POST Content-Type: application/json
    https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

    Pengguna Private Cloud:

    curl -v -X POST Content-Type: application/json
    http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

Cipher suite yang didukung

Apigee mendukung cipher suite berikut:

ECDHE-RSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-RSA-CAMELLIA256-SHA
AES256-GCM-SHA384
AES256-SHA256  
AES256-SHA
CAMELLIA256-SHA
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-RSA-AES128-SHA
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-RSA-CAMELLIA128-SHA
AES128-GCM-SHA256
AES128-SHA256   
AES128-SHA 
CAMELLIA128-SHA

Memverifikasi suite penyandian pada host virtual

Bagian ini menjelaskan cara memverifikasi bahwa cipher suite telah berhasil dimodifikasi pada {i>host<i} virtual menggunakan Edge API.

  1. Jalankan Dapatkan virtual host API untuk mendapatkan konfigurasi virtualhost seperti yang ditunjukkan di bawah ini:

    Pengguna Cloud Publik:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    Pengguna Private Cloud:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
  2. Verifikasi bahwa properti ssl_ciphers telah ditetapkan ke nilai baru.

    Contoh konfigurasi host virtual yang diperbarui:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    

    Pada contoh di atas, perhatikan bahwa ssl_ciphers telah ditetapkan dengan nilai baru.

  3. Jika Anda masih melihat nilai lama untuk ssl_ciphers, verifikasi bahwa Anda telah mengikuti semua langkah yang diuraikan dalam Mengonfigurasi cipher suite di host virtual dengan benar. Jika Anda melewatkan langkah apa pun, ulangi semua langkah dengan benar.
  4. Jika Anda masih tidak dapat memperbarui atau menambahkan rangkaian{i> <i}penyandian ke {i>host<i} virtual, hubungi Dukungan Apigee Edge.

Mengonfigurasi cipher suite pada Router

Bagian ini menjelaskan cara mengonfigurasi rangkaian penyandian pada Router. {i>Cipher suite<i} dapat dikonfigurasikan melalui properti Router conf_load_balancing_load.balancing.driver.server.ssl.ciphers, yang mewakili rangkaian penyandian yang diterima dan dipisahkan tanda titik dua.

Untuk mengonfigurasi cipher suite di Router, lakukan hal berikut:

  1. Di mesin Router, buka file berikut di editor. Jika belum ada, kemudian membuatnya.

    /opt/apigee/customer/application/router.properties
    

    Misalnya, untuk membuka file dengan vi, masukkan yang berikut:

    vi /opt/apigee/customer/application/router.properties
    
  2. Tambahkan baris dalam format berikut ke file properties, dengan mengganti nilai untuk colon_separated_cipher_suites:
    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
    

    Misalnya, jika Anda ingin mengizinkan paket penyandian saja TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 dan TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, lalu tentukan respons String penyandian OpenSSL dari Halaman utama cipher OpenSSL seperti yang ditunjukkan dalam tabel berikut:

    Suite Cipher String cipher OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    Kemudian, tambahkan baris berikut:

    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
    
  3. Simpan perubahan.
  4. Pastikan file properti ini dimiliki oleh pengguna apigee seperti yang ditunjukkan di bawah:
    chown apigee:apigee /opt/apigee/customer/application/router.properties
    
  5. Mulai ulang Router seperti yang ditunjukkan di bawah ini:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  6. Jika Anda memiliki lebih dari satu Router, ulangi langkah-langkah di atas pada semua Router.

Memverifikasi cipher suite di Router

Bagian ini menjelaskan cara memverifikasi bahwa cipher suite telah berhasil dimodifikasi di Router.

  1. Di Router, telusuri properti conf_load_balancing_load.balancing.driver.server.ssl.ciphers menggunakan Apigee utilitas pencarian dari folder /opt/apigee dan periksa untuk melihat apakah telah diatur dengan nilai baru sebagai berikut:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
    
  2. Jika rangkaian penyandian baru berhasil disetel di {i>router<i}, maka perintah di atas menunjukkan nilai-nilai baru.

    Berikut adalah contoh hasil dari perintah search di atas saat paket penyandian telah diperbarui menjadi DHE-RSA-AES128-GCM-SHA256 dan ECDHE-RSA-AES128-GCM-SHA256:

    Found key conf_load_balancing_load.balancing.driver.server.ssl.ciphers, with value, DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256, in /opt/apigee/customer//application/router.properties
    

    Pada contoh {i>output<i} di atas, perhatikan bahwa properti conf_load_balancing_load.balancing.driver.server.ssl.ciphers telah ditetapkan dengan nilai cipher suite yang baru. Hal ini menunjukkan bahwa cipher suite berhasil memperbarui string cipher OpenSSL DHE-RSA-AES128-GCM-SHA25dan ECDHE-RSA-AES128-GCM-SHA256 di Router.

  3. Jika Anda masih melihat nilai lama untuk cipher suite conf_load_balancing_load.balancing.driver.server.ssl.ciphers, lalu verifikasi bahwa Anda telah mengikuti semua langkah yang diuraikan dalam Mengonfigurasi cipher suite di Router dengan benar. Jika Anda melewatkan langkah apa pun, ulangi semua langkah dengan benar.
  4. Jika Anda masih tidak dapat memodifikasi rangkaian {i>Cipher <i}di {i>Router<i}, maka hubungi Dukungan Apigee Edge.