Mejorar la seguridad de WordPress en wp-config.php

En este tutorial veremos cómo añadirle una capa extra de seguridad a nuestro WordPress modificando wp-config.php. Seguiremos tocando código, pero no te asustes, no hace falta que conozcas nada de programación.

Si en el otro tutorial vimos como modificar el .htaccess, ahora le toca turno al archivo wp-config.php. También se localiza en la raíz de nuestro directorio FTP.

Antes de nada, te recomiendo que hagas una copia de seguridad de tu wp-config.php actual. Simplemente lo duplicas y le cambias el nombre. Siempre va bien por si ocurre algo, siempre tendremos la posibilidad de volver atrás.

Ahora sí, ¡vamos a ello!

Deshabilitar el editor de temas y de plugins

Por defecto, desde el panel de administración de WordPress hay la posibilidad de modificar los ficheros de nuestros temas y plugins. Es una característica interesante ya que nos ahorra tiempo por si queremos modificar cualquier archivo, evita que tengamos que acceder constantemente a nuestro servidor FTP.

No obstante esta funcionalidad puede llegar ser un verdadero quebradero de cabeza.

Editor WordPress. Vamos a desactivarlo desde wp-config.
El editor de Apariencia que aparece en nuestro dashboard.

Especialmente si tenemos varios usuarios administradores en nuestro WordPress, puede ser que alguien modifique un archivo crítico (ya sea del tema o de algún plugin) y deje inoperativa nuestra página web.

En este caso, podemos curarnos en salud deshabilitando esta funcionalidad para evitar este tipo de sustos.

Simplemente añadiremos este código al final de nuestro archivo wp-config.php:

/* Deshabilitar el editor de temas y de plugins */
define( 'DISALLOW_FILE_EDIT', true );

Por otro lado, si eres el único administrador de tu WordPress y no hay peligro de que rompas tu sitio web, no es necesario aplicar esta medida de seguridad. En mi caso, utilizo esta funcionalidad a menudo para modificar los archivos CSS de mi tema, sin tener que acceder al FTP.

Deshabilitar wp_debug desde wp-config

A veces, cuando hay cualquier error, advertencia o incompatibilidad PHP en nuestro WordPress, aparecen avisos en nuestro sitio web.

Aviso de wp_debug en nuestro WordPress.
Típico aviso de warning de wp_debug

¿Por qué puede llegar a ser un problema? Estos avisos muestran rutas de nuestros directorios de la instalación de WordPress que pueden ser aprovechadas para los hackers. Al indicarnos las carpetas de plugins o temas pueden encontrar vulnerabilidades y aprovecharlas.

Por esta sencilla razón, vamos a lavarnos las manos deshabilitando este tipo de avisos con una simple línea de código.

Antes de añadirla, tenemos que fijarnos si esta línea ya aparece en el archivo. En algunas instalaciones aparecerá en «true», sólo deberemos cambiarlo por «false». O incluso, en algunos casos ya está deshabilitado por defecto.

/* Deshabilitar WP_Debug */
define( 'WP_DEBUG', false );

Forzar SSL en wp-login y wp-admin

La última medida de seguridad es forzar SSL para la identificación de nuestro WordPress.

¿Qué significa esto realmente?

Cuando forzamos SSL significa que la dirección URL empezará por ‘https’. De esta forma, cuando introduzcamos nuestra contraseña, se enviará de manera encriptada. Si se enviara sin ninguna encriptación (con http), navegaría por Internet totalmente legible.

¿Qué hay de malo en esto?

Si estuviéramos en nuestra casa o en nuestra oficina no va a pasar absolutamente nada. Pero si estamos en una red inalámbrica de un hotel, aeropuerto o bar, todos los datos de tus contraseñas correrían peligro. Cabe la posibilidad de que alguien pueda conectarse en la misma red y captar nuestros datos y contraseñas.

Con SSL, se enviaría codificado y evitaríamos esta posibilidad. Que aunque parezca mentira, es muy común utilizar esta estrategia para hackear contraseñas en las redes inalámbricas públicas.

/* Forzar SSL en el wp-login y wp-admin */
define( 'FORCE_SSL_LOGIN', true );
define( 'FORCE_SSL_ADMIN', true );

Antes de introducir el código, tendremos que asegurarnos que nuestra página web tiene un certificado SSL. En la mayoría de los alojamientos ofrecen la encriptación Let’s Encrypt gratuitamente. En el caso que no lo tengamos, no tenemos que introducir estas líneas.

Resumen y conclusión

¡Pues esto es todo! Con unas sencillas definiciones de código hemos aumentado notablemente la seguridad de nuestra página web. Puedes felicitarte a ti mismo porque ya tu web es más segura que la mayoría de instalaciones WordPress que rondan por allí.

Cómo has podido observar, no hace falta tener ningún tipo de conocimiento de programación. Simplemente basta copiar y pegar las líneas de código y entender qué hacen cada una.

Ya sabes, para cualquier duda o pregunta, puedes contactar conmigo desde este formulario.