Cómo hacer mantenimiento WordPress #3: Mejorar la Seguridad de la web

Una de las cosas más importantes en nuestro sitio web es la seguridad. En este artículo aprenderás cómo mejorar la seguridad en WordPress con consejos y herramientas que podrás aplicar hoy mismo.

¿Es seguro WordPress?

De serie WordPress es un sistema de código abierto seguro que se va actualizando constantemente para corregir cualquier vulnerabilidad o problema que vaya surgiendo.

Lo que puede afectar a la seguridad de nuestro WordPress son los themes y plugins desarrollados por terceros. Si no los mantenemos actualizados, si no vienen de desarrolladores fiables o si los descargamos de sitios «de dudosa reputación».

Sentido común

Parece una tontería, pero aplicando un poco de sentido común se evitaría una buena parte de los ataques y problemas de seguridad en WordPress.

Algunos consejos de seguridad básicos serían por ejemplo:

  • No usar nuestro nombre, el del propio dominio, admin – que suele venir por defecto – o una combinación de los anteriores como nombre de usuario. Tampoco como parte de la contraseña de nuestro usuario con permisos de administrador.
  • No dar nuestros datos de acceso a un desconocido y procurar no dejarlo a la vista o en un lugar que no sea seguro. Lo mejor es memorizarlos y no guardarlos de forma digital ni física. Podemos usar reglas nemotécnica para recordar tanto nuestro usuario como nuestra contraseña o dejarnos alguna pista por escrito que solo entendamos nosotros.
  • Descargar plugins y themes solo de fuentes fiables. Huye de todo lo que ponga nulled, no vale la pena y estás poniendo en peligro tu sitio y tu entorno de trabajo.

Contraseña

Usa una contraseña combine mayúsculas, números y símbolos para hacerla más segura y que no sea muy corta. Una contraseña de entre 16 y 24 caracteres que combine lo anterior sería una contraseña segura.

Asegúrate también de que no sea fácilmente adivinable, aparte de no usar el nombre del dominio o tu nombre. Tampoco uses algo que esté directamente relacionado contigo y procura no usar la misma contraseña que para otros sitios por si hay alguna brecha de seguridad en ellos y aprovechan para atacar tu web.

Puedes utilizar la herramienta Password Generator para crear una contraseña segura para tus sitios WordPress.

Si tienes varios sitios hechos con WordPress, no utilices la misma contraseña en ellos, ya que si por algún motivo acceden a uno, tendrán acceso a todos.

Doble autentificación

Por muy seguro que sea tu usuario y contraseña, es posible que lo consigan por algún medio. Ya sea por error humano, que lo tengas anotado en algún sitio y accedan a él. Puede ser técnico, alguna vulnerabilidad de seguridad en el servidor o en tu web.

En ese caso, resulta muy útil tener algún mecanismo que, aunque tengan nuestro usuario y contraseña, impida que accedan si no cumplen con un requisito extra.

Para esto podemos utilizar la doble autentificación a través de email o teléfono. Nos llegará un código único que tendremos que introducir para poder acceder.

Se suele utilizar en bancos y no sería mala idea utilizarlo en nuestro sitio. Sobre todo si se venden productos, se maneja dinero o se almacenan datos sensibles de nuestros usuarios.

Para aplicar la doble autentificación necesitaremos por una parte una aplicación de móvil para gestionar los códigos de manera segura, como por ejemplo FreeOTP, que tiene versión para iOS y para Android.

FreeOTP

Y por otra, un plugin de WordPress que nos ayude a implementar la doble autentificación, como por ejemplo 2FAS o Google Authenticator.

Una vez tengamos instalado y activado uno de estos plugins, nos pedirá que escaneemos un código QR que tendremos que escanear con la app para que nos salga un código cada vez que queramos acceder a nuestro sitio web.

2FAS

Alojamiento web

Por mucho que aseguremos nuestro sitio web, si el servidor donde está alojado no es seguro, no servirá de nada.

No vale la pena contratar un alojamiento web porque sea barato, ya que nos acabará saliendo caro. Imagínate que tienes la opción de contratar un hosting por 50€ y otro por 150€, ¿cuál contratarías?

Leer también :   Los 7 mejores plugins modo mantenimiento para WordPress

