I want to make wp-login.php and/or wp-admin accessible only from one country. If I want wp-login.php access only from USA then my approach from .htaccess is like below
<Files wp-login.php> order deny,allow allow from 126.96.36.199/8 allow from 188.8.131.52/8 allow from 184.108.40.206/32 allow from 220.127.116.11/28 allow from 18.104.22.168/28 allow from 22.214.171.124/29 allow from 126.96.36.199/28 . . . deny from all </Files>
But this approach is not so clever one since server take too long time to even browse the page. My question is how to make wp-login.php accessable only from country specific so that it can't be access by other countries.
Another approach might be from mod_security by use of GeoLite City Database but I do not want to go there. Third approach might be using some plugins but I neither want to do that too.
All I am doing this is to prevent Brute Force Attack. If it is done from one ip then we can just block it, but if it is done from many ips then it result in server overload and Ddos. I am sure that all people in the filed of cyber security are facing similar kind of problems. What are your approaches?