ApsaraDB RDS for MySQL mendukung sertifikat yang dikelola Alibaba Cloud maupun sertifikat kustom untuk enkripsi SSL. Topik ini menjelaskan cara menghasilkan sertifikat kustom menggunakan OpenSSL dan mengonfigurasikannya pada instans RDS Anda.
Prasyarat
Sebelum memulai, pastikan Anda telah:
-
OpenSSL telah terinstal
-
Linux: OpenSSL telah terinstal secara bawaan. Tidak diperlukan tindakan tambahan.
-
Windows: Unduh dan instal OpenSSL dari slproweb.com.
-
-
Memiliki instans RDS yang memenuhi persyaratan versi:
Edition
Supported MySQL versions
RDS High-availability Edition
MySQL 8.4, 8.0, 5.7, atau 5.6
RDS Cluster Edition
MySQL 8.4, 8.0, atau 5.7
RDS Basic Edition
MySQL 8.4, 8.0, atau 5.7
-
(Hanya diperlukan untuk enkripsi SSL wajib) Instans menjalankan MySQL 8.4, 8.0, atau 5.7 pada salah satu edisi di atas, dengan versi mesin minor 20241130 atau lebih baru.
Catatan penggunaan
-
Mengaktifkan SSL meningkatkan pemanfaatan CPU serta latensi baca dan tulis.
-
Setelah mengaktifkan SSL, tutup koneksi yang ada dan buat koneksi ulang agar enkripsi berlaku.
-
Mengonfigurasi atau memodifikasi sertifikat kustom, atau menonaktifkan SSL, akan memicu restart selama kurang lebih 3 menit. Lakukan operasi ini pada jam sepi.
-
Saat enkripsi SSL wajib diaktifkan, hanya koneksi terenkripsi SSL yang diterima. Koneksi non-SSL akan ditolak.
Langkah 1: Hasilkan sertifikat kustom
Jangan menambahkan kata sandi pada kunci privat. Kunci privat yang dilindungi kata sandi akan mencegah SSL diaktifkan.
Perintah berikut menggunakan sintaks CentOS. Di Windows, jalankan perintah openssl yang sama, tetapi salin file dan edit kontennya secara manual alih-alih menggunakan cp dan vim.
-
Hasilkan sertifikat CA self-signed (
server-ca.crt) dan kunci privatnya (server-ca.key). Nilai-daysmenentukan periode validitas sertifikat. Atur nilai ini sesuai kebijakan rotasi Anda (misalnya, 365 hari untuk perpanjangan tahunan).openssl req -new -x509 -days 365 -nodes -out server-ca.crt -keyout server-ca.key -subj "/CN=root-ca" -
Hasilkan permintaan penandatanganan sertifikat (CSR) (
server.csr) dan kunci privat server (server.key). Gantirm-bpxxxxx.mysql.rds.aliyuncs.comdengan titik akhir yang ingin Anda lindungi. Untuk menemukan titik akhir Anda, lihat View and manage instance endpoints and ports. Sertifikat kustom melindungi satu titik akhir.Parameter
Description
Example
Country Name
Kode negara ISO dua huruf
CN
State or Province Name
Provinsi
ZheJiang
Locality Name
Kota
HangZhou
Organization Name
Nama perusahaan
Alibaba
Organizational Unit Name
Nama departemen
Aliyun
Common Name
Didefinisikan dalam openssl.cnf; biarkan kosong
—
Email Address
Biarkan kosong
—
A challenge password
Biarkan kosong
—
An optional company name
Biarkan kosong
—
openssl req -new -nodes -text -out server.csr -keyout server.key -subj "/CN=rm-bpxxxxx.mysql.rds.aliyuncs.com"Saat diminta, konfigurasikan bidang opsional Permintaan Penandatanganan Sertifikat (CSR):
-
Tandatangani CSR dengan sertifikat CA untuk menghasilkan sertifikat server (
server.crt).openssl x509 -req -in server.csr -text -days 365 -CA server-ca.crt -CAkey server-ca.key -CAcreateserial -out server.crt -
Verifikasi file yang dihasilkan dengan menjalankan
ls:File
Content
server.crtSertifikat server
server.keyKunci privat sertifikat server
server-ca.crtSertifikat CA self-signed
server-ca.keyKunci privat sertifikat CA self-signed
# ls server-ca.crt server-ca.key ca.srl server.crt server.csr server.key
Langkah 2: Unggah sertifikat dan aktifkan SSL
Setelah Anda mengonfigurasi sertifikat kustom, status instans berubah menjadi Modifying SSL Settings selama kurang lebih 3 menit. Tunggu hingga status kembali menjadi Running sebelum melanjutkan.
-
Masuk ke Konsol ApsaraDB RDS. Pada halaman Instances, pilih wilayah tempat instans Anda berada, lalu klik ID instans tersebut.
-
Di panel navigasi kiri, klik Data Security. Pada halaman yang muncul, klik tab SSL.
-
Klik Custom Certificate, lalu klik sakelar di samping Disabled.
-
Pada kotak dialog yang muncul, konfigurasikan parameter berikut dan klik OK.
Parameter
Description
Server Certificate
Tempel seluruh isi
server.crt, dari-----BEGIN CERTIFICATE-----hingga-----END CERTIFICATE-----.Private key of server certificate
Tempel seluruh isi
server.key, dari-----BEGIN PRIVATE KEY-----hingga-----END PRIVATE KEY-----.Forceful Encryption
Aktifkan untuk hanya mengizinkan koneksi terenkripsi SSL. Tersedia hanya pada MySQL 8.4, 8.0, atau 5.7 dengan versi mesin minor 20241130 atau lebih baru.
Langkah 3: Terhubung ke instans melalui SSL
Anda dapat terhubung ke instans RDS melalui SSL. Untuk informasi selengkapnya, lihat Connect to an ApsaraDB RDS for MySQL instance over SSL.
Langkah 4: (Opsional) Perbarui sertifikat kustom
Memperbarui sertifikat memicu restart, kecuali untuk MySQL 8.0. Lakukan operasi ini pada jam sepi.
Pada tab SSL, klik Update SSL. Pada kotak dialog yang muncul, tempel konten terbaru untuk Server Certificate dan Private key of server certificate, lalu klik OK.
Langkah 5: (Opsional) Nonaktifkan enkripsi SSL
Menonaktifkan SSL memicu restart. Lakukan operasi ini pada jam sepi.
Pada tab SSL, klik sakelar di samping Enabled.
FAQ
Apa yang harus saya lakukan jika sertifikat kustom saya akan kedaluwarsa?
Periode validitas sertifikat kustom ditentukan oleh nilai -days yang Anda atur saat menghasilkannya. Sistem akan mengirim notifikasi sebelum kedaluwarsa. Saat menerima notifikasi tersebut, kami menyarankan agar Anda segera memperbarui sertifikat untuk mencegah dampak pada beban kerja Anda.