Seguramente te irías a por el de 50€, pero el precio no es lo único que has de tener en cuenta, también has de ver si es seguro, si está actualizado, si cumple los requisitos mínimos que exige WordPress.

El hosting o alojamiento web se paga anualmente y podemos encontrar buenos planes hosting entre 100 y 300€ anuales (entre 10 y 30 euros al mes), un coste que no es muy elevado si tenemos en cuenta que será el lugar donde asentaremos los cimientos de nuestro negocio web.

Sería recomendable que el alojamiento web que escojamos tenga planes específicos para WordPress, con medidas de seguridad a nivel de servidor que impidan ataques típicos por esta parte. Y que además ofrezcan soporte técnico específico para WordPress, para que si tenemos algún problema nos puedan ayudar.

Algunos de estos alojamientos nos dan la posibilidad de alojar varios dominios en el mismo plan de hosting, por lo que podrías empezar negocios o webs secundarias sin necesidad de contratar un alojamiento aparte. Si vamos a hacer esto, sería interesante que cada sitio tenga un panel de administración por separado, de forma que si hay un problema en un sitio no afecte al otro.

A la hora de contratarlo, revisa si tienen disponibles las últimas versiones de PHP, MySQL y del sistema operativo que estén utilizando, para no tener problemas de incompatibilidad o seguridad por estar utilizando versiones obsoletas.

Desactivar características que no se utilicen

Una de las cosas buenas que tiene WordPress es la retrocompatibilidad con versiones antiguas, algo que está genial, pero que hace que se mantengan algunas características que a día de hoy ya no se utilizan o se usan en casos muy concretos y que pueden explotar bots o gente con malas intenciones para sus propios propósitos.

Entre estas características están por ejemplo los pingbacks y trackbacks que se solían utilizar bastante en los inicios de WordPress. Pero que hoy en día casi no se utilizan y los bots suelen explotarlas para hacer spam y enlazar a sitios de dudosa reputación. Lo mejor es dejarlos desactivados.

Si no las vamos a utilizar, sería recomendable desactivar también las cabeceras de Windows Live Writer y RSD.

A la hora de desactivar cosas, asegúrate de que funcione todo bien después de hacerlo, ya que es posible que algún plugin esté utilizando alguna de las características que hayas desactivado y la tengas que volver a activar.

¿Te gusta lo que estás leyendo? ¡Suscríbete!

Cambiar el prefijo de la base de datos

Por defecto todas las instalaciones de WordPress utilizan el prefijo wp_, algo que saben los hackers para crear bots que recorren las webs de internet en busca de vulnerabilidades y, una vez que encuentran alguna y han conseguido acceder, utilizan scripts predefinidos basados en este prefijo y otras características por defecto de WordPress (como por ejemplo el usuario admin).

Para evitar que exploten esto con inyecciones SQL, una de las medidas básicas que debemos aplicar a nivel de seguridad es cambiar el prefijo de la base de datos.

Si todavía no has instalado WordPress y se trata de una instalación nueva, puedes indicar qué prefijo quieres poner. Por defecto nos saldrá wp_:

Y tendremos que cambiarlo por otra cosa aleatoria, por ejemplo:

Si ya está hecha la instalación y teníamos puesto wp_, aún tiene remedio. Podemos cambiar el prefijo haciendo una serie de cambios en la base de datos y en el archivo wp-config.php, que veremos a continuación.

Antes de hacerlo, es recomendable que hagamos una copia de seguridad de la base de datos y del archivo wp-config.php, ya que serán las dos cosas que tocaremos.

Una vez hemos hecho la copia de seguridad, nos vamos al archivo wp-config-php que podremos encontrar en la raíz de nuestro sitio si accedemos por FTP. También podemos acceder a través del administrador de archivos de nuestro alojamiento web. Y buscamos lo siguiente:

/**
 * Prefijo de la base de datos de WordPress.
 *
 * Cambia el prefijo si deseas instalar multiples blogs en una sola base de datos.
 * Emplea solo números, letras y guión bajo.
 */
$table_prefix  = 'wp_';

Debemos cambiar wp_ por lo que nos interese en este caso, por ejemplo 3T7heA_ y nos quedaría algo así:

