Posted on Jul 30, 2010

5 consejos antispam para WordPress

Para terminar la que parece que ha sido la semana de WordPress en el blog, después de haber visto hace unos dias consejos básicos para securizar nuestra instalación de WordPress, vamos a mejorar la comodidad de la moderación de nuestro sitio en WordPress agregando algunos plugins antispam y siguiendo algunos consejos.

1. Akismet: Viene de serie con WordPress. Hay quien cuestiona su calidad como sistema antispam, ya que no es difícil ver cómo ciertos comentarios se lo saltan, y además produce falsos positivos, sin embargo para mí es el sistema básico de defensa contra el spam en wordpress además de plataforma y fuente de inspiración para otros plugins.

2. Utiliza una imagen de verificación de usuario humano para los comentarios. Te la puede facilitar algún plugin como SI CAPTCHA Antispam. Para mí, como lector, los sistemas CAPTCHA son un tostón que a veces se vuelve insufrible, por lo que si no se está recibiendo spam, no creo que sea necesario activarlos.

3. Invisible deffender: Se trata de un sencillo e ingenioso plugin que añade a nuestros formularios de comentarios un par de campos invisibles para el usuario pero nos ayudarán a detectar al spammer. Con el tiempo, Invisible deffender ha ido incorporando otros sistemas antispam, como listas negras.

4. En los ajuste de discusión, prohibe ciertas palabras que los spammers suelen utiliza y que creas que seguramente nunca se utilizarán en tu blog. Seguramente quienes comentan en tu blog no suelen utilizar expresiones como ‘penis enlargement’.

5. SigT una vez más tiene otras técnicas antispam para WordPress muy interesantes para usuarios avanzados. Merece la pena dedicarles un tiempo.

Posted on Jul 28, 2010

Problemas en la instalación de WordPress 3.0: wp-config.php no se genera

Me ha sucedido ya varias veces al instalar la edición en español de WordPress 3 que, después de ejecutar el instalador y cumplimentar correctamente los datos de conexión con la base de datos, me encuentro con el temible ‘Error establishing a database conexion’. Por más que uno revise los datos o reestablezca las contraseñas, el error persiste.

El error de conexión se encuentra en el lugar más obvio y básico: el fichero wp-config.php que se genera con el asistente de instalación de WordPress 3. wp-config.php, entre otras cosas, recoge esos datos de conexión para uso por WordPress. El fichero se genera correctamente, pero con unos valores de ejemplo que no nos sirven para conectar con nuestra base datos, debemos editar las siguientes líneas con los datos correctos:


/** The name of the database for WordPress */
define('DB_NAME', 'mibasededatos');
/** MySQL database username */
define('DB_USER', 'miusuariodelabasededatos');
/** MySQL database password */
define('DB_PASSWORD', 'micontraseñadelabasededatos');
/** MySQL hostname */
define('DB_HOST', 'mihostdelabasedatos);

Y ya de paso debemos no olvidar, tal y como indicamos en nuestros consejos básicos para securizar nuestra instalación de WordPress, cambiar también el prefijo de las tablas en la línea:

$table_prefix = 'wp_';

Posted on Jul 26, 2010

Consejos básicos de seguridad en WordPress

WordPress ha abarcado buena parte del mercado de los CMS porque goza de una gran flexibilidad que permite una personalización exacta de cara al usuario final. Gracias a esto, combinado con su sencillez de instalación y configuración, se ha logrado que cualquier persona pueda montar en pocos minutos su propia web, ya sea blog o no, y sin contar con conocimientos técnicos. Esto puede dar lugar a que descuidemos nuesta instalación de WordPress, así que vamos a notar varios consejos básicos para empezar a cumplir con el primer requisito que debe tener un sistema informático: la seguridad. No pretendo este ser la panacea contra los ataques ni la solución a todas las vulnerabilidades, pero esta lista seguro que ayuda mejorar la seguridad en WordPress de buena parte de los usuarios que lo administran.

1. No utilices wp_ como prefijo de las tablas de la base de datos de WordPress, puedes cambiarlo realizar tu instalación de WordPress.

2. El fichero wp-config.php no debe tener permisos de escritura (644)

3. Elimina todos los ficheros de instalación, configuración, y exportación.

4. Que el superusuario no se llame ‘admin’, de esta forma impediremos el uso de la fuerza bruta para avierguar la contraseña de ‘admin’. Este problema se soluciona en WordPress 3, ya que el usuario escoje el nombre del administrador del sistema, pero si aún trabajas con una versión anterior quizás quieras probar Admin Renamer Extended.

5. Echa un vistazo a lo que WP Security Scan tenga que decirte. Se trata de un plugin que comprueba la configuración del sistema para detectar vulnerabilidades.

6. Escanea tu sitio con el plugin WP Exploit Scanner, te ayudará a localizar posibles exploits de tus themes y plugins.

7. Oculta tu versión de WordPress utilizando el plugin Replace WP Version.

8. Desactiva y desinstala todos los plugins que no estés utilizando.

Si crees que se te quedan cortos estos consejos de seguridad, quizás quieras echar un vistazo a los consejos de seguridad de WordPress de SigT, muy interesantes aunque quizás requieran de conocmientos algo más avanzados.

Además de estos diez consejos, si sabes utilizar ficheros de configuración .htaccess, quizás quieras restringir el acceso a wp-content y wp-includes con un fichero que contenga unas líneas como estas, tal y como nos recomienda anieto2k:

Order Allow,Deny
Deny from all
<Files ~ ".(css|jpe?g|png|gif|js)$">
 Allow from all
</Files>

Y por supuesto, si administras WordPress desde VPN o LAN, no dejes de seguir el consejo de SBD: restringir el acceso a nivel de servidor:

<Location /wordpress/wp-admin/>
Order deny,allow
Allow from 192.168.1.27
Deny from All
</Location>