Proteksi WordPress Brute Force dengan Captcha via Apache

brute force

Proteksi WordPress Brute Force dengan Captcha via Apache

Last updated on
Hosting Unlimited Indonesia

Pada artikel sebelumnya saya telah membahas tentang memberikan proteksi atau mencegah wordpress brute force dengan menonaktifkan halaman login wordpress, maka kali saya akan memberikan tips mencegah serangan brute force pada wordpress dengan memberikan captcha ketika akan mengakses halaman wp-login.php atau wp-admin.

Dengan cara ini, maka klien Anda tidak perlu mengubah halaman atau file wp-login.php untuk login di wordpress yang tentu akan lebih memudahkan klien Anda. Sebagai informasi bahwa sebelumnya banyak klien yang kami yang komplain ketika kami menonaktifkan halaman wp-login.php karena harus mengubah atau merename wp-login.php sehingga kami memutuskan untuk mengubahnya dengan cara memberikan captcha melalui apache sehingga setiap klien yang mengakses halaman login wordpress akan diminta memasukkan captcha verifikasi. Berikut contohnya:

captcha

Berikut panduan untuk membuat halaman captcha tersebut melalui apache:

Buka dan edit file pre_virtualhost_global.conf

# vim /usr/local/apache/conf/includes/pre_virtualhost_global.conf

Setelah itu, tambahkan baris perintah berikut dan simpan:

Include "/usr/local/apache/conf/includes/wordpressprotect.conf"

Selanjutnya, silahkan buat file di dalam folder bin dengan nama file wordpress.sh. Login di folder bin dengan perintah: # cd /bin Buat file wordpress.sh dengan perintah: # vim wordpresss.sh Dalam file wordpress.sh, isikan baris perintah berikut:

#!/bin/bash
echo "Generating random username (6 alphanumeric characters)..."
username=`cat /dev/urandom | tr -dc 'a-z0-9' | fold -w 6 | head -n 1`
echo "Generating two random numbers for math..."
n=$RANDOM
n1=$((RANDOM%20+10))
n2=$((RANDOM%9+1))
result=$(($n1 + $n2))
echo "Creating and saving configuration file..."
CONFFILE="\n
<LocationMatch \"wp-login.php\">\n
AuthType basic\n
AuthName \"WordPress attack protection CAPTCHA. Enter username: $username Password: The result of math $n1+$n2\"\n
AuthUserFile /home/wp-admin-attack-htpasswd-file\n
Require valid-user\n
</LocationMatch>\n
ErrorDocument 401 \"Authentication required\"\n
\n"
echo -e $CONFFILE > /usr/local/apache/conf/includes/wordpressprotect.conf
/bin/chmod 0755 /usr/local/apache/conf/includes/wordpressprotect.conf
/bin/rm -f /home/wp-admin-attack-htpasswd-file
/usr/local/apache/bin/htpasswd -bc /home/wp-admin-attack-htpasswd-file $username $result
/bin/chmod 0755 /home/wp-admin-attack-htpasswd-file  
echo "Restarting Apache..."
/etc/init.d/httpd restart
echo "All done!"

Setelah itu, buatlah file wordpress.sh menjadi executable dengan perintah berikut:

# chmod +x wordpress.sh

Selanjutnya, jalankan perintah berikut untuk mengaktifkan captcha wordpress untuk wp-login.php

# ./wordpress.sh

Selesai dan sekarang semua klien yang mengakses url login wordpress Anda akan diminta memasukkan captcha tersebut.

Kami melayani jasa setup, optimasi, tweaking dan monitoring server VPS untuk Anda yang kesulitan dalam mengelola VPS atau melakukan setup. Harga sangat terjangkau, silahkan melakukan order di SINI atau juga dapat melalui form berikut:


Leave a Reply