/**
 * Prefijo de la base de datos de WordPress.
 *
 * Cambia el prefijo si deseas instalar multiples blogs en una sola base de datos.
 * Emplea solo números, letras y guión bajo.
 */
$table_prefix  = '3T7heA_';

El siguiente paso será cambiar el prefijo wp_ de las tablas de nuestra base de datos por el nuevo prefijo que hemos elegido. Nos vamos a phpMyAdmin, entramos en la base de datos que corresponda a nuestra instalación y seleccionamos todas las tablas, por defecto nos saldrán estas:

A continuación hacemos click en el desplegable «Para los elementos que están marcados:» y seleccionamos «Reemplazar prefijo de la tabla»:

Nos aparecerá una ventana donde le podremos poner el prefijo que queremos cambiar (De) y por cuál (A):

Si le damos a continuar, nos hará el cambio de prefijo de las tablas:

Leer también :   Cómo hacer mantenimiento WordPress #5: Arreglar enlaces rotos y errores de indexación

Pero todavía nos quedaría hacer algunos cambios para que funcione todo bien. Nos vamos a la tabla options, que ahora se llama 3T7heA_options y en la pestaña Buscar. Nos vamos a option_name, selecionamos LIKE %…% en Operador, en Valor escribimos wp_ y le damos a continuar para que busque las referencias al prefijo anterior:

Una vez lo hagamos, nos saldrán los resultados de la búsqueda:

Tenemos que cambiar en los option_name que nos salen el wp_ por el prefijo que hemos seleccionado:

Por último, nos vamos a la tabla wp_usermeta, que ahora se llamará 3T7heA_usermeta y hacemos la misma búsqueda pero esta vez en lugar de en option_name en meta_key:

Nos saldrán las referencias al prefijo que haya en meta_key en este caso:

Cambiamos los que correspondan:

Y ya tenemos cambiado el prefijo de la base de datos. Ahora solo falta revisar que todo funcione bien y si no fuera así, repasar que hayamos hecho bien todos los pasos comentados.

Limitar los intentos de login

Una forma de ponerle las cosas difíciles a los hackers y bots es limitar los intentos de acceso a la administración de nuestro sitio.

Para ello tenemos varias opciones, entre ellas utilizar el plugin Loginizer, que podéis encontrar en el repositorio de WordPress de forma gratuita:

Loginizer

Este plugin nos permite limitar los intentos de login, definir el tiempo que se bloqueará una IP cuándo se ha pasado de los intentos, el máximo de bloqueos que permitimos y si se lega a este máximo, cuántas horas se baneará esa IP.

Permisos de los ficheros

Otra cosa a tener en cuenta a nivel de seguridad son los permisos de los ficheros y carpetas.

Por defecto se suelen utilizar permisos 755 para carpetas y 644 para archivos. Pero podemos hacerlo más seguro si utilizamos 750 para carpetas y 640 para archivos si el servidor que utilizamos lo permite.

Para algunos archivos sería bueno limitar más. Por ejemplo en el caso de wp-config.php podemos utilizar los permisos 600 si necesitamos que haga cambios en este WordPress archivo y 400 si no queremos que nada lo mofique.

En el caso del archivo readme.html podemos usar 200 para que solo se pueda escribir cuando haya actualizaciones.

Más cosas que podemos hacer

A parte de lo que hemos visto hasta ahora, hay otras medidas para seguir mejorando la seguridad de nuestro WordPress. Entre ellas:

  • No usar el usuario con ID 1 como administrador. Por defecto el primer usuario tiene la ID 1 y tiene permisos de administrador. Lo que podemos hacer es crear otro usuario con permisos de administrador. Y al primer usuario darle permisos de Suscriptor, para que si logran acceder a él no tengan acceso a nada.
  • Utilizar un servicio de correo externo en lugar de usar el mismo servidor que utilizamos para nuestra web. Podemos configurar nuestro correo con una gran cantidad de servicios externos como por ejemplo Gmail a través de Google Suite o Elastic Email, que tiene un plugin para integrarlo con WordPress: Elastic Email Sender.
  • Bloquear PHP en la carpeta uploads (que esta dentro de wp-content).
  • Configurar un certificado SSL para que la conexión a nuestra web sea segura. Podemos utilizar por ejemplo Let’s Encrypt, que es seguro y gratuito y la mayoría de buenos hostings lo incluyen sin coste adicional.
  • Cambiar la url de login y administración: Para hacer hacer esto uno de los plugins más conocidos es WPS Hide Login.
  • Mantener actualizados WordPress, los plugins y el theme que utilicemos.
