Cara Mengatasi Error SSL Certificate Expired di Website

Yusuf
By: Yusuf October Mon 2026
Cara Mengatasi Error SSL Certificate Expired

Server Solusi – Website yang sebelumnya bisa dibuka melalui HTTPS dapat tiba-tiba menampilkan peringatan sertifikat kedaluwarsa. Browser mungkin menampilkan pesan seperti NET::ERR_CERT_DATE_INVALID, Certificate has expired, atau peringatan bahwa koneksi tidak aman.

Masalah ini perlu segera diperiksa, terutama jika website digunakan untuk login pelanggan, transaksi, atau layanan bisnis. Pengunjung bisa kehilangan kepercayaan, sementara aplikasi yang melakukan validasi sertifikat secara ketat mungkin menolak koneksi sepenuhnya.

Saya tidak memiliki log atau konfigurasi server tertentu untuk dijadikan bukti pengalaman perbaikan langsung. Karena itu, panduan ini menggunakan prosedur troubleshooting yang dapat kamu ikuti untuk menemukan penyebab dan memverifikasi hasil perbaikannya.

Memahami Penyebab SSL Certificate Expired

Sertifikat SSL/TLS memiliki masa berlaku. Ketika tanggal kedaluwarsanya terlewati, browser yang memvalidasi sertifikat tersebut dapat menolak koneksi HTTPS.

Namun, pesan sertifikat tidak valid tidak selalu berarti sertifikat utama benar-benar kedaluwarsa. Ada beberapa kondisi yang perlu dibedakan.

GejalapenyebabPemeriksaan
NET::ERR_CERT_DATE_INVALIDSertifikat kedaluwarsa, belum berlaku, atau jam perangkat keliruTanggal sertifikat dan waktu sistem
Certificate has expiredSertifikat yang disajikan server sudah melewati masa berlakuPeriksa notAfter
Sertifikat masih berlaku, tetapi browser memberi peringatanNama domain tidak cocok atau rantai sertifikat bermasalahPeriksa SAN dan certificate chain
SSL valid di domain utama, tetapi gagal di wwwDomain menggunakan konfigurasi atau sertifikat berbedaUji kedua hostname
SSL kembali kedaluwarsa setelah diperbaruiPerpanjangan otomatis gagal atau server masih menyajikan sertifikat lamaPeriksa renewal log dan endpoint HTTPS
SSL valid di origin tetapi tidak valid dari browserProxy, CDN, load balancer, atau server lain menyajikan sertifikat berbedaPeriksa setiap endpoint

Catatan penting: memperpanjang sertifikat hanya menyelesaikan masalah masa berlaku. Jika masalah sebenarnya adalah nama domain yang tidak cocok, rantai sertifikat yang tidak lengkap, atau konfigurasi TLS pada CDN, kamu perlu memperbaiki bagian tersebut secara terpisah.

Cara Memeriksa Sertifikat SSL yang Kedaluwarsa

Sebelum memperbarui sertifikat, pastikan sertifikat yang bermasalah memang sertifikat yang disajikan kepada pengunjung.

1: Periksa tanggal kedaluwarsa dari browser

Buka website menggunakan HTTPS, lalu pilih informasi koneksi atau sertifikat pada browser. Nama menu dapat berbeda menurut browser yang digunakan.

Perhatikan informasi berikut:

  • Valid from: awal masa berlaku sertifikat.

  • Valid to: akhir masa berlaku sertifikat.

  • Subject Alternative Name (SAN): daftar domain yang tercakup dalam sertifikat.

  • Issuer: pihak yang menerbitkan sertifikat.

Pastikan domain yang bermasalah tercantum dalam sertifikat dan tanggalnya sesuai. Jika tanggal sertifikat masih valid tetapi browser tetap memberi peringatan, jangan langsung melakukan renewal.

2: Periksa sertifikat melalui terminal

Dari komputer atau server yang memiliki OpenSSL, jalankan:

openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -subject -issuer -dates

Ganti example.com dengan domain kamu.

Perintah ini mengambil sertifikat yang disajikan endpoint HTTPS, kemudian menampilkan informasi subjek, penerbit, tanggal mulai berlaku, dan tanggal kedaluwarsa.

Contoh format informasi yang akan diperiksa:

notBefore=...notAfter=...

Nilai notAfter menunjukkan batas akhir masa berlaku sertifikat yang diperiksa. Perintah ini tidak membuktikan bahwa sertifikat dipercaya browser atau cocok dengan semua domain; untuk itu diperlukan pemeriksaan tambahan.

Jika sertifikat tidak dapat diambil, periksa konektivitas port 443, konfigurasi TLS, dan apakah endpoint tersebut dapat dijangkau.

Dokumentasi OpenSSL menjelaskan opsi koneksi TLS dan pemeriksaan sertifikat melalui s_client.

