한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Buku Putih Lag Game › L13 Arsitektur dan operasional server

Sertifikat TLS kedaluwarsa atau salah konfigurasi TLS certificate expiry / misconfiguration

ID penyebab in-cert · Penanggung jawab utama Infrastruktur jaringan (Tim Infrastruktur) · Turut terlibat Infrastruktur server (Tim Infrastruktur), Pengembangan klien (Tim Pengembang Game)

Buka kartu interaktif dengan gambar dan simulasi →

Jika sertifikat server login, API, atau patch kedaluwarsa atau sertifikat perantaranya tidak disertakan, koneksi TLS dari klien yang baru tersambung gagal sejak saat itu.

Mengapa Masa berlaku sertifikat sudah lewat, server mengirim tanpa sertifikat perantara, atau tanggal dan jam di perangkat pemain salah → Akibatnya Klien gagal memverifikasi sertifikat dan memutus koneksi TLS → Di layar Tidak bisa masuk atau loading tanpa henti di tahap login atau patch, atau hanya fitur HTTPS seperti toko yang gagal. Pemain yang sudah terhubung biasanya baik-baik saja

Gejala
Tidak bisa masuk / loading tanpa henti, Aksi hilang / rollback
Faktor
Stall
Siapa yang mengalami
Seluruh server, Fitur tertentu saja, Hanya saya
Kapan
Tepat setelah login atau maintenance, Saat melakukan aksi tertentu
Penanggung jawab
Penanggung jawab utama Infrastruktur jaringan (Tim Infrastruktur) · Turut terlibat Infrastruktur server (Tim Infrastruktur), Pengembangan klien (Tim Pengembang Game)
Tugas Tim Pengembang Game
Catat error sertifikat dengan kode error yang dibedakan dari kegagalan koneksi lain dan tampilkan panduannya, jika masalahnya tanggal minta pemain menyetel tanggal dan jam perangkat secara otomatis, jika memakai certificate pinning sertakan kunci cadangan dan samakan jadwal penggantian sertifikat dengan Tim Infrastruktur.
Tugas Tim Infrastruktur
Jaringan: jika TLS diterminasi di load balancer atau CDN, pasang alert untuk status pembaruan otomatis dan sisa hari sertifikat terkelola (di ACM: DaysToExpiry), pertahankan record DNS untuk validasi. Server/OS: jika TLS diterminasi di server, otomatiskan pembaruan dan muat ulang konfigurasi setelah pembaruan, konfigurasikan chain yang menyertakan sertifikat perantara, periksa sisa masa berlaku setiap alamat login, API, dan patch secara berkala dari luar dan pasang alert.
Kisaran angka
Sertifikat Let’s Encrypt berlaku 90 hari dan disarankan diperbarui setiap 60 hari, sedangkan AWS Certificate Manager memeriksa sertifikat yang divalidasi lewat DNS 45 hari sebelum kedaluwarsa lalu memperbaruinya otomatis. Jika pembaruan otomatis gagal diam-diam, koneksi baru tertahan serentak tepat pada saat kedaluwarsa.
Di grafik
Koneksi putus serentak · Jumlah login berhasil, jumlah error TLS handshake
Yang diperiksa
Lihat daftar sertifikat yang benar-benar dikirim server dengan openssl s_client -connect HOST:443 -showcerts, lalu periksa tanggal kedaluwarsa (notAfter) tiap sertifikat dengan openssl x509 -noout -enddate. Jika TLS diterminasi di load balancer, periksa jumlah error negosiasi TLS (di AWS ALB dan NLB: ClientTLSNegotiationErrorCount) dan jumlah login berhasil
Cocok jika
Tanggal kedaluwarsa sudah lewat atau sertifikat perantara tidak ada di daftar yang dikirim server, dan waktu error mulai naik bertepatan dengan waktu kedaluwarsa atau waktu sertifikat diganti
Tidak cocok jika
Daftar sertifikat dan tanggal kedaluwarsa normal tetapi hanya sebagian pemain yang gagal: periksa tanggal dan jam perangkat pemain itu, atau daftar root certificate di OS lama
Sarana pemeriksaan
Tools infrastruktur (tanpa perlu kode game)
Pelajari lebih lanjut
Konfigurasi tanpa sertifikat perantara bisa terlihat normal saat dibuka di browser PC. Browser mengingat sertifikat perantara yang pernah diterima dari situs lain dan memakainya untuk mengisi kekosongan, tetapi klien yang tidak punya ingatan seperti itu, misalnya aplikasi Android, akan gagal. Masa berlaku juga makin pendek. Let’s Encrypt berencana memangkas masa berlaku default menjadi 64 hari pada 2027 dan 45 hari pada 2028, sehingga konfigurasi yang dipatok memperbarui setiap 60 hari hanya punya sisa empat hari untuk sertifikat 64 hari, dan sudah melewati masa kedaluwarsa untuk sertifikat 45 hari. AWS Certificate Manager juga tidak memperbarui otomatis sertifikat yang diimpor (import), dan pembaruan gagal jika record DNS untuk validasi dihapus. Gejala login tertahan mirip dengan “Gangguan dan latensi DNS”, tetapi masalah sertifikat gagal di TLS handshake setelah alamat server ditemukan, dan waktu mulainya bertepatan dengan waktu kedaluwarsa atau waktu sertifikat diganti.

