Setelah menginstal komponen apigee-mtls
di setiap node di cluster,
harus mengonfigurasi dan melakukan inisialisasi. Anda melakukannya dengan membuat pasangan sertifikat/kunci dan memperbarui
file konfigurasi di komputer administrasi Anda. Anda kemudian men-deploy
file yang sama yang dibuat ke semua node di cluster, dan melakukan inisialisasi
Komponen apigee-mtls
.
Mengonfigurasi apigee-mtls (setelah penginstalan awal)
Bagian ini menjelaskan cara mengonfigurasi mTLS Apigee untuk satu pusat data segera setelah penginstalan awal. Untuk informasi tentang cara memperbarui penginstalan yang sudah ada Apigee mTLS, lihat Mengubah konfigurasi apigee-mtls yang ada. Untuk informasi tentang cara mengonfigurasi beberapa pusat data, lihat Mengonfigurasi beberapa pusat data untuk Apigee mTLS.
Berikut adalah proses umum untuk mengonfigurasi
apigee-mtls
:
- Perbarui file konfigurasi: Di
komputer administrasi, perbarui file konfigurasi untuk menyertakan
apigee-mtls
setelan. - Instal Consul dan buat kredensial: Instal
Consul dan gunakan untuk membuat kredensial TLS (sekali saja).
Selain itu, edit file konfigurasi mTLS Apigee untuk:
- Menambahkan informasi kredensial
- Menentukan topologi cluster
Perhatikan bahwa Anda dapat menggunakan kredensial yang sudah ada atau buat file tersebut dengan Consul.
- Distribusikan kredensial dan file konfigurasi: Distribusikan pasangan sertifikat/kunci yang sama yang dihasilkan dan file konfigurasi yang diperbarui ke semua node dalam cluster Anda.
- Melakukan inisialisasi apigee-mtls: Lakukan inisialisasi pada
komponen
apigee-mtls
di setiap node.
Setiap langkah ini dijelaskan di bagian berikut.
Langkah 1: Perbarui file konfigurasi Anda
Bagian ini menjelaskan cara mengubah file konfigurasi untuk menyertakan konfigurasi mTLS properti baru. Untuk informasi umum lebih lanjut tentang file konfigurasi, lihat Membuat konfigurasi .
Setelah memperbarui file konfigurasi dengan properti terkait mTLS, salin file tersebut ke
semua node dalam cluster sebelum Anda melakukan inisialisasi komponen apigee-mtls
pada
node.
Perintah yang merujuk file konfigurasi menggunakan "config_file" untuk menunjukkan bahwa lokasinya bervariasi, tergantung di mana Anda menyimpannya di setiap {i>node<i}.
Untuk memperbarui file konfigurasi:
- Di komputer administrasi Anda, buka file konfigurasi.
- Salin kumpulan properti konfigurasi mTLS berikut dan tempelkan ke konfigurasi
file:
ALL_IP="ALL_PRIVATE_IPS_IN_CLUSTER" ZK_MTLS_HOSTS="ZOOKEEPER_PRIVATE_IPS" CASS_MTLS_HOSTS="CASSANDRA_PRIVATE_IPS" PG_MTLS_HOSTS="POSTGRES_PRIVATE_IPS" RT_MTLS_HOSTS="ROUTER_PRIVATE_IPS" MS_MTLS_HOSTS="MGMT_SERVER_PRIVATE_IPS" MP_MTLS_HOSTS="MESSAGE_PROCESSOR_PRIVATE_IPS" QP_MTLS_HOSTS="QPID_PRIVATE_IPS" LDAP_MTLS_HOSTS="OPENLDAP_PRIVATE_IPS" MTLS_ENCAPSULATE_LDAP="y" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="BASE64_GOSSIP_MESSAGE" PATH_TO_CA_CERT="PATH/TO/consul-agent-ca.pem" PATH_TO_CA_KEY="PATH/TO/consul-agent-ca-key.pem" APIGEE_MTLS_NUM_DAYS_CERT_VALID_FOR="NUMBER_OF_DAYS"
Tetapkan nilai setiap properti agar selaras dengan konfigurasi Anda.
Tabel berikut menjelaskan properti konfigurasi ini:
Properti Deskripsi ALL_IP
Daftar alamat IP host pribadi yang dipisahkan spasi dari semua node dalam cluster. Urutan alamat IP tidak menjadi masalah, hanya saja alamat IP tersebut harus sama file konfigurasi di seluruh cluster.
Jika Anda mengonfigurasi mTLS Apigee untuk beberapa pusat data, cantumkan semua alamat IP untuk semua {i> host<i} di semua region.
LDAP_MTLS_HOSTS
Alamat IP host pribadi node OpenLDAP di cluster. ZK_MTLS_HOSTS
Daftar alamat IP host pribadi yang dipisahkan spasi tempat node ZooKeeper dihosting dalam cluster.
Perhatikan bahwa berdasarkan persyaratan, harus ada setidaknya tiga node ZooKeeper.
CASS_MTLS_HOSTS
Daftar alamat IP {i>host<i} pribadi yang dipisahkan spasi tempat server Cassandra dihosting dalam cluster. PG_MTLS_HOSTS
Daftar alamat IP host pribadi yang dipisahkan ruang tempat server Postgres dihosting dalam cluster. RT_MTLS_HOSTS
Daftar alamat IP {i>host<i} pribadi yang dipisahkan ruang tempat {i>Router<i} di-{i>host <i}di . MTLS_ENCAPSULATE_LDAP
Mengenkripsi traffic LDAP antara Pemroses Pesan dan server LDAP. Tetapkan ke y
.MS_MTLS_HOSTS
Daftar alamat IP host pribadi yang dipisahkan spasi tempat node Server Pengelolaan berada yang dihosting di cluster. MP_MTLS_HOSTS
Daftar alamat IP host pribadi yang dipisahkan spasi tempat Pemroses Pesan berada yang dihosting di cluster. QP_MTLS_HOSTS
Daftar alamat IP host pribadi yang dipisahkan spasi tempat server Qpid dihosting gugus ini. ENABLE_SIDECAR_PROXY
Menentukan apakah Cassandra dan Postgres harus mengetahui mesh layanan. Anda harus menetapkan nilai ini ke "y".
ENCRYPT_DATA
Kunci enkripsi berenkode base64 yang digunakan oleh Consul . Anda membuat kunci ini dengan menggunakan Perintah consul keygen
di Langkah 2: Instal Consul dan membuat kredensial.Nilai ini harus sama di semua node dalam cluster.
PATH_TO_CA_CERT
Lokasi file sertifikat pada node. Anda membuat file ini di Langkah 2: Instal Consul dan buat kredensial. Lokasi ini harus sama di seluruh node dalam cluster sehingga file konfigurasinya sama.
Sertifikat harus berenkode X509v3.
PATH_TO_CA_KEY
Lokasi file kunci pada node. Anda membuat file ini di Langkah 2: Instal Consul dan buat kredensial. Lokasi ini harus sama di seluruh node dalam cluster sehingga file konfigurasinya sama.
File kunci harus berenkode X509v3.
APIGEE_MTLS_NUM_DAYS_CERT_VALID_FOR
Jumlah hari kelayakan sertifikat jika Anda membuat sertifikat kustom.
Nilai defaultnya adalah 365. Nilai maksimum adalah 7865 hari (5 tahun).
Selain properti yang tercantum di atas, Apigee mTLS menggunakan beberapa properti tambahan saat Anda menginstalnya di konfigurasi multi-pusat data. Untuk informasi selengkapnya, lihat Mengonfigurasi beberapa pusat data.
- Pastikan properti
ENABLE_SIDECAR_PROXY
bernilai "y". - Perbarui alamat IP di properti terkait host. Pastikan untuk menggunakan
private saat merujuk ke setiap node, bukan public
menggunakan alamat IP internalnya.
Pada langkah selanjutnya, Anda akan menetapkan nilai properti lain seperti
ENCRYPT_DATA
,PATH_TO_CA_CERT
, danPATH_TO_CA_KEY
. Anda belum menetapkan nilainya.Saat mengedit properti konfigurasi
apigee-mtls
, perhatikan hal-hal berikut:- Semua properti adalah string; Anda harus menggabungkan nilai semua properti dalam satu atau dua tanda petik.
- Jika nilai terkait host memiliki lebih dari satu alamat IP pribadi, pisahkan setiap alamat IP dengan spasi.
- Gunakan alamat IP pribadi dan bukan nama host atau alamat IP publik untuk semua yang terkait dengan host di file konfigurasi.
- Urutan alamat IP di nilai properti harus dalam urutan yang sama di semua file konfigurasi di seluruh cluster.
- Simpan perubahan Anda pada file konfigurasi.
Langkah 2: Instal Consul dan buat kredensial
Bagian ini menjelaskan cara menginstal Consul dan membuat kredensial.
Anda harus memilih salah satu metode berikut untuk membuat kredensial:
- Buat CA Anda sendiri menggunakan Consul, seperti yang dijelaskan di bagian ini (disarankan)
- Gunakan kredensial CA yang ada dengan Apigee mTLS (lanjutan)
Tentang kredensial
Kredensial terdiri dari:
- Sertifikat: Sertifikat TLS yang dihosting di setiap node
- Kunci: Kunci publik TLS yang dihosting di setiap node
- Pesan gosip: Kunci enkripsi berenkode base-64
Anda hanya membuat satu versi dari setiap file ini satu kali. Anda menyalin kunci dan sertifikat file ke semua node di cluster Anda, dan tambahkan kunci enkripsi ke file konfigurasi yang Anda juga akan menyalinnya ke semua node.
Untuk informasi selengkapnya tentang implementasi enkripsi Consul, lihat artikel berikut:
Instal Consul dan buat kredensial
Anda menggunakan biner Konsul lokal untuk membuat kredensial yang digunakan Apigee mTLS untuk yang mengautentikasi komunikasi yang aman di antara node di cluster Private Cloud Anda. Hasilnya, Anda dapat harus menginstal Consul di komputer administrasi Anda sebelum Anda dapat membuat kredensial.
Untuk menginstal Consul dan membuat kredensial mTLS:
- Pada komputer administrasi Anda, unduh biner Consul 1.6.2 dari Situs HashiCorp.
- Ekstrak konten file arsip yang didownload. Misalnya, ekstrak konten ke
/opt/consul/
. - Di komputer administrasi Anda, buat {i>Certificate Authority<i} (CA) baru dengan menjalankan
perintah berikut:
/opt/consul/consul tls ca create
Consul membuat file berikut, yang merupakan pasangan sertifikat/kunci:
consul-agent-ca.pem
(sertifikat)consul-agent-ca-key.pem
(kunci)
Secara default, file sertifikat dan kunci dienkode X509v3.
Nantinya, Anda akan menyalin file ini ke semua node dalam cluster. Namun, untuk saat ini, Anda harus hanya tentukan lokasi di node tempat file ini akan ditempatkan. Keduanya seharusnya sama lokasi di setiap {i>node<i}. Misalnya,
/opt/apigee/
. - Di file konfigurasi, tetapkan nilai
PATH_TO_CA_CERT
ke lokasi sebagai yang akan Anda salin fileconsul-agent-ca.pem
pada node. Contoh:PATH_TO_CA_CERT="/opt/apigee/consul-agent-ca.pem"
- Tetapkan nilai
PATH_TO_CA_KEY
ke lokasi tempat Anda akan menyalinconsul-agent-ca-key.pem
pada node. Contoh:PATH_TO_CA_KEY="/opt/apigee/consul-agent-ca-key.pem"
- Buat kunci enkripsi untuk Consul dengan menjalankan perintah berikut:
/opt/consul/consul keygen
Consul menghasilkan string acak yang terlihat mirip dengan yang berikut ini:
QbhgD+EXAMPLE+Y9u0742X/IqX3X429/x1cIQ+JsQvY=
- Salin string dan tetapkan sebagai nilai properti
ENCRYPT_DATA
di elemen file konfigurasi Anda. Contoh:ENCRYPT_DATA="
QbhgD+EXAMPLE+Y9u0742X
/IqX3X429/x1cIQ+JsQvY=" - Simpan file konfigurasi Anda.
Contoh berikut menunjukkan setelan terkait mTLS dalam file konfigurasi (dengan contoh ):
... IP1=10.126.0.121 IP2=10.126.0.124 IP3=10.126.0.125 IP4=10.126.0.127 IP5=10.126.0.130 ALL_IP="$IP1 $IP2 $IP3 $IP4 $IP5" LDAP_MTLS_HOSTS="$IP3" ZK_MTLS_HOSTS="$IP3 $IP4 $IP5" CASS_MTLS_HOSTS="$IP3 $IP4 $IP5" PG_MTLS_HOSTS="$IP2 $IP1" RT_MTLS_HOSTS="$IP4 $IP5" MS_MTLS_HOSTS="$IP3" MP_MTLS_HOSTS="$IP4 $IP5" QP_MTLS_HOSTS="$IP2 $IP1" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="QbhgD+EXAMPLE+Y9u0742X/IqX3X429/x1cIQ+JsQvY=" PATH_TO_CA_CERT="/opt/apigee/consul-agent-ca.pem" PATH_TO_CA_KEY="/opt/apigee/consul-agent-ca-key.pem" ...
Langkah 3: Distribusikan file konfigurasi dan kredensial
Salin file berikut ke node yang menjalankan ZooKeeper menggunakan alat seperti
scp
:
- File konfigurasi: Salin versi yang diperbarui dari file ini dan ganti versi yang ada di semua node (bukan hanya node yang menjalankan ZooKeeper).
- consul-agent-ca.pem: Salin ke lokasi yang Anda tentukan sebagai nilai
PATH_TO_CA_CERT
di file konfigurasi. - consul-agent-ca-key.pem: Salin ke lokasi yang Anda tentukan sebagai nilai
PATH_TO_CA_KEY
di file konfigurasi.
Pastikan lokasi tempat Anda menyalin sertifikat dan file kunci cocok dengan nilai yang Anda tetapkan di file konfigurasi di Langkah 2: Instal Consul dan buat kredensial.
Langkah 4: Melakukan inisialisasi apigee-mtls
Setelah Anda memperbarui file konfigurasi, salin file tersebut beserta kredensialnya ke semua node di
cluster, dan menginstal apigee-mtls
di setiap node, Anda siap menginisialisasi
Komponen apigee-mtls
di setiap node.
Untuk melakukan inisialisasi apigee-mtls:
- Login ke node di cluster sebagai pengguna root. Anda dapat melakukan langkah-langkah berikut pada {i>node<i} di urutan apa pun yang Anda inginkan.
- Jadikan pengguna
apigee:apigee
sebagai pemilik file konfigurasi yang diupdate, sebagai contoh berikut menunjukkan:chown apigee:apigee config_file
- Konfigurasikan komponen
apigee-mtls
dengan menjalankan perintah berikut:/opt/apigee/apigee-service/bin/apigee-service apigee-mtls setup -f config_file
- (Opsional) Jalankan perintah berikut untuk memastikan penyiapan Anda berhasil:
/opt/apigee/apigee-mtls/lib/actions/iptables.sh validate
- Mulai mTLS Apigee dengan menjalankan perintah berikut:
/opt/apigee/apigee-service/bin/apigee-service apigee-mtls start
Setelah menginstal mTLS Apigee, Anda harus memulai komponen ini sebelum komponen pada node.
- (Khusus node Cassandra) Cassandra memerlukan argumen tambahan untuk berfungsi dalam
keamanan. Oleh karena itu, Anda harus menjalankan perintah berikut di setiap node Cassandra:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- (Khusus node postgres) Postgres memerlukan argumen tambahan untuk berfungsi dalam
keamanan. Oleh karena itu, Anda harus melakukan hal berikut pada node Postgres:
(Khusus master)
- Jalankan perintah berikut pada node master Postgres:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql configure
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
(Khusus standby)
- Cadangkan data Postgres yang ada. Untuk menginstal Apigee mTLS, Anda harus menginisialisasi ulang {i>node<i} master/standby, sehingga akan terjadi kehilangan data. Untuk informasi selengkapnya, lihat Menyiapkan replikasi master/standby untuk Postgres.
- Hapus semua data Postgres:
rm -rf /opt/apigee/data/apigee-postgresql/pgdata
- Konfigurasikan Postgres, lalu mulai ulang Postgres, seperti yang ditunjukkan contoh berikut:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql configure
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
Jika Anda menginstal pada topologi pusat data multi, gunakan jalur absolut untuk file konfigurasi Anda.
- Jalankan perintah berikut pada node master Postgres:
- Mulai komponen Apigee yang tersisa pada node di
start order, karena
contoh berikut menunjukkan:
/opt/apigee/apigee-service/bin/apigee-service component_name start
- Ulangi proses ini untuk setiap node dalam cluster.
- (Opsional) Pastikan bahwa inisialisasi
apigee-mtls
berhasil menggunakan satu atau lebih dari metode berikut:- Memvalidasi konfigurasi iptables
- Memverifikasi status proxy jarak jauh
- Memverifikasi status kuorum
Setiap metode ini dijelaskan dalam Memverifikasi konfigurasi.
Mengubah konfigurasi apigee-mtls yang ada
Untuk menyesuaikan konfigurasi apigee-mtls
yang ada, Anda harus meng-uninstal dan
instal ulang apigee-mtls
.
Untuk menegaskan hal ini, saat mengubah konfigurasi mTLS Apigee yang ada:
- Jika Anda mengubah file konfigurasi, Anda harus terlebih dahulu meng-uninstal
apigee-mtls
dan jalankan kembalisetup
atauconfigure
:# DO THIS:
/opt/apigee/apigee-service/bin/apigee-service apigee-mtls uninstall
# BEFORE YOU DO THIS:/opt/apigee/apigee-service/bin/apigee-service apigee-mtls setup -f file
OR/opt/apigee/apigee-service/bin/apigee-service apigee-mtls configure
- Anda harus meng-uninstal dan menjalankan kembali
setup
atauconfigure
pada semua node dalam cluster, bukan hanya satu node.