3: Periksa sertifikat untuk setiap domain

Jika website menggunakan domain utama dan subdomain www, jalankan pemeriksaan untuk keduanya.

openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -dates
openssl s_client -connect www.example.com:443 -servername www.example.com </dev/null 2>/dev/null | openssl x509 -noout -dates

Opsi -servername mengirimkan SNI (Server Name Indication), sehingga server dapat menyajikan sertifikat yang sesuai dengan hostname yang diminta.

Jika tanggal atau identitas sertifikat berbeda, periksa konfigurasi virtual host, DNS, dan layanan proxy yang menangani masing-masing domain.

Cara Mengatasi SSL Certificate Expired di VPS Linux

Bagian ini menggunakan asumsi VPS menjalankan Linux dengan systemd dan sertifikat dikelola oleh Certbot. Jika SSL dikelola panel hosting, CDN, atau penyedia sertifikat lain, gunakan metode pengelolaan yang sesuai.

1: Periksa sertifikat yang dikelola Certbot

Jalankan:

sudo certbot certificates

Perintah ini menampilkan sertifikat yang dikenal Certbot, termasuk nama sertifikat, domain, lokasi file, dan tanggal kedaluwarsa.

Bandingkan informasi tersebut dengan sertifikat yang diperiksa dari browser. Keduanya bisa berbeda jika web server menggunakan file sertifikat lain atau koneksi melewati proxy.

Jika Certbot tidak tersedia, jangan langsung menginstalnya sebelum memastikan cara SSL dikelola pada server tersebut.

2: Periksa alasan renewal gagal

Jika sertifikat seharusnya diperpanjang otomatis tetapi ternyata kedaluwarsa, periksa log Certbot:

sudo tail -n 100 /var/log/letsencrypt/letsencrypt.log

Lokasi log dapat berbeda jika Certbot dipasang melalui metode atau lingkungan yang berbeda.

Cari pesan yang berkaitan dengan validasi domain, DNS, koneksi port 80, izin akses, atau kegagalan autentikasi ACME. Pesan tersebut membantu menentukan apakah masalah berada pada validasi domain, konfigurasi renewal, atau proses lainnya.

Periksa juga apakah domain masih mengarah ke server yang benar. Jika IP publik berubah atau DNS mengarah ke server lama, proses penerbitan ulang dapat gagal.

3: Uji proses perpanjangan sebelum menjalankan renewal sebenarnya

Untuk instalasi Certbot yang mendukung pengujian renewal, jalankan:

sudo certbot renew --dry-run

Perintah ini menguji proses renewal menggunakan lingkungan pengujian tanpa menggantikan sertifikat produksi dengan sertifikat hasil pengujian.

Jika pengujian gagal, baca pesan error dan perbaiki penyebabnya terlebih dahulu. Jika berhasil, kamu memiliki indikasi bahwa jalur renewal dapat bekerja, tetapi tetap perlu memastikan proses renewal produksi dan penerapan sertifikat berjalan dengan benar.

Dokumentasi Certbot menjelaskan perilaku renew, pengujian --dry-run, dan pengaturan renewal otomatis.

4: Perbarui sertifikat yang memang dikelola Certbot

Jika sertifikat sudah kedaluwarsa dan konfigurasi renewal telah diperiksa, jalankan:

sudo certbot renew

Perintah tersebut mencoba memperbarui sertifikat yang sudah memenuhi kondisi renewal menurut Certbot. Jika sertifikat belum masuk periode renewal, Certbot mungkin tidak melakukan penerbitan ulang.

Jika sertifikat tertentu perlu ditangani secara khusus, periksa nama sertifikat dengan sudo certbot certificates terlebih dahulu, kemudian gunakan opsi --cert-name yang sesuai. Hindari memakai --force-renewal tanpa alasan karena penerbitan berulang dapat terkena batas penerbitan dari certificate authority.

Jika proses berhasil, lanjutkan dengan memeriksa apakah web server benar-benar menyajikan sertifikat terbaru. Keberhasilan renewal belum tentu berarti konfigurasi endpoint sudah menggunakan file yang diperbarui.

5: Terapkan sertifikat ke web server

Pada konfigurasi Certbot yang menggunakan plugin Nginx atau Apache, pemasangan sertifikat dapat dikelola secara otomatis. Namun, pada konfigurasi manual, reverse proxy, atau arsitektur khusus, kamu mungkin perlu memuat ulang layanan setelah memastikan file sertifikat yang benar digunakan.

Untuk Nginx:

sudo nginx -t

Jika validasi berhasil:

sudo systemctl reload nginx

Untuk Apache pada Ubuntu/Debian:

sudo apache2ctl configtest

Jika validasi berhasil:

sudo systemctl reload apache2

