June 11Jun 11 Untuk mengamankan halaman login WordPress, ada beberapa langkah yang bisa kamu terapkan secara bertahap.Pertama, ubah URL login default. Secara bawaan WordPress menggunakan /wp-login.php atau /wp-admin yang sudah sangat dikenal oleh para penyerang. Plugin seperti WPS Hide Login bisa membantu mengganti URL ini menjadi sesuatu yang lebih unik dan tidak mudah ditebak.Kedua, aktifkan autentikasi dua faktor (2FA). Ini salah satu lapisan keamanan paling efektif. Meskipun kata sandi berhasil dicuri, penyerang tetap butuh kode verifikasi dari perangkat kedua. Plugin seperti Google Authenticator atau Wordfence menyediakan fitur ini.Ketiga, batasi percobaan login. Serangan brute force bekerja dengan mencoba ribuan kombinasi kata sandi secara otomatis. Plugin seperti Limit Login Attempts Reloaded bisa memblokir IP yang terlalu sering gagal login.Keempat, gunakan kata sandi yang kuat dan unik. Ini terdengar klise tapi masih sering diabaikan. Password manager seperti Bitwarden bisa membantu mengelolanya tanpa perlu menghafalnya satu per satu.Kelima, pertimbangkan untuk menambahkan HTTP Basic Authentication di atas halaman login WordPress. Ini membuat ada dua lapis verifikasi sebelum seseorang bahkan bisa melihat form login.Apakah ada aspek tertentu dari keamanan login yang ingin kamu dalami lebih lanjut, misalnya soal konfigurasi server atau pemilihan plugin yang tepat?
June 11Jun 11 Untuk plugin, berikut beberapa pilihan konkret beserta fungsi spesifiknya.Wordfence Security adalah plugin paling lengkap untuk keamanan WordPress secara keseluruhan. Selain membatasi percobaan login, ia juga punya firewall aplikasi web dan pemindai malware. Versi gratisnya sudah cukup mumpuni untuk kebanyakan situs. Setelah diinstal, buka menu Wordfence, lalu masuk ke Login Security untuk mengaktifkan 2FA dan atur batas percobaan login di bagian Firewall.WPS Hide Login khusus untuk mengganti URL login. Setelah diinstal, kamu cukup masuk ke Settings, gulir ke bagian WPS Hide Login, lalu tulis URL baru sesuai keinginan. Simpan, dan URL lama /wp-login.php akan otomatis mengembalikan error 404.Untuk konfigurasi server, ada dua hal yang paling relevan.Pertama, HTTP Basic Authentication. Jika servermu menggunakan Apache, kamu bisa menambahkan perlindungan ekstra di file .htaccess dengan mengarahkan ke file .htpasswd yang berisi daftar username dan password terenkripsi. Caranya, buat file .htpasswd menggunakan generator online seperti yang ada di situs htpasswdgenerator.net, lalu tambahkan blok konfigurasi di .htaccess yang membatasi akses ke wp-login.php hanya bagi yang memasukkan kredensial tersebut. Jika menggunakan Nginx, logikanya sama tapi ditulis di blok location dalam file konfigurasi virtual host.Kedua, pembatasan akses berdasarkan IP. Jika kamu mengakses situs dari IP yang relatif tetap, kamu bisa mengonfigurasi server untuk hanya mengizinkan IP tertentu mengakses halaman login. Di Apache ini dilakukan dengan direktif Allow dan Deny di .htaccess, sedangkan di Nginx menggunakan allow dan deny di blok location.Apakah servermu menggunakan Apache atau Nginx? Saya bisa bantu tulis contoh konfigurasi yang lebih spesifik.
June 11Jun 11 Author Sepertinya Nginx. Tunggu bagaimana cara mengecek server menggunakan Apache atau Nginx dari cPanel?
June 11Jun 11 Cara mengeceknya cukup mudah dari cPanel. Masuk ke cPanel, lalu cari menu "Server Information" atau "Software Information" yang biasanya ada di bagian bawah halaman utama. Di sana biasanya tertulis jenis web server yang digunakan, apakah Apache, Nginx, LiteSpeed, atau lainnya.Jika tidak ketemu di sana, coba cara alternatif yang lebih cepat: buka terminal atau fitur "Terminal" yang tersedia di cPanel versi terbaru, lalu ketik perintah nginx -v atau apache2 -v. Mana yang memberikan output versi, itulah yang dipakai. Jika keduanya memberikan output, kemungkinan servermu menggunakan kombinasi keduanya, yaitu Nginx sebagai reverse proxy di depan Apache, yang cukup umum di beberapa hosting.Cara lain yang tidak perlu masuk cPanel sama sekali adalah menggunakan situs whatsmystack.com atau menjalankan perintah curl -I diikuti alamat situsmu dari terminal. Lihat bagian header Server pada hasilnya. Biasanya tertulis langsung di sana, misalnya "Server: nginx" atau "Server: Apache".Setelah tahu hasilnya, kamu bisa langsung kabari saya dan saya bantu tulis konfigurasi Nginx yang spesifik untuk Basic Auth dan pembatasan IP di halaman loginmu.
June 11Jun 11 Baik, langsung saya berikan panduan untuk keduanya.Untuk Apache, buka file .htaccess yang ada di root WordPress kamu. Tambahkan blok berikut untuk mengaktifkan Basic Auth di halaman login:AuthType Basic AuthName "Restricted Access" AuthUserFile /home/usernamecpanel/.htpasswd Require valid-userGanti /home/usernamecpanel/ dengan path sebenarnya ke direktori home akun cPanel kamu. Setelah itu buat file .htpasswd menggunakan generator di htpasswdgenerator.net, lalu upload file tersebut ke path yang sudah kamu tulis tadi. Pastikan file .htpasswd tidak berada di dalam folder public_html agar tidak bisa diakses publik.Untuk pembatasan IP di Apache, tambahkan ini di .htaccess tepat sebelum blok WordPress:Order Deny,Allow Deny from all Allow from 123.456.789.000Ganti 123.456.789.000 dengan IP asli kamu. Kamu bisa cek IP sekarang di situs whatismyip.com.Untuk Nginx, kamu perlu mengedit file konfigurasi virtual host situsmu, biasanya ada di /etc/nginx/sites-available/ atau /etc/nginx/conf.d/. Tambahkan blok location berikut:location = /wp-login.php { auth_basic "Restricted Access"; auth_basic_user_file /etc/nginx/.htpasswd; allow 123.456.789.000; deny all; }Buat file .htpasswd untuk Nginx menggunakan perintah htpasswd -c /etc/nginx/.htpasswd namauser di terminal. Setelah semua perubahan disimpan, jalankan nginx -t untuk memvalidasi konfigurasi, lalu reload dengan systemctl reload nginx.Satu catatan penting: jika hostingmu menggunakan panel seperti cPanel dengan Nginx yang dikelola otomatis, mengedit file konfigurasi Nginx secara manual bisa tertimpa saat server diperbarui. Dalam kasus itu, lebih aman mengandalkan plugin seperti Wordfence daripada konfigurasi server langsung.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.