Pemecahan Masalah Sertifikat SSL & ServBay CA
Dokumen ini menguraikan masalah umum seputar sertifikat SSL dan ServBay CA pada lingkungan pengembangan lokal ServBay, serta cara untuk mengatasinya.
Mengapa Browser Saya Menampilkan Sertifikat SSL Tidak Tepercaya?
Saat Anda mencoba mengakses situs web lokal yang dihosting oleh ServBay melalui browser dan menerima peringatan seperti berikut, biasanya itu menandakan ada masalah pada pengaturan sertifikat SSL Anda:
- Chrome / Edge:
Your connection is not private
(Koneksi Anda tidak privat)- Kode error:
NET::ERR_CERT_AUTHORITY_INVALID
- Kode error:
NET::ERR_CERT_COMMON_NAME_INVALID
(tidak umum tapi bisa muncul jika sertifikat tidak sesuai dengan domain)
- Firefox:
Warning: Potential Security Risk Ahead
(Peringatan: Risiko Keamanan Potensial di Depan)- Setelah klik "Lanjutan", mungkin muncul error
SEC_ERROR_UNKNOWN_ISSUER
- Kode error:
SSL_ERROR_BAD_CERT_DOMAIN
(jika sertifikat tidak cocok dengan domain)
- Safari:
This Connection Is Not Private
(Koneksi Ini Tidak Privat)Safari can't verify the identity of the website "your-domain.test"
(Safari tidak bisa memverifikasi identitas situs “domain-anda.test”)
Penyebab utama dari masalah ini biasanya adalah ServBay User CA
atau ServBay Public CA
belum terpasang dan dipercaya dengan benar di sistem Anda. Hal ini bisa terjadi akibat:
- Sertifikat root ServBay belum dimasukkan ke daftar sertifikat tepercaya pada sistem.
- Anda sebelumnya menggunakan domain yang sama (misal
myapp.test
) di lingkungan pengembangan lokal lain (seperti MAMP atau Laravel Herd), sehingga terjadi konflik sertifikat atau cache kepercayaan yang salah pada browser karena sistem sertifikat mereka berbeda.
Solusi
Ikuti langkah-langkah berikut:
- Buka ServBay
- Buka menu Pengaturan (Settings) dan temukan bagian ServBay Root CA.
- Klik Reinstall ServBay Root CA (Pasang Ulang ServBay Root CA). ServBay akan mencoba memperbaiki pemasangan serta kepercayaan root CA secara otomatis.
- Tutup dan buka kembali browser Anda sepenuhnya (pastikan semua jendela dan proses telah ditutup untuk membersihkan cache SSL).
- Coba akses kembali situs Anda. Masalah sertifikat SSL seharusnya sudah teratasi.
Jika masalah tetap terjadi:
Ini sering berarti ada sertifikat lama, konflik, atau invalid di sistem Anda—khususnya bila Anda pernah membuat sertifikat untuk domain sama memakai alat lain (semisal MAMP atau Herd).
- Buka aplikasi Keychain Access (Akses Rantai Kunci) di macOS (ada di “Aplikasi” > “Utilitas”).
- Pada kolom pencarian di kanan atas, masukkan nama domain yang bermasalah (misal
myapp.test
, atau bisa juga coba kata kuncimamp
atauherd
jika tidak yakin, untuk mencari CA terkait). - Pada filter “Jenis”, pilih Certificates (Sertifikat).
- Temukan semua sertifikat SSL yang berkaitan dengan domain yang dimasukkan. Perhatikan Issuer/ Penerbit apakah bertuliskan
ServBay User CA
,MAMP Development CA
,Laravel Herd CA
, atau yang serupa. - Pilih seluruh sertifikat terkait domain bermasalah (khususnya yang bukan dari
ServBay User CA
atau yang mencurigakan), kemudian tekan tombolDelete
untuk menghapusnya. Anda mungkin diminta memasukkan password sistem. Hati-hati: pastikan hanya menghapus sertifikat yang terkait dengan domain pengembangan lokal Anda. - (Opsional, tapi sangat disarankan) Cari kembali
ServBay User CA
danServBay Public CA
di Keychain. Pastikan sertifikatnya tersedia dan tidak ada ikon "x" merah (tanda tidak dipercaya). Jika tidak dipercaya (ada tanda silang merah), klik dua kali pada sertifikat, buka bagian “Trust (Kepercayaan)”, lalu pilih “Always Trust (Selalu Percaya)” untuk “When using this certificate”. - Kembali ke aplikasi ServBay.
- Buka Settings (Pengaturan) -> ServBay Root CA.
- Klik Recreate All ServBay User Certificates (Buat Ulang Semua Sertifikat Pengguna ServBay). Ini akan menghasilkan ulang seluruh sertifikat SSL untuk seluruh situs yang dikelola ServBay.
- Restart Mac Anda. Langkah ini memastikan seluruh layanan serta sistem memuat lagi sertifikat terbaru dan kepercayaannya.
- Buka browser dan coba akses situs Anda lagi.
Dengan menambahkan contoh pesan error di atas, pengguna bisa lebih mudah mengenali apakah masalahnya berkaitan dengan kepercayaan sertifikat SSL dan langsung menemukan solusi tepat.
Bagaimana Jika Sertifikat SSL Hilang?
Ketika mengembangkan situs lokal dengan ServBay, terkadang file sertifikat SSL situs dapat hilang secara tidak sengaja. Ini dapat menyebabkan server web (seperti Nginx, Caddy, atau Apache) tidak bisa berjalan atau gagal memuat situs dengan benar, serta menampilkan error yang berkaitan dengan file sertifikat di log.
Deskripsi Masalah
Jika file sertifikat SSL (.crt
dan .key
) yang diterbitkan otomatis oleh ServBay hilang, Anda mungkin menemukan pesan error seperti berikut pada log server web Anda. Kesalahan-kesalahan ini biasanya menunjukkan server tidak menemukan atau tidak dapat membaca file sertifikat pada path yang ditentukan.
Berikut beberapa contoh pesan error yang umum:
Error Nginx:
log
nginx: [emerg] cannot load certificate "/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt": BIO_new_file() failed (SSL: error:80000002:system library::No such file or directory:calling fopen(/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt, r) error:10000080:BIO routines::no such file)
nginx: configuration file /Applications/ServBay/package/etc/nginx/nginx.conf test failed
1
2
2
Error Caddy:
log
Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open /Applications/ServBay/ssl/private/tls-certs/servbay.host/ser3vbay.host.crt: no such file or directory
1
Error Apache:
log
AH00526: Syntax error on line 15 of /Applications/ServBay/package/etc/apache/vhosts/servbay.host.conf:
SSLCertificateFile: file '/Applications/ServBay/ssl/pri3vate/tls-certs/servbay.host/servbay.host.crt' does not exist or is empty
1
2
2
Inti dari pesan tersebut sama: path file sertifikat SSL yang diatur di server web Anda tidak valid karena file tidak ada atau tidak bisa diakses.
Solusi
Untuk sertifikat SSL yang diterbitkan otomatis oleh ServBay, terdapat mekanisme otomatis untuk mendeteksi dan menerbitkan ulang jika sertifikat hilang.
Ikuti langkah berikut:
- Jalankan ServBay App: Pastikan aplikasi ServBay sudah aktif.
- Buka Daftar Situs: Pada sidebar kiri aplikasinya, klik Situs Web.
- Pilih Situs yang Bermasalah: Cari situs lokal Anda yang mengalami sertifikat SSL hilang, lalu klik pada namanya.
- Deteksi & Terbitkan Otomatis: Saat konfigurasi situs dimuat, ServBay akan otomatis memeriksa keberadaan file sertifikat SSL yang diperlukan. Jika ditemukan berkas hilang (misal file
.crt
atau.key
), ServBay akan secara otomatis menerbitkan ulang dan menempatkan sertifikat baru ke direktori yang tepat (/Applications/ServBay/ssl/private/tls-certs/nama-domain-anda/
). - Restart Server Web: Setelah file sertifikat berhasil dibuat ulang, restart layanan server web (Nginx, Caddy, atau Apache) yang melayani situs tersebut. Di sidebar, buka halaman Paket Software, cari server web yang Anda gunakan, lalu klik tombol restart (ikon panah melingkar).
- Pastikan Masalah Teratasi: Setelah server web berhasil dijalankan ulang, coba akses kembali situs lokal Anda melalui HTTPS (misal
https://nama-domain-anda
). Masalah seharusnya sudah terselesaikan dan situs dapat diakses normal menggunakan HTTPS.
Catatan Penting
- Solusi di atas khusus untuk sertifikat SSL yang diterbitkan otomatis oleh ServBay. Jika Anda memakai sertifikat SSL custom yang diimpor sendiri, ServBay tidak akan menerbitkannya ulang secara otomatis saat hilang—Anda perlu mencari atau mengimpor ulang sendiri.
- ServBay menggunakan ServBay User CA internal untuk menerbitkan sertifikat SSL lokal. Jika Anda tetap menemui pesan peringatan sertifikat tak dipercaya saat membuka situs HTTPS lokal, kemungkinan ServBay User CA belum dipercaya di sistem atau browser Anda. Silakan baca dokumentasi Kepercayaan ServBay CA untuk penjelasan pengaturannya.
- ServBay menyediakan fitur backup data, termasuk konfigurasi situs dan sertifikat SSL. Backup rutin akan sangat membantu saat terjadi hal-hal tak terduga.
FAQ
T: Kenapa ServBay menerbitkan sertifikat SSL otomatis untuk situs lokal?
J: ServBay bertujuan menyediakan lingkungan pengembangan lokal yang total seperti produksi. Untuk memudahkan debugging aplikasi HTTPS, ServBay memakai ServBay User CA internal untuk otomatis menerbitkan sertifikat SSL setiap kali Anda membuat situs lokal, sehingga mendukung akses HTTPS secara lokal.
T: Apakah saya bisa menggunakan sertifikat SSL sendiri?
J: Bisa. ServBay mendukung impor dan penggunaan sertifikat SSL Anda sendiri (termasuk dari ACME / Let's Encrypt). Panduan pemecahan masalah ini hanya berlaku untuk sertifikat otomatis dari ServBay.
T: Apakah aman menerbitkan ulang sertifikat?
J: Aman. Untuk lingkungan pengembangan lokal, sertifikat yang diterbitkan ulang ServBay adalah yang ditandatangani ServBay User CA dan hanya berlaku di komputer lokal — tidak berpengaruh pada keamanan situs Anda di Internet publik.
Kesimpulan
ServBay menghadirkan mekanisme mudah untuk mengelola sertifikat SSL di lingkungan pengembangan lokal. Jika sertifikat SSL otomatis untuk situs lokal Anda hilang, cukup ikuti langkah di atas — ServBay akan mendeteksi dan menerbitkan ulang sertifikat secara otomatis sehingga Anda dapat segera kembali mengakses situs secara aman melalui HTTPS.