Reload umumnya menerapkan konfigurasi tanpa menghentikan layanan sepenuhnya, tetapi dampaknya tetap bergantung pada konfigurasi dan kondisi service. Jangan melakukan reload jika validasi gagal.

Jika SSL dihentikan pada CDN atau load balancer, pembaruan di origin server saja mungkin tidak mengubah sertifikat yang dilihat pengunjung. Perbarui sertifikat pada komponen yang benar-benar menangani koneksi HTTPS publik.

Jika Menggunakan cPanel atau Panel Hosting

Tidak semua sertifikat SSL dikelola langsung melalui terminal. Pada shared hosting atau VPS yang menggunakan panel, pembaruan sertifikat mungkin ditangani oleh AutoSSL, Let’s Encrypt integration, atau layanan SSL milik provider.

Periksa status SSL dari panel

  1. Masuk ke panel hosting.

  2. Buka menu SSL/TLS atau pengelolaan SSL, sesuai panel yang digunakan.

  3. Cari domain yang menampilkan status kedaluwarsa.

  4. Periksa apakah sertifikat mencakup domain utama dan subdomain www.

  5. Jalankan pembaruan atau proses AutoSSL jika tersedia, kemudian periksa hasilnya.

Jika proses gagal, cari pesan error yang diberikan panel. Masalahnya mungkin berasal dari validasi domain, DNS yang tidak sesuai, atau kegagalan akses ke endpoint validasi.

Jangan mengunggah sertifikat baru tanpa memastikan pasangan private key yang digunakan sesuai. Sertifikat yang tidak cocok dengan private key dapat menyebabkan konfigurasi HTTPS gagal.

Jika SSL menggunakan CDN atau reverse proxy

Jika website menggunakan CDN seperti Cloudflare, terdapat kemungkinan dua koneksi TLS yang berbeda: dari browser ke CDN dan dari CDN ke origin server.

Periksa sertifikat pada kedua sisi. Sertifikat yang valid di origin tidak otomatis menjamin sertifikat pada endpoint publik juga valid, begitu pula sebaliknya.

Pastikan mode enkripsi dan sertifikat origin sesuai dengan arsitektur yang digunakan. Hindari menurunkan keamanan koneksi hanya untuk menghilangkan peringatan SSL.

Jika Sertifikat Tetap Error Setelah Diperbarui

Sertifikat yang sudah diperbarui seharusnya memiliki tanggal berlaku yang sesuai. Namun, browser masih bisa menerima sertifikat lama atau menolak sertifikat baru karena konfigurasi lain belum benar.

Gunakan pemeriksaan berikut untuk mempersempit penyebabnya.

Periksa jam sistem

Tanggal perangkat yang keliru dapat membuat sertifikat yang sebenarnya valid dianggap belum berlaku atau sudah kedaluwarsa.

Pada Linux, jalankan:

timedatectl status

Periksa tanggal, waktu, dan status sinkronisasi jam. Jika waktu server salah, perbaiki mekanisme sinkronisasi waktu sesuai distribusi dan kebijakan server.

Periksa sertifikat yang benar-benar disajikan

Jalankan kembali pemeriksaan OpenSSL setelah renewal dan reload layanan:

openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -dates -fingerprint -sha256

Bandingkan tanggal dan fingerprint sertifikat yang disajikan dengan sertifikat yang seharusnya digunakan. Fingerprint membantu membedakan sertifikat yang berbeda meskipun domainnya sama.

Jika hasilnya masih menunjukkan sertifikat lama, periksa:

  • Apakah konfigurasi web server menunjuk ke file sertifikat yang benar.

  • Apakah reload berhasil.

  • Apakah DNS mengarah ke beberapa server dengan konfigurasi SSL berbeda.

  • Apakah CDN atau load balancer masih menggunakan sertifikat lama.

Periksa rantai sertifikat dan nama domain

Jika tanggal sertifikat sudah benar tetapi browser masih menolak koneksi, periksa nama domain pada SAN, rantai sertifikat, dan status kepercayaan penerbit.

Sertifikat yang tanggalnya valid belum tentu valid untuk hostname yang diminta. Jangan menganggap masalah selesai hanya karena nilai notAfter sudah berada di masa depan.

Cara Memastikan SSL Sudah Normal

Setelah pembaruan, lakukan verifikasi dari sisi server dan klien.

Checklist verifikasi SSL

0/5

Tanggal sertifikat

Tanggal mulai dan kedaluwarsa sesuai dengan sertifikat yang baru.

Nama domain

Sertifikat mencakup hostname yang diuji, termasuk www jika digunakan.

Endpoint publik

Pemeriksaan HTTPS menunjukkan sertifikat yang benar-benar disajikan ke pengunjung.

Web server

Konfigurasi valid dan reload berhasil jika diperlukan.

Browser

Website dapat dibuka tanpa peringatan sertifikat untuk hostname yang diperiksa.

