Panduan SEO Langkah 7: Keamanan — Landasan yang Diharapkan Google pada 2026
Panduan SEO Langkah 7: Keamanan
Ini adalah Langkah 7 dari Panduan SEO 13 Langkah. Keamanan bukan hanya tentang melindungi pengguna — ini berdampak langsung pada peringkat pencarian Anda. Google telah menggunakan HTTPS sebagai sinyal peringkat sejak 2014, dan harapan hanya meningkat.
Sebagian besar pemilik situs menganggap keamanan sebagai sesuatu yang sederhana: "Kami memiliki SSL, jadi kami aman." Nyatanya, Google mengevaluasi puluhan sinyal keamanan. Situs dengan header keamanan yang tepat, sertifikat valid, dan tanpa konten campuran lebih unggul dibandingkan situs yang hanya memiliki sertifikat SSL dasar — semua hal lainnya sama.
Kabar baiknya: sebagian besar perbaikan keamanan adalah konfigurasi sekali jalan. Atur sekali, dan mereka melindungi peringkat Anda selamanya.
Konfigurasi SSL
SSL (secara teknis TLS) mengenkripsi koneksi antara server Anda dan pengunjung. Sejak 2014, Google telah secara eksplisit mengkonfirmasi HTTPS sebagai sinyal peringkat. Pada 2026, tidak memiliki HTTPS bukan hanya masalah peringkat — Chrome menandai situs HTTP sebagai "Tidak Aman" di bilah alamat, menghancurkan kepercayaan pengguna.
Persyaratan untuk SSL yang tepat:
| Persyaratan | Mengapa | Cara Memeriksa | |-------------|---------|----------------| | Sertifikat valid | Kadaluarsa = peringatan browser = pengguna yang keluar | Periksa tanggal kedaluwarsa | | Rantai lengkap | Rantai yang tidak lengkap gagal di beberapa perangkat | Uji SSL Labs | | TLS 1.2+ | Versi lama memiliki kerentanan yang diketahui | Uji SSL Labs | | Tanpa SHA-1 | Sudah usang, browser menolak | Rincian sertifikat | | Cakupan SAN | www dan non-www harus keduanya dicakup | Rincian sertifikat | | Pembaruan otomatis | Mencegah bencana kadaluarsa | Konfigurasi Let's Encrypt / penyedia |
Penilaian SSL:
100% = Sertifikat Valid + Rantai Lengkap + TLS 1.3 + Cipher Kuat + Pembaruan Otomatis
0% = Sertifikat kadaluarsa atau hilang
Kesalahan umum SSL:
- Sertifikat kadaluarsa tanpa pemberitahuan — Atur pemantauan (Langkah 6) minimal 30 hari sebelum kadaluarsa
- Rantai sertifikat yang tidak lengkap — Server harus mengirim sertifikat perantara, bukan hanya yang utama
- Konten campuran — Halaman HTTPS memuat sumber daya HTTP (gambar, skrip, stylesheet)
- Loop pengalihan — Siklus HTTP → HTTPS → HTTP yang disebabkan oleh CDN/proxy yang salah konfigurasi
- Ketidaksesuaian non-www dan www — Sertifikat mencakup satu tetapi tidak yang lain
Quick win: Jalankan domain Anda melalui SSL Labs (ssllabs.com/ssltest). Apa pun di bawah peringkat "A" memiliki masalah yang dapat ditindaklanjuti. Sebagian besar penyedia hosting memperbaikinya dengan satu klik.
Header Keamanan
Header keamanan adalah header respons HTTP yang memberi tahu browser cara bertindak saat memuat situs Anda. Mereka mencegah seluruh kategori serangan — dan crawler Google memeriksa mereka.
Header keamanan yang penting:
Content-Security-Policy (CSP)
CSP adalah header keamanan yang paling kuat. Ini memberi tahu browser dengan tepat sumber daya mana (skrip, gaya, gambar, font) yang diizinkan untuk dimuat di halaman Anda.
Content-Security-Policy: default-src 'self'; script-src 'self' https://cdn.example.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' https://fonts.gstatic.com; connect-src 'self' https://api.example.com; frame-ancestors 'none';
Apa yang CSP cegah:
- Serangan cross-site scripting (XSS)
- Serangan injeksi data
- Clickjacking (melalui
frame-ancestors) - Eksekusi skrip yang tidak sah (cryptominers, injektor iklan)
Strategi penerapan CSP:
- Mulai dengan
Content-Security-Policy-Report-Only(mencatat pelanggaran tanpa memblokir) - Pantau laporan selama 1-2 minggu
- Daftarkan sumber yang sah
- Beralih ke mode penegakan
- Tambahkan
report-uriataureport-tountuk logging pelanggaran yang sedang berlangsung
X-Frame-Options
Mencegah situs Anda disematkan dalam iframe di domain lain (perlindungan clickjacking).
X-Frame-Options: DENY
Atau jika Anda perlu mengizinkan framing dari asal yang sama:
X-Frame-Options: SAMEORIGIN
X-Content-Type-Options
Mencegah browser dari sniffing MIME-type (mengartikan file sebagai tipe yang berbeda dari yang dinyatakan).
X-Content-Type-Options: nosniff
Satu baris ini mencegah serangan di mana file .jpg berisi JavaScript tersembunyi yang mungkin dijalankan browser.
Referrer-Policy
Mengontrol seberapa banyak informasi referrer yang dikirim saat pengguna mengklik tautan dari situs Anda.
Referrer-Policy: strict-origin-when-cross-origin
Ini mengirim URL lengkap untuk permintaan asal yang sama tetapi hanya asal (domain) untuk permintaan lintas asal. Menyeimbangkan kebutuhan analitik dengan privasi.
Permissions-Policy
Mengontrol fitur browser mana (kamera, mikrofon, geolokasi, dll.) yang dapat digunakan di situs Anda.
Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=()
Menonaktifkan fitur yang tidak Anda gunakan mencegah skrip pihak ketiga dari penyalahgunaan.
Contoh penerapan header (Next.js):
// next.config.js
module.exports = {
async headers() {
return [{
source: '/(.*)',
headers: [
{ key: 'X-Content-Type-Options', value: 'nosniff' },
{ key: 'X-Frame-Options', value: 'SAMEORIGIN' },
{ key: 'Referrer-Policy', value: 'strict-origin-when-cross-origin' },
{ key: 'Permissions-Policy', value: 'camera=(), microphone=(), geolocation=()' },
{ key: 'Strict-Transport-Security', value: 'max-age=31536000; includeSubDomains; preload' },
]
}]
}
}
Penerapan header (Apache .htaccess):
Header always set X-Content-Type-Options "nosniff"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set Permissions-Policy "camera=(), microphone=(), geolocation=()"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
Penerapan header (Nginx):
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
Quick win: Tambahkan semua 5 header di atas ke konfigurasi server Anda. Ini memakan waktu 5 menit dan segera meningkatkan postur keamanan Anda di alat pemindaian mana pun.
HSTS Preload
HTTP Strict Transport Security (HSTS) memberi tahu browser untuk selalu menggunakan HTTPS untuk domain Anda — bahkan sebelum permintaan pertama. Tanpa HSTS, kunjungan pertama ke situs Anda mungkin masih menggunakan HTTP (rentan terhadap penyadapan) sebelum pengalihan ke HTTPS terjadi.
Header HSTS:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Tiga arahan:
| Arahan | Arti | |--------|------| | max-age=31536000 | Ingat ini selama 1 tahun (dalam detik) | | includeSubDomains | Terapkan juga ke semua subdomain | | preload | Minta inklusi dalam daftar preload browser |
Daftar preload HSTS:
Perlindungan HSTS ultimate. Browser dilengkapi dengan daftar domain yang harus selalu menggunakan HTTPS. Mengirimkan domain Anda ke hstspreload.org berarti:
- Pengunjung baru mendapatkan HTTPS segera (tanpa pengalihan HTTP → HTTPS)
- Mustahil bagi penyerang untuk menurunkan koneksi
- Permanen (sulit untuk dihapus setelah diajukan)
Persyaratan untuk preload HSTS:
- Sertifikat HTTPS yang valid
- Alihkan semua HTTP ke HTTPS (termasuk subdomain)
- Header HSTS dengan
max-age>= 31536000 - Header HSTS mencakup
includeSubDomains - Header HSTS mencakup
preload - Semua subdomain harus mendukung HTTPS
Peringatan: Hanya kirim ke preload jika SEMUA subdomain Anda mendukung HTTPS. Arahan includeSubDomains berarti subdomain yang hanya HTTP akan menjadi tidak dapat diakses.
Quick win: Jika Anda sudah memiliki HTTPS di semua subdomain, tambahkan header HSTS penuh dan kirim ke hstspreload.org. Prosesnya memakan waktu beberapa minggu tetapi perlindungannya permanen.
Pemindaian Kerentanan
Pemindaian kerentanan otomatis mengidentifikasi masalah keamanan yang diketahui dalam tumpukan Anda sebelum penyerang mengeksploitasinya.
Apa yang diperiksa pemindaian kerentanan:
- Perangkat lunak usang: WordPress, plugin, pustaka JavaScript dengan CVE yang diketahui
- File yang terekspos:
.env,.git,wp-config.php, dump database - Kebocoran informasi: Header versi server, mode debug, stack trace
- Kredensial default: Halaman admin tanpa otorisasi, kata sandi default
- Port/layanan terbuka: Layanan yang tidak perlu terekspos ke internet
- Titik injeksi: Formulir tanpa perlindungan CSRF, input yang tidak tervalidasi
Kerentanan umum berdasarkan platform:
| Platform | Kerentanan Utama | Perbaikan | |----------|-------------------|-----------| | WordPress | Plugin usang | Pembaruan otomatis + WAF | | Shopify | Izin aplikasi pihak ketiga | Audit daftar aplikasi setiap kuartal | | Next.js | Rute API yang terekspos | Middleware otorisasi + pembatasan laju | | Situs statis | Kesalahan konfigurasi CDN | Tinjau aturan cache | | Kustom | Injeksi SQL | Kueri terparameter |
Frekuensi pemindaian:
- Harian: Pemindaian permukaan otomatis (SSL, header, file yang terekspos)
- Mingguan: Pemeriksaan kerentanan ketergantungan (npm audit, pemindai plugin WordPress)
- Bulanan: Pemindaian mendalam dengan pengujian terautentikasi
- Setelah setiap deploy: Pemeriksaan regresi
Quick win: Jalankan npm audit (Node.js) atau periksa daftar plugin CMS Anda untuk komponen yang usang. Perbaiki masalah dengan tingkat keparahan kritis/tinggi segera.
Konten Campuran
Konten campuran terjadi ketika halaman HTTPS memuat sumber daya (gambar, skrip, stylesheet, iframe) melalui HTTP. Ini sebagian memecahkan enkripsi dan memicu peringatan browser.
Jenis konten campuran:
| Jenis | Keparahan | Contoh | Perilaku Browser | |-------|-----------|--------|------------------| | Aktif | Tinggi | Skrip HTTP, iframe, CSS | Diblokir secara default | | Pasif | Sedang | Gambar HTTP, video, audio | Dimuat dengan peringatan |
Konten campuran aktif diblokir oleh browser modern — artinya skrip dan gaya Anda tidak akan dimuat. Konten campuran pasif dimuat tetapi menampilkan peringatan keamanan.
Menemukan konten campuran:
- Buka Chrome DevTools → Konsol
- Cari peringatan "Mixed Content"
- Sebagai alternatif, pindai dengan crawler (Screaming Frog, LANGR)
Sumber konten campuran yang umum:
- URL
http://yang dikodekan dalam konten (postingan blog, deskripsi produk) - Widget pihak ketiga yang memuat sumber daya HTTP
- Konten yang disematkan (embed YouTube lama, widget media sosial)
- CSS
background-imagedengan URL HTTP - Font yang dimuat melalui HTTP
Memperbaiki konten campuran:
<!-- Buruk -->
<img src="http://example.com/image.jpg" />
<!-- Baik -->
<img src="https://example.com/image.jpg" />
<!-- Terbaik (protokol relatif, sesuai dengan protokol halaman) -->
<img src="//example.com/image.jpg" />
Perbaikan database (WordPress):
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://yourdomain.com', 'https://yourdomain.com');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://yourdomain.com', 'https://yourdomain.com');
Quick win: Buka halaman utama Anda di Chrome, tekan F12, periksa tab Konsol untuk peringatan konten campuran. Perbaiki semua yang muncul — ini langsung terlihat oleh Google.
Risiko Skrip Pihak Ketiga
Setiap skrip eksternal yang Anda muat adalah potensi liabilitas keamanan (dan kinerja). Skrip pihak ketiga dapat:
- Terkompromi (serangan rantai pasokan)
- Melacak pengguna Anda tanpa izin (pelanggaran GDPR)
- Memperlambat situs Anda (render-blocking, latensi jaringan)
- Menghancurkan fungsionalitas (pembaruan versi, pemadaman)
- Menyuntikkan konten yang tidak diinginkan (skrip iklan yang salah)
Audit skrip pihak ketiga Anda:
| Skrip | Perlu? | Tingkat Risiko | Alternatif | |-------|--------|----------------|------------| | Google Analytics | Sering ya | Rendah | Pelacakan sisi server | | Widget obrolan | Mungkin | Sedang | Solusi yang di-host sendiri | | Tombol berbagi sosial | Jarang | Sedang | Tautan berbagi statis | | Uji A/B | Terkadang | Tinggi | Pengujian sisi server | | Piksel retargeting | Keputusan bisnis | Tinggi | Data pihak pertama | | Font CDN | Nyaman | Rendah | Font yang di-host sendiri |
Mitigasi risiko untuk skrip pihak ketiga yang penting:
- Integritas Subresource (SRI): Verifikasi hash mencegah skrip yang dirusak dari dimuat
<script src="https://cdn.example.com/lib.js"
integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxAE+sO0..."
crossorigin="anonymous"></script>
- Pembatasan CSP: Hanya izinkan skrip dari domain yang diketahui
- iframe yang terisolasi: Isolasi widget pihak ketiga
- Audit rutin: Tinjau semua sumber daya eksternal setiap kuartal
- Pemantauan: Peringatan saat domain eksternal baru muncul di halaman Anda
Quick win: Daftar setiap tag di HTML Anda yang dimuat dari domain eksternal. Hapus yang tidak Anda kenali atau tidak lagi perlu. Setiap penghapusan meningkatkan baik keamanan maupun kecepatan halaman.
Deteksi Malware & Google Safe Browsing
Google memelihara daftar Safe Browsing dari situs-situs yang diketahui menyebarkan malware atau menghosting konten phishing. Terdaftar di sini adalah bencana bagi SEO — Google menampilkan peringatan halaman penuh sebelum mengizinkan pengguna mengunjungi situs Anda.
Bagaimana situs terdeteksi:
- Situs yang terkompromi menyebarkan malware (WordPress yang diretas, dll.)
- Skrip yang disuntikkan mengarahkan ke situs berbahaya
- Halaman phishing yang dihosting di domain Anda
- Konten yang dibuat pengguna yang menghubungkan ke malware
- Hosting file yang ditandai sebagai berbahaya
Memeriksa status Safe Browsing Anda:
https://transparencyreport.google.com/safe-browsing/search?url=yourdomain.com
Atau di Google Search Console: bagian Masalah Keamanan.
Pencegahan:
- Pertahankan semua perangkat lunak yang diperbarui (CMS, plugin, pustaka)
- Gunakan kata sandi admin yang kuat dan unik + 2FA
- Pantau integritas file (deteksi perubahan yang tidak sah)
- Pindai konten yang diunggah pengguna
- Hapus plugin/tema yang tidak digunakan
- Tinjau pengguna admin secara teratur
Jika Anda terdaftar:
- Identifikasi dan hapus konten malware/phishing
- Perbarui semua perangkat lunak dan ubah semua kata sandi
- Minta peninjauan di Google Search Console
- Peninjauan biasanya memakan waktu 1-3 hari
- Pantau dengan cermat selama 30 hari (re-infeksi adalah hal yang umum)
Quick win: Periksa situs Anda di transparencyreport.google.com. Jika bersih, pastikan CMS dan semua plugin Anda diperbarui untuk tetap bersih.
Checklist Keamanan SEO
- [ ] Sertifikat SSL yang valid dengan pembaruan otomatis yang dikonfigurasi
- [ ] Pengalihan HTTP → HTTPS pada semua halaman (301, bukan 302)
- [ ] Header HSTS dengan max-age >= 31536000
- [ ] Header Content-Security-Policy dikonfigurasi
- [ ] X-Content-Type-Options: nosniff
- [ ] X-Frame-Options: DENY atau SAMEORIGIN
- [ ] Referrer-Policy: strict-origin-when-cross-origin
- [ ] Permissions-Policy menonaktifkan fitur yang tidak digunakan
- [ ] Tanpa konten campuran (sumber daya HTTP di halaman HTTPS)
- [ ] Tanpa file sensitif yang terekspos (.env, .git, file konfigurasi)
- [ ] Header versi server dihapus atau generik
- [ ] Semua perangkat lunak/plugin diperbarui
- [ ] Status Google Safe Browsing: bersih
- [ ] Skrip pihak ketiga diaudit dan diminimalkan
- [ ] Hash SRI pada skrip eksternal yang kritis
Kesalahan Keamanan Umum (Diurutkan berdasarkan Dampak SEO)
- Sertifikat SSL kadaluarsa — Penurunan peringkat segera + peringatan browser
- Konten campuran — Mengurangi sinyal kepercayaan, enkripsi sebagian tidak berguna
- Tanpa HSTS — Permintaan pertama rentan, menandakan postur keamanan yang lemah
- CSP hilang — Mengizinkan skrip apa pun untuk dieksekusi (vektor XSS)
- File sensitif yang terekspos —
.envdengan kunci API,.gitdengan kode sumber - CMS/plugin usang — Eksploitasi yang diketahui, kompromi yang akhirnya terjadi
- Tanpa header keamanan sama sekali — Menandakan Anda belum mempertimbangkan keamanan
- Skrip pihak ketiga yang terlalu permisif — Lubang keamanan yang tidak dapat Anda kendalikan
Apa Selanjutnya?
Langkah 8: Keterlihatan AI — Ujung tombak SEO pada 2026. Cara mengoptimalkan untuk Tinjauan AI Google, kutipan ChatGPT, referensi Perplexity, dan Gemini — saluran penemuan yang tumbuh paling cepat yang belum dipertimbangkan oleh sebagian besar pesaing.
Panduan ini adalah bagian dari seri 13 langkah SEO LANGR. Jalankan audit gratis untuk melihat di mana posisi situs Anda di semua 13 disiplin.