10 Tips Memperkuat Keamanan WordPress
Jika Anda menjalankan situs web yang diberdayakan WordPress, keamanannya harus menjadi perhatian utama Anda. Dalam kebanyakan kasus, blog WordPress disusupi karena file inti dan/atau pluginnya sudah usang; file usang dapat dilacak dan ini merupakan undangan terbuka bagi peretas.
Bagaimana cara menjauhkan blog Anda dari orang jahat untuk selamanya? Sebagai permulaan, pastikan Anda selalu update dengan WordPress versi terbaru. Tapi masih ada lagi. Dalam posting hari ini, saya ingin berbagi dengan Anda beberapa plugin yang berguna serta beberapa tip untuk memperkuat keamanan WordPress Anda.
10 Plugin untuk Memperkuat Keamanan WordPress
Anda membuat situs web di WordPress, memilih hosting yang andal untuknya, dan menambahkan tema yang indah. Namun,… Baca lebih banyak
1. Mengubah Awalan “wp_” Default
Situs web Anda mungkin dipertaruhkan untuk beberapa kerentanan (mis. SQL Injection) jika Anda menggunakan yang dapat diprediksi wp_
awalan dalam tabel database Anda. Tutorial berikut mengajarkan Anda cara mengubahnya melalui phpMyAdmin dalam 5 langkah mudah.
2. Sembunyikan pesan kesalahan login
Pesan login kesalahan dapat mengungkapkan dan memberikan ide kepada peretas jika mereka mendapatkan nama pengguna yang benar/salah, begitu pula sebaliknya. Adalah bijaksana untuk menyembunyikannya dari login yang tidak sah.
Untuk menyembunyikan pesan kesalahan login, Anda cukup memasukkan kode berikut di functions.php
add_filter( 'login_errors', '__return_false' );
3. Jaga Direktori wp-admin Dilindungi
Menjaga folder “wp-admin” tetap terlindungi menambah lapisan perlindungan ekstra. Siapa pun yang mencoba mengakses file atau direktori setelah “wp-admin” akan diminta untuk masuk. Melindungi folder “wp-admin” Anda dengan login dan kata sandi dapat dilakukan dengan beberapa cara:
- Pengaya WordPress – Menggunakan Autentikasi HTTP WordPress.
- cPanel – Jika hosting Anda mendukung login admin cPanel, Anda dapat mengatur perlindungan dengan mudah di folder mana pun melalui cPanel Direktori Proteksi Kata Sandi antarmuka pengguna grafis. Cari tahu lebih lanjut dari tutorial ini.
- .htaccess + htpasswd – Membuat folder yang dilindungi kata sandi juga dapat dilakukan dengan mudah dengan mengatur folder yang ingin Anda lindungi di dalamnya .htaccess dan pengguna diizinkan untuk mengakses di dalam .htpasswd. Tutorial berikut menunjukkan cara melakukannya dalam 7 langkah.
4. Memelihara Backup
Menyimpan salinan cadangan seluruh blog WordPress Anda sama pentingnya dengan menjaga keamanan situs dari peretas. Jika semuanya gagal, setidaknya Anda masih memiliki file cadangan bersih untuk dikembalikan. Ada dua jenis praktik pencadangan: Pencadangan Penuh dan Pencadangan tambahan.
“Cadangan penuh” akan mencakup semua yang ada di dalam situs termasuk file dan database saat membuat cadangan. Metode ini akan memakan ruang lebih dari yang diperlukan, dan dapat menyebabkan lonjakan penggunaan CPU dan disk saat melakukan pencadangan. Jadi sangat tidak disarankan jika situs Anda memiliki sumber daya yang terbatas.
Pencadangan “tambahan” di sisi lain hanya akan mengambil penuh pertama kali dan hanya akan mengambil cadangan dari item yang baru saja diubah sehingga lebih efisien. Saat ini ada sejumlah opsi untuk cadangan jenis ini di WordPress dengan biaya yang wajar seperti VaultPress dan WP Time Capsule.
Selain itu, sebelumnya kami juga telah membahas daftar solusi untuk mencadangkan file dan database WordPress Anda, termasuk plugin yang berguna dan layanan pencadangan.
5. Mencegah Penjelajahan Direktori
Celah keamanan besar lainnya adalah membuka direktori Anda dan file-file-nya, dan dapat diakses oleh publik. Berikut tes sederhana untuk memeriksa apakah direktori WordPress Anda terlindungi dengan baik:
- Masukkan URL berikut di browser, tanpa tanda kutip. “
http://www.domain.com/wp-includes/
“
Jika itu menunjukkan kosong atau mengarahkan Anda kembali ke beranda, Anda aman. Namun, jika Anda melihat layar yang mirip dengan gambar di bawah, Anda tidak.
Untuk mencegah akses ke semua direktori, tempatkan kode ini di dalam file .htaccess mengajukan.
# Prevent folder browsing. Options All -Indexes
Jika situs Anda berjalan di nginx, Anda dapat menambahkan yang berikut ini.
autoindex off;
6. Selalu perbarui File & Plugin Inti WordPress
Salah satu cara teraman untuk menjaga keamanan situs WordPress Anda adalah memastikan file Anda selalu diperbarui ke rilis terbaru. Untungnya, WordPress hari ini hadir dengan pembaruan otomatis yang diaktifkan, jadi segera setelah tambalan keamanan tersedia, situs Anda harus segera diperbarui. Pastikan Anda atau pengembang Anda tidak mematikannya.
7. Pilih Kata Sandi yang Kuat
WordPress kini hadir dengan bidang saran kata sandi yang kuat seperti di bawah ini saat membuat akun baru atau memperbarui ke kata sandi baru. Ini akan menunjukkan apakah kata sandi Anda Kuat atau Lemah. Anda harus memilih kata sandi yang kuat. Tetapi kelemahan dari memiliki kata sandi yang kuat adalah tidak mudah diingat. Itu sebabnya saya merekomendasikan untuk memiliki pengelola kata sandi seperti 1Password atau LastPass
8. Hapus Pengguna Admin
Instalasi khas WordPress hadir dengan pengguna default bernama “admin”. Jika itu nama pengguna untuk situs WordPress Anda, Anda telah membuat hidup peretas menjadi 50% lebih mudah. Menggunakan pengguna “admin” harus dihindari setiap saat.
Pendekatan yang lebih aman untuk masuk ke admin Anda dengan aman adalah dengan membuat administrator baru dan menghapus “admin”. Dan inilah cara Anda melakukannya:
- Masuk ke panel admin WordPress
- Pergi ke Pengguna -> Tambah baru
- Tambahkan pengguna baru dengan Administrator peran, pastikan Anda menggunakan kata sandi yang kuat.
- Keluar dari WordPress, masuk kembali dengan pengguna admin baru Anda.
- Pergi ke Pengguna
- Hapus pengguna “admin”.
- Jika “admin” memiliki kiriman, ingatlah untuk mengaitkan semua kiriman dan tautan kembali ke pengguna baru.
9. Nonaktifkan XMLRPC
XMLRPC di WordPress adalah titik masuk umum serangan di WordPress. Jadi, selalu merupakan ide bagus untuk menonaktifkannya saat situs Anda tidak memerlukan XMLRPC. Anda dapat membatasi titik akhir XMLRPC ke IP tertentu jika diperlukan, misalnya:
Apache
<Files xmlrpc.php> order deny,allow allow from 192.0.64.0/18 deny from all </Files>
Nginx
location = /xmlrpc.php { allow 192.0.64.0/18; deny all; access_log off; }
10. Tambahkan Header Keamanan HTTP
Menambahkan header keamanan HTTP akan menambah lapisan keamanan ekstra ke situs Anda yang membantu mengurangi serangan tertentu. Header akan menginstruksikan browser untuk berperilaku pada arah tertentu yang diatur dalam header. Misalnya, X-Frame-Options
akan memungkinkan Anda apakah situs Anda dapat disematkan dalam iframe. Jenis Header lain yang dapat Anda tambahkan meliputi: X-XSS-Protection
, Strict-Transport-Security
, X-Content-Type-Options
, Content-Security-Policy
dan Referrer-Policy
.
Header always append X-Frame-Options DENY Header set X-XSS-Protection "1; mode=block" Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" Header set X-Content-Type-Options nosniff Header set Content-Security-Policy "default-src 'self';" Header set Referrer-Policy "no-referrer"
Nginx
add_header X-XSS-Protection "1; mode=block"; add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains; preload'; add_header X-Frame-Options "DENY"; add_header X-Content-Type-Options nosniff; add_header Content-Security-Policy "default-src 'self';"; add_header Referrer-Policy same-origin;
Untuk menambahkan header ini, Anda mungkin perlu menghubungi perusahaan hosting tempat situs Anda dihosting.
Bonus: Berlangganan ke WPVulnDB
Last but not least, Anda mungkin ingin tetap mengetahui kerentanan terbaru yang terekspos di WordPress Core, Plugins, dan Themes dengan berlangganan WPVulnDB. Ini menjelaskan jenis kerentanan apa, apa itu, versi apa yang terpengaruh, dan apakah sudah diperbaiki.
Jika Anda menemukan salah satu plugin yang Anda gunakan ada di laporan, Anda harus segera mengambil tindakan untuk menguranginya dan memperbarui plugin saat perbaikan tersedia langsung.