Checklist ini digunakan untuk pengujian mandiri, bukan bukti bahwa suatu website sudah diperbaiki.

Kamu juga dapat menguji respons HTTPS:

curl -Iv https://example.com/

Perintah ini menampilkan informasi koneksi TLS dan respons HTTP. Jika koneksi berhasil, perhatikan status HTTP serta apakah hostname dan sertifikat yang digunakan sesuai. Status HTTP seperti 403 atau 500 tidak otomatis menunjukkan masalah SSL karena dapat berasal dari aplikasi atau konfigurasi server.

Cara Mencegah SSL Certificate Expired Terulang

Masalah sertifikat kedaluwarsa sering kali baru diketahui ketika pengunjung mulai menerima peringatan browser. Agar tidak terlambat menanganinya, buat pemeriksaan berkala yang sesuai dengan sistem pengelolaan SSL.

  • Aktifkan renewal otomatis. Pastikan Certbot timer, cron job, AutoSSL, atau mekanisme lain benar-benar berjalan sesuai instalasi.

  • Uji renewal secara berkala. Gunakan certbot renew --dry-run jika sesuai dengan lingkungan Certbot yang digunakan.

  • Pantau tanggal kedaluwarsa. Buat notifikasi sebelum masa berlaku habis, bukan setelah website bermasalah.

  • Pantau log renewal. Kegagalan validasi domain sebaiknya diketahui lebih awal.

  • Jaga konfigurasi DNS. Perubahan DNS, proxy, atau routing dapat memengaruhi validasi sertifikat.

  • Verifikasi setelah perubahan. Periksa sertifikat dari endpoint publik setelah renewal atau perubahan konfigurasi.

  • Catat lokasi pengelolaan sertifikat. Ketahui apakah SSL dikelola oleh VPS, panel hosting, CDN, atau load balancer agar pembaruan dilakukan pada komponen yang tepat.

Pada server produksi, jangan hanya mengandalkan notifikasi dari certificate authority. Pantau juga hasil renewal dan sertifikat yang benar-benar disajikan kepada pengunjung karena keduanya dapat berbeda.

FAQ Seputar SSL Certificate Expired

1. Apa penyebab SSL certificate expired?

Penyebab langsungnya adalah sertifikat telah melewati tanggal kedaluwarsa. Hal ini dapat terjadi karena renewal otomatis gagal, proses pembaruan tidak dikonfigurasi, atau sertifikat baru tidak diterapkan pada endpoint yang digunakan pengunjung.

2. Bagaimana cara mengatasi SSL certificate expired di VPS?

Periksa sertifikat dengan OpenSSL, lalu periksa konfigurasi renewal. Jika menggunakan Certbot, jalankan sudo certbot certificates, tinjau log, dan uji sudo certbot renew --dry-run. Setelah masalah renewal diperbaiki, lakukan pembaruan dan pastikan web server menyajikan sertifikat yang benar.

3. Apakah SSL gratis dari Let’s Encrypt bisa diperpanjang otomatis?

Bisa, jika mekanisme renewal telah dikonfigurasi dan proses validasi berhasil. Namun, otomatisasi tidak menjamin semua pembaruan berhasil. Periksa timer atau cron job, log renewal, dan akses validasi domain secara berkala.

4. Mengapa SSL masih error padahal sudah diperpanjang?

Kemungkinan endpoint masih menyajikan sertifikat lama, domain tidak tercakup dalam sertifikat baru, rantai sertifikat bermasalah, atau konfigurasi CDN dan origin tidak sesuai. Periksa sertifikat dari koneksi publik, bukan hanya file sertifikat di server.

5. Apakah website harus dimatikan saat memperbarui SSL?

Tidak selalu. Pada banyak konfigurasi Nginx atau Apache, sertifikat dapat diperbarui dan layanan dimuat ulang tanpa menghentikan website sepenuhnya. Namun, metode penerbitan, validasi domain, dan arsitektur hosting menentukan apakah ada dampak layanan.

Penutup

Cara mengatasi error SSL certificate expired dimulai dengan memastikan sertifikat yang disajikan memang kedaluwarsa, kemudian memperbaiki proses renewal dan menerapkan sertifikat yang benar pada endpoint HTTPS.

Jika menggunakan VPS dengan Certbot, periksa daftar sertifikat, log renewal, dan konfigurasi web server. Jika menggunakan panel hosting atau CDN, lakukan pemeriksaan pada komponen yang mengelola TLS untuk pengunjung.

Apabila error tetap muncul setelah pembaruan, periksa tanggal sertifikat, nama domain, rantai sertifikat, DNS, dan kemungkinan adanya endpoint lain yang masih menyajikan sertifikat lama. Dengan langkah tersebut, kamu dapat menentukan tindakan berdasarkan hasil pemeriksaan, bukan sekadar mencoba memperpanjang SSL berulang kali.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *