Di tengah pesatnya perkembangan dunia digital, keamanan web menjadi salah satu hal yang paling penting untuk diperhatikan oleh para pemilik website maupun pengguna.
Tapi Sahabat Qwords, apakah kalian sudah pernah mendengar istilah HSTS? Kalau belum, mari kita bahas selengkap-lengkapnya dalam artikel ini.
Apa itu HSTS?
Melansir dari cio.gov, HSTS atau HTTP Strict Transport Security adalah pengamanan di mana pengunjung website akan selalu terhubung dengan web yang menggunakan https bukan http.
Dengan kata lain, jika situs web sudah mengaktifkan HSTS, maka setiap kali pengguna mengaksesnya, browser akan secara otomatis memaksakan penggunaan koneksi aman yaitu HTTPS.
Fitur ini dirancang untuk mencegah serangan seperti man-in-the-middle (MITM), di mana pihak ketiga bisa mencuri data saat pengguna mengakses website melalui jaringan tidak aman, misalnya WiFi publik.
Dengan HSTS, setiap kali Sahabat Qwords mengakses situs yang telah mengaktifkannya, browser akan otomatis mengarahkan koneksi ke HTTPS meskipun kamu mengetikkan “http://” di address bar.
Bagaimana Cara Kerja HSTS?
HSTS pada dasarnya bekerja dengan cara yang cukup kompleks. Sederhananya, ada beberapa alur yang akan dilalui dalam cara kerja HSTS seperti berikut.
- Pertama, pengunjung akan mengetik alamat website di mesin pencarian, umumnya mereka hanya menuliskan nama dan domain tanpa keterangan HTTP atau HTTPS.
- Kedua, karena tidak ada keterangan maka browser akan menganggap kalau pengunjung ingin masuk ke HTTP, namun ketika browser ingin membuka pintu masuk ke HTTP, tapi ternyata website itu sudah menggunakan HTTPS.
- Ketiga, karena sudah menggunakan HTTPS, maka browser akan langsung mengalihkannya ke HTTPS dengan kode respon 301. Jadi walau pengunjung mengetik HTTP, maka browser akan tetap membuka HTTPS.
Selain itu, HSTS juga akan memastika bahwa browser hanya menampilkan yang HTTPS saja dan lagi HSTS dapat menspesifikasi memberikan sebuah arahan dari server kepada browser.
Ada Tiga arahan dari server kepada browser yaitu:
1. Max-age
Ini adalah inti dari HSTS. Max-age adalah angka (dalam detik) yang menentukan berapa lama browser harus “mengingat” bahwa sebuah website hanya boleh diakses lewat HTTPS.
Biasanya, angka ini diatur antara 1 hingga 2 tahun. Jadi, begitu browser menerima header ini, ia akan langsung memblokir semua koneksi HTTP ke situs tersebut selama jangka waktu yang sudah ditentukan.
2. IncludeSubDomains
Kalau kamu mengaktifkan directive ini, maka bukan hanya domain utama saja yang wajib pakai HTTPS, tapi juga semua subdomainnya.
Contohnya, kalau example.com punya subdomain seperti blog.example.com atau shop.example.com, semuanya akan ikut dipaksa menggunakan HTTPS juga.
3. Preload
Directive ini digunakan kalau kamu ingin situsmu masuk ke daftar HSTS preload, yaitu daftar situs-situs terpercaya yang langsung dipaksa pakai HTTPS oleh browser, bahkan sebelum pengunjung mengakses situsmu.
Tapi tentu saja, ada syaratnya. Situsmu harus sudah:
- Menggunakan HTTPS sepenuhnya
- Mengaktifkan includeSubDomains
- Mengatur max-age minimal 1 tahun
- Menambahkan kata preload dalam header
- Contoh header lengkapnya seperti ini:
Begitu Sahabat Qwords mengunjungi situs yang sudah mengaktifkan HSTS, browser akan menerima sinyal bahwa situs ini hanya menggunakan HTTPS.
Kalau misalnya ada masalah, seperti:
- Sertifikat SSL kadaluarsa
- HTTPS belum dikonfigurasi dengan benar
Maka browser akan langsung memblokir koneksi, dan tidak memberikan opsi “lanjutkan” seperti biasanya.
Mengapa HSTS Itu Penting?
Bagi Sahabat Qwords yang peduli terhadap keamanan data dan kenyamanan pengguna, HSTS sangatlah penting karena:
- Mencegah serangan man-in-the-middle (MITM).
- Menghindari serangan SSL stripping yang memaksa koneksi turun ke HTTP.
- Membantu menjaga reputasi dan profesionalitas website.
- Menjaga data sensitif tetap terlindungi selama proses komunikasi antara browser dan server.
Lalu, Apa Bedanya dengan HTTP?
Nah, ini pertanyaan menarik! Meski terdengar mirip, HTTP dan HSTS punya perbedaan yang cukup mendasar.
HTTP (Hypertext Transfer Protocol) adalah protokol komunikasi standar antara browser dan server. Namun, HTTP biasa tidak dienkripsi, sehingga data mu bisa dibaca siapa saja jika jaringan mu tidak aman (misalnya di WiFi publik).
Sementara itu, HSTS bukan protokol komunikasi, melainkan mekanisme keamanan tambahan yang bekerja di atas HTTPS. Fungsinya untuk memaksa koneksi hanya berjalan di HTTPS, sehingga lebih sulit untuk disusupi.
Secara sederhana:
- HTTP = Protokol awal, tapi tidak aman.
- HTTPS = HTTP yang sudah diamankan dengan enkripsi SSL/TLS.
- HSTS = Sistem keamanan tambahan yang mencegah browser menggunakan HTTP secara tidak sengaja.
HSTS atau HTTP, Bagus Mana?
Kalau pertanyaannya “bagus mana”, jelas HSTS lebih unggul, karena tujuannya memang untuk menambal kelemahan HTTP dan memperkuat HTTPS.
Berikut beberapa poin keunggulan HSTS:
- Keamanan Lebih Tinggi: HTTP tidak terenkripsi, sementara HSTS memastikan semua komunikasi hanya dilakukan lewat HTTPS. Ini melindungi pengguna dari pencurian data atau serangan man-in-the-middle.
- Perlindungan Tambahan: HSTS secara otomatis memblokir koneksi HTTP biasa dan mencegah browser terhubung ke situs tanpa enkripsi, sehingga memperkecil risiko kebocoran data.
- Pengalaman Pengguna Lebih Aman: Dengan HSTS, pengguna tidak perlu khawatir mengetik alamat tanpa “https://”, karena browser akan langsung mengarahkannya ke versi aman secara otomatis.
Meski sangat bermanfaat, HSTS juga memiliki beberapa tantangan:
- Tidak Bisa Dicabut Cepat: Setelah diterapkan, browser akan menyimpan aturan HSTS selama max-age berlangsung.
- Situs Harus Siap HTTPS 100%: Jika ada bagian situs belum HTTPS, bisa menyebabkan error.
- Harus Konfigurasi dengan Hati-hati: Salah konfigurasi bisa membuat situs tidak bisa diakses sama sekali.
Namun, tetap perlu diperhatikan, HSTS tidak bisa langsung aktif tanpa HTTPS. Artinya, situs harus sudah memiliki sertifikat SSL/TLS agar bisa memanfaatkan fitur HSTS ini. Jadi bisa dibilang, HSTS bukan pengganti, tapi justru pelengkap terbaik untuk HTTPS.
Apakah Semua Website Perlu HSTS?
Jawabannya adalah tidak selalu, tapi sangat dianjurkan, terutama bagi website yang menangani data sensitif seperti informasi pengguna, login, transaksi, dan sebagainya.
Banyak perusahaan teknologi besar seperti Google, Facebook, dan Twitter juga sudah menggunakan HSTS untuk meningkatkan lapisan keamanan mereka.
Tapi ingat, ketika kamu mengaktifkan HSTS, kamu perlu memastikan situsmu benar-benar siap. Kalau HTTPS-nya rusak atau sertifikat SSL-nya kadaluarsa, browser akan langsung memblokir akses, tanpa memberikan opsi “Lanjutkan dengan risiko” seperti biasanya.
Cara Mengentikan HSTS
Nah Sahabat Qwords, sekarang kamu sudah tahu apa itu HSTS, cara kerjanya, dan seberapa penting fungsinya dalam keamanan website.
Tapi bagaimana kalau terjadi masalah? Misalnya:
- Sertifikat SSL situsmu kadaluarsa
- Ada kesalahan konfigurasi HTTPS
- Atau kamu ingin mengakses situs tertentu yang sudah menyimpan aturan HSTS di browser
Tenang, kamu bisa menghapus atau menonaktifkan HSTS secara manual di beberapa browser. Caranya memang berbeda-beda tergantung dari browser yang digunakan, tapi semuanya bisa dilakukan dengan langkah yang cukup mudah.
Berikut panduannya:
Google Chrome
1. Ketikkan chrome://net-internals/#hsts di kolom URL.
2. Scroll ke bawah sampai kamu menemukan bagian Delete domain security policies.
3. Masukkan domain (tanpa https://) ke kolom tersebut, lalu klik Delete.
4. Untuk memastikan berhasil, masukkan domain yang sama di kolom Query HSTS/PKP, lalu klik Query.
5. Kalau muncul tulisan “Not Found”, berarti HSTS untuk domain tersebut sudah berhasil dihapus.
Mozilla Firefox
Tutup dulu halaman error (jika ada).
1. Buka Riwayat (History) dengan:
Ctrl + Shift + H(Windows)Cmd + Shift + H(Mac)
2. Cari domain yang ingin dihapus menggunakan fitur pencarian.
3. Setelah ketemu, klik kanan pada entri tersebut, lalu pilih Forget About This Site.
4. Restart browser Firefox kamu, dan HSTS pun sudah berhasil dihapus untuk domain tersebut.
Safari (macOS)
1. Tutup browser Safari terlebih dahulu.
2. Buka direktori Home, lalu cari dan hapus file:~/Library/Cookies/HSTS.plist
3. Setelah file tersebut dihapus, buka kembali Safari dan kamu sudah bisa mengakses situs tanpa hambatan HSTS.
Menonaktifkan HSTS sebaiknya hanya dilakukan jika benar-benar diperlukan, misalnya:
- Saat kamu sedang memperbaiki masalah SSL di website kamu
- Saat ingin mengakses kembali situs yang sempat error karena HSTS
- Atau saat melakukan testing dan debugging situs yang baru migrasi ke HTTPS
Kalau situsmu sendiri yang menggunakan HSTS dan kamu ingin menonaktifkannya secara permanen, kamu bisa menghapus directive HSTS dari konfigurasi server-mu. Tapi ingat, jika situsmu sudah masuk ke dalam HSTS preload list, proses penghapusannya jauh lebih rumit dan tidak bisa langsung dicabut begitu saja.
Nah Sahabat Qwords, sekarang kamu sudah tahu apa itu HSTS, cara kerjanya, dan seberapa penting fungsinya dalam keamanan website.
HSTS bukan hanya tambahan, tapi bisa menjadi penentu utama dalam menjaga koneksi antara pengguna dan website tetap aman dan konsisten.
Kalau kamu sudah menggunakan HTTPS, tidak ada salahnya mulai mempertimbangkan mengaktifkan HSTS juga, agar tingkat keamanan websitemu naik satu level lebih tinggi!
Jangan ragu untuk terus update pengetahuan keamanan digital kamu ya, Sahabat Qwords!

