Proteger admin de wordpress con .htaccess

Posted: marzo 9th, 2011 | Author: | Filed under: Internet, Recursos Web | Tags: , | 1 Comment »

En el artículo anterior Como proteger un directorio en un sitio web con contraseña vimos como agregar un password a un directorio. Una aplicación útil de esto es proteger el directorio admin de nuestro wordpress con usuario y contraseña para agregar un nivel extra de seguridad.

Los pasos a seguir son los mismos que en el caso anterior, creamos el archivo .htpasswd, lo colocamos en un directorio no accesible desde la web y luego el archivo .htaccess en el directorio wp-admin de forma que el sitio público no quede bloqueado pero si el admin.

El problema que puede surgir en muchos casos con esta solución es que no podemos acceder al archivo admin-ajax.php, que es utilizado por ejemplo por algunos plugins para cargar contenidos.

Una solución es agregar en nuestro archivo .htaccess una directiva para que este archivo sea accesible para todo el público sin pedido de contraseña, esto lo logramos con un archivo como el que sigue:

AuthName «Restricted Area»
AuthType Basic
AuthUserFile /var/www/misitioweb.com/.htpasswd
AuthGroupFile /dev/null
require valid-user

<Files «admin-ajax.php»>
Allow from all
Satisfy Any
</Files>

La primera parte es la de pedido de contraseña, luego colocamos el acceso público para el archivo admin-ajax.php.

De esta forma nuestros plugins deberían funcionar sin problemas aunque coloquemos la protección de contraseña en el directorio wp-admin.