Menggunakan Sijil SSL Pihak Ketiga dalam ServBay
Untuk mensimulasikan persekitaran produksi semasa pembangunan atau ujian tempatan, penggunaan sijil SSL yang dikeluarkan oleh pihak Ketiga (CA) yang dipercayai dapat memastikan laman web anda boleh diakses secara selamat melalui HTTPS. Ini sangat penting untuk menguji fungsi yang bergantung pada HTTPS atau memastikan persekitaran tempatan anda setanding dengan persekitaran produksi sebenar. Artikel ini akan menerangkan secara terperinci cara mengkonfigurasi sijil SSL pihak ketiga dalam persekitaran pembangunan web tempatan ServBay.
Sila ambil perhatian, sijil SSL yang dikeluarkan oleh CA pihak ketiga kebiasaannya hanya menyokong akhiran nama domain standard seperti .com
, .org
, .net
, .cn
dan sebagainya. Mereka tidak menyokong akhiran bukan standard (seperti .local
, .test
, .demo
dan lain-lain) kerana domain sebegini tidak boleh disahkan secara terbuka. Jika domain pembangunan tempatan anda menggunakan akhiran bukan standard, disyorkan untuk menggunakan ciri ServBay User CA atau ServBay Public CA bagi menjana sijil SSL tempatan yang dipercayai.
Senario Penggunaan
- Mensimulasikan persekitaran produksi: Mendapatkan konfigurasi HTTPS yang hampir sama dengan produksi dan menguji tingkah laku laman ketika di bawah HTTPS.
- Menguji fungsi yang bergantung pada HTTPS: Uji API atau fungsi penyemak imbas yang memerlukan “Secure Context”, seperti Service Workers, Web Crypto API, Geolocation dan sebagainya.
- Pembangunan API secara lokal: Masukkan HTTPS pada API backend yang berjalan secara tempatan, memudahkan frontend menyambung melalui HTTPS.
Prasyarat
Pastikan anda telah memenuhi syarat berikut sebelum bermula:
- ServBay telah dipasang dan dijalankan pada macOS.
- Ada pengetahuan asas tentang penggunaan terminal dan baris arahan.
- Sistem mempunyai alat OpenSSL (biasanya tersedia secara lalai dalam macOS).
Langkah 1: Memohon Sijil SSL Pihak Ketiga
Mula-mula, anda perlu memohon sijil SSL dari CA pihak ketiga yang dipercayai seperti Let's Encrypt, DigiCert, GlobalSign, Sectigo dan lain-lain. Bahagian ini akan membimbing anda menghasilkan Certificate Signing Request (CSR), iaitu langkah penting dalam permohonan sijil.
Menjana kunci peribadi (Private Key)
Kunci peribadi adalah fail penting untuk menyahsulit trafik HTTPS pada pelayan anda. Ia mesti disimpan dengan selamat dan tidak didedahkan. Jalankan arahan OpenSSL berikut di terminal untuk menjana kunci RSA:
shopenssl genpkey -algorithm RSA -out servbay.demo.key -pkeyopt rsa_keygen_bits:2048
1openssl genpkey
: Arahan OpenSSL untuk penjanaan kunci peribadi.-algorithm RSA
: Tentukan algoritma sebagai RSA.-out servbay.demo.key
: Fail output dinamakanservbay.demo.key
.-pkeyopt rsa_keygen_bits:2048
: Panjang kunci RSA ialah 2048 bit, minimum yang disyorkan bagi keselamatan masa kini.
Menjana Certificate Signing Request (CSR)
CSR ialah fail yang mengandungi kunci awam dan maklumat untuk permohonan sijil. Fail ini perlu dikemukakan kepada pihak CA. Gunakan kunci peribadi yang dijana tadi untuk mencipta CSR:
shopenssl req -new -key servbay.demo.key -out servbay.demo.csr
1openssl req
: Arahan OpenSSL untuk memproses permintaan CSR.-new
: Menjana CSR baharu.-key servbay.demo.key
: Guna fail kunci peribadi untuk penandatanganan.-out servbay.demo.csr
: Nama fail output CSR menjadiservbay.demo.csr
.
Selepas menjalankan arahan tersebut, sistem akan meminta anda mengisi beberapa maklumat untuk CSR. Sila isikan mengikut keperluan sebenar atau arahan CA. Contoh pengisian dan penjelasan:
Country Name (2 letter code) [AU]:CN # Kod negara, contohnya CN (China), US (Amerika Syarikat) State or Province Name (full name) [Some-State]:Hong Kong # Nama negeri/provinsi Locality Name (eg, city) []:Kowloon # Nama bandar Organization Name (eg, company) [Internet Widgits Pty Ltd]:ServBay # Nama organisasi/syarikat Organizational Unit Name (eg, section) []:Development # Nama jabatan/unit (pilihan) Common Name (e.g. server FQDN or YOUR name) []:servbay.demo # **PENTING: Masukkan domain penuh (FQDN) untuk sijil yang dipohon.** Email Address []:[email protected] # E-mel untuk hubungi (pilihan) Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: # Kata laluan cabaran (biasanya dibiarkan kosong) An optional company name []: # Nama syarikat (pilihan, boleh dibiarkan kosong)
1
2
3
4
5
6
7
8
9
10
11
12Pastikan bidang
Common Name
diisi tepat dengan domain yang akan digunakan dalam ServBay sepertiservbay.demo
. Jika anda perlu mengemukakan sijil untuk berbilang domain (SAN/multi-domain), proses penyenaraian berbilang domain biasanya disediakan dalam sistem permohonan CA, atau setengah CA menyediakan alat untuk menjana CSR dengan SAN secara dalam talian.Mengemukakan CSR dan Mendapatkan Sijil
Salin atau muat naik kandungan fail
servbay.demo.csr
ke laman web CA pilihan anda dan ikuti proses pengesahan (melalui rekod DNS, fail HTTP atau e-mel) bagi membuktikan pemilikan domain. Selepas pengesahan berjaya, CA akan mengeluarkan fail sijil. Anda biasanya akan menerima:- Fail sijil utama anda (cth.
servbay.demo.crt
atauservbay.demo.pem
). - Satu atau lebih fail sijil perantaraan (untuk membentuk rantaian sijil, cth.
intermediate.crt
,ca-bundle.crt
). - Fail sijil root (biasanya tidak perlu dipasang secara berasingan kerana sudah disertakan dalam pelayar/sistem operasi).
- Fail sijil utama anda (cth.
Langkah 2: Mengkonfigurasi Sijil SSL Pihak Ketiga dalam ServBay
Selepas memperoleh sijil daripada CA pihak ketiga, seterusnya anda perlu mengimport dan mengkonfigurasi sijil dalam ServBay supaya laman web anda menggunakan HTTPS.
ServBay mengesyorkan untuk menyimpan fail sijil dan kunci peribadi tersuai di direktori /Applications/ServBay/ssl/import/tls-certs/
untuk kemudahan pengurusan.
Pindahkan fail sijil dan kunci peribadi ke direktori yang ditetapkan
Pindahkan fail kunci peribadi (
servbay.demo.key
), fail sijil utama (servbay.demo.crt
), dan mana-mana fail sijil perantaraan (cth.intermediate.crt
) ke direktori import ServBay:shmv servbay.demo.key /Applications/ServBay/ssl/import/tls-certs/ mv servbay.demo.crt /Applications/ServBay/ssl/import/tls-certs/ # Jika mempunyai fail sijil perantaraan, pindahkan juga mv intermediate.crt /Applications/ServBay/ssl/import/tls-certs/ # Sekiranya ada sijil perantaraan lain # mv another_intermediate.crt /Applications/ServBay/ssl/import/tls-certs/
1
2
3
4
5
6Gabungkan sijil perantaraan ke dalam fail sijil utama
Untuk memastikan pelayar boleh mengesahkan rantaian sijil, anda perlu menambah semua kandungan fail sijil perantaraan ke hujung fail sijil utama anda. Biasanya urutan di mana sijil perlu digabungkan: sijil utama -> semua sijil perantaraan (mengikut turutan dari CA) -> sijil root (tidak perlu biasanya). CA akan menyatakan urutan yang tepat jika ada. Tambahkan setiap fail perantaraan ke penghujung
servbay.demo.crt
mengikut turutan.Contoh, jika fail perantaraan ialah
intermediate.crt
:shcat intermediate.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt
1Jika ada lebih daripada satu fail perantaraan dan urutannya ialah
intermediate1.crt
->intermediate2.crt
:shcat intermediate1.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt cat intermediate2.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt
1
2Selepas digabungkan, fail
servbay.demo.crt
mengandungi sijil utama dan seluruh rangkaian sijil perantaraan.Buka Panel Pengurusan ServBay
Lancarkan aplikasi ServBay dan cari ikon ServBay pada bar menu atau Dock. Klik untuk membuka panel pengurusan.
Tambah atau Sunting Laman Web
Pada bar navigasi kiri panel pengurusan ServBay, pilih
Laman Web
.- Jika mencipta laman baharu, klik butang
+
di kanan atas. - Jika ingin mengkonfigurasi sijil untuk laman sedia ada, pilih laman tersebut dan klik butang edit (ikon pensel).
- Jika mencipta laman baharu, klik butang
Konfigurasi Sijil SSL
Pada bahagian SSL dalam tetapan laman, anda akan melihat pilihan kaedah penandatanganan sijil. Pilih
Custom
(Tersuai).- Certificate Key File (fail kunci peribadi): Klik Browse, pergi ke direktori
/Applications/ServBay/ssl/import/tls-certs/
dan pilih fail kunci peribadi anda, cth.servbay.demo.key
. - Certificate File (fail sijil): Klik Browse, ke direktori yang sama, kemudian pilih fail sijil utama yang telah digabungkan, cth.
servbay.demo.crt
.
(Nota: Lalui contoh gambar, jalur gambar sebenar perlu dikemas kini menurut dokumentasi ServBay sebenar)
- Certificate Key File (fail kunci peribadi): Klik Browse, pergi ke direktori
Tetapkan domain dan root direktori laman
Dalam konfigurasi laman, pastikan bidang
Domain
diisi dengan domain yang digunakan dalam permohonan sijil, cth.servbay.demo
. Seterusnya, tetapkanDocument Root
laman anda seperti/Applications/ServBay/www/servbay.demo
.Simpan dan Terapkan Konfigurasi
Setelah selesai, klik butang simpan. ServBay akan meminta untuk menerapkan perubahan dan memulakan semula pelayan web berkaitan (seperti Caddy, Nginx atau Apache). Sahkan perubahan tersebut.
Pengesahan Konfigurasi
Konfigurasi sudah lengkap — anda kini boleh melawat laman yang dikonfigurasikan (cth. https://servbay.demo
) melalui penyemak imbas. Jika semuanya betul, ikon kunci akan dipaparkan di bar alamat. Klik ikon tersebut untuk melihat maklumat sijil dan pastikan ia adalah sijil dari CA pihak ketiga yang telah anda import, dan rantaian sijil adalah lengkap.
Jika terdapat masalah, semak perkara berikut:
- Sama ada domain padan dengan Common Name atau SAN dalam sijil.
- Laluan fail kunci peribadi dan sijil adalah tepat.
- Fail sijil mengandungi semua sijil perantaraan dalam urutan betul.
- Konfigurasi laman dalam ServBay telah disimpan dan diterapkan.
- Sistem anda mempercayai sijil root CA yang dikeluarkan (kebanyakan root CA pihak ketiga sudah dipercayai sistem operasi dan pelayar utama).
Perkara Penting
- Padanan Domain: Sijil yang diimport mesti sepadan sepenuhnya dengan domain yang anda konfigurasikan dalam ServBay (termasuk sub-domain, jika sijil adalah jenis wildcard).
- Tempoh Luput Sijil: Sijil pihak ketiga mempunyai tarikh luput. Pastikan anda memperbaharui dan mengemas kini fail sijil dalam ServBay sebelum tarikh tamat.
- Keselamatan Kunci Peribadi: Fail kunci peribadi (
.key
) sangat sensitif. Pastikan ia disimpan dengan selamat. - Pilihan SSL lain dari ServBay: ServBay turut menawarkan kaedah konfigurasi SSL lain, seperti:
- ServBay User CA / Public CA: Untuk penjanaan sijil pembangunan tempatan yang dipercayai, menyokong apa jua akhiran domain.
- ACME (Let's Encrypt): Untuk domain standard, ServBay boleh mengintegrasikan klien ACME dan memperolehi/menyambung sijil Let's Encrypt secara automatik. Kaedah import tersuai yang diulas dalam artikel ini sesuai untuk anda yang sudah sedia mempunyai sijil dari pihak ketiga.
Soalan Lazim (FAQ)
S1: Saya menerima fail sijil dalam format .pfx
atau .p12
, bagaimana hendak digunakan dalam ServBay?
J1: Fail .pfx
atau .p12
biasanya mengandungi kunci peribadi dan rantaian sijil. Anda perlu mengekstrak kunci peribadi (.key
) dan sijil (.crt
) menggunakan OpenSSL. Contoh:
sh
openssl pkcs12 -in your_certificate.pfx -nocerts -out your_private_key.key -nodes
openssl pkcs12 -in your_certificate.pfx -clcerts -nokeys -out your_certificate.crt
1
2
2
Setelah diekstrak, pastikan anda memperoleh fail sijil perantaraan yang berasingan (biasanya disediakan oleh CA) dan gabungkan seperti diterangkan dalam Langkah 2 di atas.
S2: Saya sudah mengkonfigurasi seperti diterangkan, tetapi penyemak imbas masih memaparkan amaran sambungan tidak selamat?
J2: Sila semak:
- Padanan domain: Domain yang diakses melalui pelayar sama dengan domain dalam sijil?
- Rantaian sijil lengkap: Fail
.crt
yang diimport mengandungi semua sijil perantaraan dalam urutan betul? Anda boleh menyemak dengan alat pemeriksaan SSL atas talian. - ServBay dimulakan semula: Pastikan pelayan web ServBay telah di-restart selepas konfigurasi.
- Cache penyemak imbas: Padam cache penyemak imbas atau cuba mod Incognito.
- Sistem mempercayai sijil: Sah sistem operasi anda mempercayai root CA sijil.
Ringkasan
Dengan mengikuti panduan ini, anda boleh berjaya mengkonfigurasi dan menggunakan sijil SSL pihak ketiga dalam persekitaran pembangunan tempatan ServBay. Ini membolehkan anda mensimulasikan konfigurasi HTTPS produksi dengan lebih tepat, sekali gus memudahkan proses pembangunan dan pengujian tempatan. Walaupun terdapat beberapa pilihan konfigurasi SSL lain dalam ServBay (seperti ACME atau ServBay CA), memahami cara mengimport sijil pihak ketiga secara manual juga sangat berguna untuk memenuhi keperluan tertentu atau migrasi sijil sedia ada.