Documental encyclobjects: 08 Seguridad y mantenimiento

Gane 10,00 puntos de recompensa comentando la publicación del blog
Documental encyclobjects: 08 Seguridad y mantenimiento
Si nos fijamos en el paso del tiempo, cada día, las personas y las empresas dedican más recursos a la seguridad y protección. Esto ocurre así en todos los ámbitos de la vida.
En lo personal, tenemos seguros para nuestra casa, nuestro coche, nuestro perro, nuestra salud, etc… En lo profesional, también se realizan controles y procesos que permitan obtener niveles de seguridad correctos y el mantenimiento de las instalaciones para su optimización en el tiempo.
Este conjunto de acciones y medidas también es necesario realizarlo en nuestro WordPress. Necesitamos seguridad en nuestra web, protegerla de ataques de hackers, de software malicioso y del molesto spam. También, deberemos brindar seguridad y confianza a nuestros usuarios, actualizando y optimizando nuestra web, tanto en sus tiempos de carga como en las prestaciones y opciones de interacción.
En resumen, realizar una buena gestión del riesgo es importante. De esto vamos a hablar en este capítulo.
Estrategias de seguridad
Para realizar una correcta gestión del riesgo en nuestro WordPress, primero necesitamos evaluar los riesgos que nos podemos encontrar y, posteriormente, proteger nuestra web con las herramientas adecuadas. Eso es, realizar una estrategia de seguridad. Hacedla, cuanto antes, mejor. No os arrepentiréis y trabajaréis más tranquilos.
Cuando comencé el proyecto instalé de un plugin de seguridad (Sucuri), un plugin para controlar los ataques de fuerza bruta y registros (Limit Login Attemps Reloaded), otro plugin para controlar el spam (Akismet) y, además, contaba con las herramientas de seguridad que me brindaba mi anterior hosting (Ionos). Demasiadas herramientas (algunas de ellas muy complejas) y demasiado trabajo. Necesitaba simplificar.
Todo cambió con el hospedaje en Siteground y con la instalación de su plugin Security Optimizer, un extraordinario plugin de seguridad «todo en uno», muy sencillo de configurar y un trabajador «a tiempo completo». Para el spam activé Google reCAPTCHA v3, que es la que menos inconvenientes causa al usuario. Con estas 2 herramientas resolví la seguridad de mi WordPress, y comencé a trabajar con más tranquilidad.
En concreto, aunque es imposible tener Riesgo cero, si es posible tener buenas herramientas para ponérselo muy difícil a los «malos». Veamos como trabajan estas herramientas:
Por parte del plugin Security Optimizer, controlamos los siguientes aspectos:
– Seguridad del sitio: protege las carpetas del sistema. Oculta la versión de WordPress. Desactiva el editor de temas y plugins. Desactiva el archivo XML-RPC. Puede desactivar los feeds RSS y ATOM (en nuestro caso los activamos para favorecer a los usuarios que nos siguen mediante RSS) Activa una protección XSS avanzada. Borra el archivo Readme.html por defecto.
– Seguridad en el acceso: URL de acceso personalizada. Limite de acceso al inicio de sesión (de URL’s sospechosas de ataque de fuerza bruta). Identificación de 2 factores de acceso para administradores y editores. Desactivación de nombres de usuario «comunes». Limitación de número de intentos de acceso (en nuestro caso, 3).
– Registro de actividad: En todo momento tendremos un registro de las direcciones IP que visitan nuestra web (tipo de visitante, IP, página visitada y respuesta del servidor). Podremos bloquear la IP o ver su actividad. También podremos ordenar el registro por IP de registro, por accesos bloqueados, obtener informes semanales y recibir el registro de actividad por e-mail.
– Acciones de una acción de hackeo: Podremos reinstalar todos los plugins «free» (gratuitos), forzar el restablecimiento de la contraseña a los usuarios y desconectar a todos los usuarios.
Por parte del hosting Siteground (GoGeek) disponemos de las siguientes herramientas:
– Copia de Seguridad: Diaria (posibilidad de restaurar archivos, base de datos y e-mails). Crear copia de seguridad (manteniendo siempre 5 activas), restaurar y descargar.
– Gestor SSL: para cada dominio con Let’s Encrypt Wildcard
– Forzar HTTPs: para todos los dominios, presentando todas nuestras páginas de forma segura.
– URL’s protegidas: Si lo deseamos, podemos incluir URL’s especialmente protegidas para evitar el acceso a cualquier usuario.
– Tráfico bloqueado: podemos bloquear direcciones IP o bien todas las direcciones IP de cualquier país.
– Site Scanner: herramienta opcional de Siteground que escanea a diario nuestra web en busca de amenazas. Revisa si nuestro dominio está incluido en una lista negra y todas nuestras URL’s y archivos en busca de malware. Informa automáticamente.
Copias de seguridad
¿Qué haríamos sin las copias de seguridad? No lo sé, el caso es que a nosotros, en algunas ocasiones, nos han salvado el trabajo. Sin duda alguna, es la herramienta de seguridad (valga la redundancia) por excelencia. Tener un hosting con una buena gestión de copias de seguridad, hoy es imprescindible. Pero, tranquilos, los buenos hostings, como es el caso de Siteground, mantienen unas excelentes herramientas para realizar copias de seguridad.
En nuestro caso, nuestro hosting nos facilita a diario una copia de seguridad, con lo que, en caso de problemas, siempre podremos volver al día anterior, perdiendo solamente el trabajo del día corriente. Conviene no relajarse y, además, antes de actualizar plugins, temas, cambio de versión de PHP o inclusión de algún software adicional en nuestro servidor, realizar una copia de seguridad adicional. Esto nos permitirá reaccionar de inmediato a cualquier incidencia que pudiera presentarse. Son escasos minutos de precaución que nos pueden salvar el trabajo realizado.
Siteground siempre nos mantendrá visibles las 30 últimas copias de seguridad, pudiendo retroceder hasta un mes en caso necesario. De cada copia almacenada podremos restaurar archivos, base de datos y e-mails. También podremos descargarlos e instalarlos en otro entorno. Asimismo disponemos de historial de restauraciones y descargas.
Opcionalmente, bajo demanda (por ejemplo, en sitios de altísimo tráfico), se pueden realizar copias de seguridad cada hora.
Actualizaciones y mantenimiento
WordPress, como sabéis, es un software de los llamados de «código abierto». Es decir, cuando trabajamos en WordPress, podemos modificar el código fuente de la aplicación. Así, de esta manera, es como WordPress se ha alzado al número 1 del software mundial CMS (Sistemas de gestión de contenido).
Periódicamente, aplicando nuevas prestaciones, rectificando errores o bien aplicando parches de seguridad ante vulnerabilidades, WordPress se actualiza. Esta labor es MUY IMPORTANTE y es necesario que sigas las instrucciones de actualización que, periódicamente, WordPress dejará en tu web para mantenerlo siempre, siempre, ACTUALIZADO.
Otro tanto ocurre con los complementos (plugins) y temas que estamos utilizando. También realizan actualizaciones y precisan que las incorporemos a nuestra web. Es la mejor manera de mantener todo en orden, libre de elementos vulnerables y con las máximas prestaciones posibles.
Conviene, justo después de actualizar nuestra web, visitarla y comprobar que nuestro front-end está correcto.
Diríamos entonces que, como cualquier software, como cualquier empresa, nuestra web necesita también de un programa de mantenimiento. Básicamente, un programa de mantenimiento serio para WordPress debe contemplar los siguientes puntos:
– Actualizaciones permanentes: Cuanto antes, tanto de WordPress como de temas y plugins.
– Monitorización diaria de la Salud del sitio: Visualizando los mensajes y tratando cada aviso que se nos plantee.
– Control mensual del rendimiento web: Mediante herramientas como Page Speed Insights.
– Monitorización mensual de SEO: Mediante herramientas como Google Search Console o Bing WebMasters.
– Monitorización mensual de tráfico: Mediante herramientas como Google Analytics.
Optimización y rendimiento
Pero como no sólo de pan vive el hombre y, para cerrar la circunferencia, necesitamos tener actuaciones para optimizar el rendimiento de nuestra web y proporcionar a nuestros usuarios de la mejor experiencia de navegación. Esto es una carrera de fondo y precisa que vayamos preparando nuestra web, desde los comienzos, en prácticas saludables, aplicación de medios y software adecuado para su buen funcionamiento.
Como en el SEO, una buena optimización de WordPress, se consigue mejor mediante un buen plugin. Al principio, sin lugar a dudas, me puse en manos de WP Rocket. Este plugin de optimización de caché, CSS e imágenes es uno de los más utilizados y consigue muy buenos tiempos de carga. Lo he utilizado incluso conviviendo con Speed Optimizer de Siteground y, aunque con algún problema (Divi también es responsable), lo he mantenido hasta hace poco, que he preferido seguir sólo con Speed Optimizer de Siteground.
Y es que Siteground hace unos plugins muy completos. Tanto Security Optimizer como Speed Optimizer, aparte de completos, funcionan a la perfección. Es decir, lo que hacen, lo hacen bien, y esto, en WordPress, es muy interesante. Ya sé que parece de Perogrullo (personaje ficticio a quien se atribuye presentar obviedades de manera sentenciosa), pero como diría Fernando Tellado: «no se puede tener todo».
El caso es que, con Speed Optimizer he conseguido un buen equilibrio y, aunque mejorable, he decidido esperar al lanzamiento de Divi 5 para ver cómo ajustar las 3 herramientas (Divi, Speed Optimizer y WP Rocket).
Veamos qué ajustes nos proporciona Speed Optimizer:
– Ajustes de caché: acelerador de caché de servidor NGINX, configuración de caché de archivos (precalentado cada 12 horas) y caché de objetos Memcached. Vaciado inteligente de caché, vaciado manual, exclusión de URL’s determinadas de la memoria caché, exclusión de contenidos en la caché (si se precisa) y caché especifica por navegador (no aplicada, ralentiza un poco). Además, tienes una herramienta que puede verificar si cualquier URL de tu web está en la caché o no.
– Ajustes de entorno: forzado de HTTPs (conexión segura), correcciones de contenido inseguro (en caso de presentarse), optimización de Heartbeat de WordPress, comprobando las páginas de edición de entradas cada 15 segundos y tu escritorio y portada cada 60 segundos (desactivado en nuestro caso por alto consumo de recursos del servidor) y mantenimiento programado de la base de datos (limpieza semanal).
– Ajustes de Portada: minimizado de archivos CSS, combinar archivos CSS y precargar archivos CSS. Minimizar, combinar y aplazar archivos Javascript. Minimizar salida HTML, optimización de fuentes web, precarga de fuentes, eliminar cadenas de archivos estáticos, desactivación de emojis y precargas de DNS externas.
– Ajustes de Medios: compresión de imágenes, uso de imágenes WebP, carga diferida de medios, excluir CSS de la carga diferida y ancho máximo de imágenes (1920 px).
– Panel de rendimiento del sitio: comprobador de Page Speed Insights e historial.
Por la parte de nuestro alojamiento en Siteground, y de manera opcional, disponemos de otra potente herramienta para optimizar el rendimiento de nuestra web. Se trata de ofrecer nuestra web a través de CDN (Red de distribución de contenidos), que almacena nuestra web en varios servidores alrededor del mundo para mostrar nuestro sitio desde el servidor más cercano al visitante, reduciendo los tiempos de carga considerablemente.