Sumber

  1. RFC 5280: Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile IETF
    Masa berlaku sertifikat dari notBefore sampai notAfter; validasi jalur memeriksa apakah waktu saat ini masih dalam masa berlaku untuk setiap sertifikat di chain (gagal jika jam pihak yang memvalidasi salah)
  2. FAQ Let's Encrypt
    Masa berlaku default sertifikat 90 hari, disarankan diperbarui setiap 60 hari
  3. Decreasing Certificate Lifetimes to 45 Days Let's Encrypt
    Memangkas masa berlaku default menjadi 64 hari mulai Februari 2027 dan 45 hari mulai Februari 2028; pembaruan dengan interval tetap 60 hari tidak lagi cukup, jadi disarankan memperbarui pada sekitar dua pertiga masa berlaku
  4. Renewal for domains validated by DNS AWS
    45 hari sebelum kedaluwarsa, memeriksa apakah sertifikat dipakai di layanan AWS dan apakah record CNAME untuk validasi ada, lalu memperbaruinya otomatis; jika tidak bisa divalidasi, notifikasi dikirim 30, 15, 7, 3, dan 1 hari sebelum kedaluwarsa
  5. Managed certificate renewal in AWS Certificate Manager AWS
    Sertifikat yang diimpor (import) dan sertifikat yang sudah kedaluwarsa tidak diperbarui otomatis
  6. Supported CloudWatch metrics AWS
    DaysToExpiry: sisa hari sampai sertifikat kedaluwarsa, dipublikasikan dua kali sehari sampai kedaluwarsa
  7. Security with network protocols Android (Google)
    Jika server mengirim tanpa sertifikat perantara, aplikasi Android gagal dengan SSLHandshakeException, tetapi browser PC bisa tidak menampilkan error karena mengisinya dengan sertifikat perantara yang pernah diterima; periksa chain yang dikirim server dengan openssl s_client
  8. Network security configuration Android (Google)
    Jika memakai certificate pinning, kunci cadangan harus disertakan untuk berjaga-jaga saat kunci diganti atau CA berubah; jika tidak, koneksi terputus sampai aplikasi diperbarui
  9. openssl-s_client OpenSSL
    -showcerts: menampilkan daftar sertifikat yang dikirim server sesuai urutan pengirimannya (daftar ini belum tentu chain yang terverifikasi)
  10. openssl-x509 OpenSSL
    -enddate: menampilkan tanggal kedaluwarsa sertifikat (notAfter); -checkend: memeriksa apakah sertifikat kedaluwarsa dalam jumlah detik yang ditentukan
  11. CloudWatch metrics for your Application Load Balancer AWS
    ClientTLSNegotiationErrorCount: jumlah koneksi yang gagal membentuk sesi TLS, misalnya saat klien memutus koneksi karena gagal memverifikasi sertifikat server
  12. CloudWatch metrics for your Network Load Balancer AWS
    ClientTLSNegotiationErrorCount: jumlah TLS handshake yang gagal bernegosiasi antara klien dan TLS listener

Lihat juga

Lapisan yang sama: L13 Arsitektur dan operasional server

Penyebab di lapisan lain dengan gejala yang sama (Tidak bisa masuk / loading tanpa henti)

Lihat kartu interaktif dengan gambar dan simulasi