Leer también :   Qué es y cómo insertar un shortcode en WordPress

Ocultar que nuestra web está hecha con WordPress

Cuándo instalamos WordPress, este deja algunas pistas de con qué está hecha la web. En los archivos por ejemplo, deja 3 archivos: licencia.txt, license.txt y readme.html que contienen información sobre la versión de WordPress que estamos utilizando y dan pistas de que se trata de una instalación de WordPress. Lo mejor es borrarlos.

También hay otras cosas que dan pistas. Como por ejemplo el directorio de subida de los archivos wp-content, la url de login, el prefijo wp_ en la base de datos, los enlaces meta que suelen venir por defecto al realizar una instalación de WordPress, etc.

Para poder ocultar esto de forma automatizada, podemos usar el plugin Hide My WP Ghost por ejemplo, que nos da varias opciones, entre ellas cambiar la url de administración:

La url de login, la de recuperar la contraseña, la de registro y la de logout:

Nos da la opción de ocultar otras rutas más avanzadas, pero si no sois usuarios expertos, solo os recomiendo cambiar las que menciono arriba.

Tiene otras opciones como por ejemplo el mapeo de textos:

En los siguientes apartados permite hacer algunos cambios que ayudan a ocultar que se trata de un WordPress. Por ejemplo cambiar rutas, ocultar etiquetas de versión y todas las que indican que se trata de una instalación. Y la opción de desactivar cabeceras, emoticonos, scripts incrustados, la autentificación XML-RPC. Más otros ajustes que ayudarán a mejorar la seguridad y rendimiento de nuestro sitio, como por ejemplo la posibilidad de limitar los intentos de login.

Plugins de seguridad

Para ayudarnos con la tarea de gestionar la seguridad de nuestra web, sobre todo si no somos usuarios avanzados, podríamos apoyarnos en algunos plugins que nos ayudan a configurar una o varias medidas de seguridad.

Además de los plugins para aplicar medidas por separado que hemos visto en los apartados anteriores, tenemos varias opciones que incluyen un conjunto bastante amplio de opciones.

Una de las más conocidas es iThemes Security. Un plugin que podéis encontrar de forma gratuita en el repositorio de WordPress y que permite aplicar la mayoría de las medidas que hemos visto.

Nosotros lo recomendamos para mantener una buena seguridad en tu WordPress.

iThemes Security Plugin

También nos permite hacer algunos cambios más avanzados si vamos al apartado Avanzado, pero debéis usar esto con precaución. Ante la duda mejor no toquéis los ajustes de este apartado y siempre con una copia de seguridad a mano.

Como alternativas también tenemos All in One WP Security y WordFence, que también son de los más utilizados.

Conclusión

Como te enseñamos en este artículo, existen muchas medidas de seguridad para tu sitio web en WordPress. Podemos aplicarlas sin mucho esfuerzo y nos ayudarán muchísimo a tener un sitio más seguro. Además, has podido ver que tienes a tu disposición varios plugins para automatizar todo estos procesos.

Recuerda que estas medidas siempre hay que aplicarlas con cuidado y con una copia de seguridad a mano por si algo sale mal.

Servicio Mantenimiento WordPress

¿Cruzas los dedos cada vez que actualizas la versión de WordPress? ¿Se te acumulan los avisos de actualizaciones de plugins? ¿Pierdes horas intentando realizar cambios y mejoras en tu web?

Necesitas que alguien se ocupe de ella de forma continuada, cuidándola y asegurándose de que funcione 24 horas al día sin sufrir contratiempos.

En Destaca ayudamos a emprendedores o empresas que tienen una web en WorPress pero no saben o no quieren perder tiempo con temas técnicos, de actualización, configuración y mantenimiento.

Céntrate en hacer crecer tu proyecto con la seguridad de tener un partner tecnológico acompañándote cada día.

Empieza desde 66€/mes o solicita un presupuesto personalizado 😉

Artículos Relacionados

copias de seguridad wordpress

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ir arriba
Abrir chat