#WCMadrid 2018: Codename Servehappy y Project Tide

WordPress y PHP siempre pueden ir en la misma frase, y es que PHP es el corazón del gestor de contenidos más importante de Internet. Es por eso que dos de los proyectos que se han gestado en estos últimos meses toman relevancia cuando se acerca la versión 5.0 de WordPress.

Ahora mismo hay 4 versiones / ramas de PHP activas… pero ¿las soporta WordPress?

  • 5.6.34: no soportada
  • 7.0.28: soportada, no recomendada
  • 7.1.15: soportada, no recomendada
  • 7.2.3: recomendada

Por esto se ha creado el proyecto Servehappy, con la idea de que tu instalación de WordPress detecte qué versión tienes y te ayude a actualizar. Incluso, en algunos casos le propio WordPress Danger es capaz de decirte si tus plugins y themes son compatibles.

Pero quizá lo más interesante es el proyecto Tide, un sistema que analiza la calidad de plugins y themes y que te dice, además de si es compatible con tu versión de PHP, si el desarrollo está bien hecho y cumple unos mínimos estándar.

Si quieres, solo has de descargarte la presentación, disponible bajo licencia EUPL 1.2.

Esto no es SEO, es hacer las cosas bien

El concepto de SEO está muy mal utilizado. Se llama SEO a prácticamente cualquier cosa que el realidad hace referencia a construir un sitio web correctamente. Y es que muchas veces clientes, jefes, socios y todo tipo de personas (y personajes) me piden que les ayude con el SEO de su web cuando ni siquiera se han preocupado por cosas más básicas como tener el robots.txt correctamente. Si no tienes robots.txt (que eso es previo al SEO y a Google) ¿cómo vas a querer hacer SEO?

Es por esta razón que además de hacer consultoría SEO, WPO y de otras tantas cosas que son en realidad las que hago como Arquitectura de la Información, Estructura de la Información, Buenas prácticas… de tanto en tanto me toca dar algo de formación a desarrolladores para que tengan presente que todo esto que no es SEO ha de estar incorporado en su ADN laboral. No puedes crear un sitio web de Internet sin saber cómo funciona Internet. Esa es la diferencia entre alguien mediocre y alguien profesional. Aquí también podría incluir “a mi cuñado” o a “mi sobrino” que me hace la web gratis o por 4 duros.

Esta presentación es básica, aunque toca muchos asuntos. la idea es plantar la semilla para que a partir de aquí cada uno por cuenta propia se lea el RFC2616, o por ejemplo el RFC6596, se mire la documentación sobre HTML5 y todo lo que va relacionado con la red de redes.

Así que nada, aquí está disponible el PDF de la presentación. Está disponible bajo licencia EUPL 1.2, así que puedes compartirlo siempre que se cite la fuente.

Test de velocidad de un servidor Linux

Hace un tiempo que hablé de los VPS para desarrolladores, unas máquinas que en general por ser baratas se presupone que tienen mala conexión… pero, ¿cómo comprobar de forma sencilla la velocidad de conexión de un VPS?

Lo único que necesitaremos es tener acceso SSH a la máquina y ejecutar un comando. Si quieres probar la descarga de un fichero de 100 MB, 500MB o 1GB puedes hacerlo con los siguientes comandos:

fichero de 100 MB

wget -O /dev/null http://speedtest.sea01.softlayer.com/downloads/test100.zip
wget -O /dev/null https://speed.hetzner.de/100MB.bin
wget -O /dev/null http://speedtest.tele2.net/100MB.zip
wget -O /dev/null http://cachefly.cachefly.net/100mb.test
wget -O /dev/null http://speedtest.london.linode.com/100MB-london.bin
wget -O /dev/null http://speedtest.atlanta.linode.com/100MB-atlanta.bin
wget -O /dev/null http://proof.ovh.net/files/100Mb.dat

fichero de 500MB

wget -O /dev/null http://speedtest.ams01.softlayer.com/downloads/test500.zip

fichero de 1GB

wget -O /dev/null https://speed.hetzner.de/1GB.bin
wget -O /dev/null http://speedtest.tele2.net/1GB.zip
wget -O /dev/null http://mirror.nl.leaseweb.net/speedtest/1000mb.bin
wget -O /dev/null http://mirror.us.leaseweb.net/speedtest/1000mb.bin

NOTA: en estos casos la descarga de estos ficheros no va a ocupar espacio en tu disco, es simplemente una descarga virtual.

Esto acaba dando un resultado similar al siguiente:

HTTP request sent, awaiting response... 200 OK
Length: 104874307 (100M) [application/zip]
Saving to: ‘/dev/null’

/dev/null 100%[=====================================>] 100.02M 15.3MB/s in 7.4s

2018-03-26 08:20:33 (13.4 MB/s) - ‘/dev/null’ saved [104874307/104874307]

La cifra marcada es la velocidad de descarga. Piensa que esta velocidad está en la medida que se indica, en este caso MB/s (Megabytes por segundo), por lo que si quieres compararla con tu conexión a Internet, has de multiplicar la cifra por 8:

15.3 MB/s = 122.4 Mb/s

Esta velocidad ahora es en Megabits por segundo, comparable con las conexiones de ADSL de 20 Mb/s, o de Fibra de 100 Mb/s o de 300 Mb/s e incluso de 1 Gb/s.

¿Qué velocidad debería dar al menos mi servidor? Pues depende de la tarjeta de red que tenga y si está limitada o no. Lo ideal es que al menos tenga una velocidad de 100 Mb/s, aunque lo ideal es que cubra los 1000 Mb/s, ya que un usuario que tenga conexión por Fibra Óptica podría aprovechar el 100% de la misma.

Cuentas de correo de usar y tirar

¿Estás harto de recibir spam después de haberte dado de alta en servicios “raros”? Si eres de los que le gusta probar sitios web, servicios desconocidos, y no quieres hacerlo de buenas a primeras con tu cuenta real de correo, existen servicios de correo que te permite verificar la cuenta, pero que luego, esa cuenta, desaparece por arte de magia. Son las cuentas disposable (de usar y tirar).

En general todos estos servicios que te voy a proponer crean una cuenta de correo nada más acceder, y allí mismo tienes la bandeja de entrada, por lo que si pones esa cuenta, a los pocos minutos recibirás el correo, podrás leerlo, y posteriormente la cuenta desaparecerá (en general las cuentas están disponibles entre 10 minutos y 60 minutos después de su creación.

Instalar Kali Linux en DigitalOcean

Los que me conocen saben que soy muy de hacer pruebas con VPS de 5 dólares de DigitalOcean. Usar y tirar. Así que como en casa me faltaban máquinas para instalar y probar Kali Linux (usado para temas de seguridad principalmente) me he decidido a instalarlo en un servidor de estos baratos. ¿Qué ocurre? Pues como es lógico, pocos proveedores ofrecen la posibilidad de instalar Kali Linux por la posibilidad de usarse para hacer ataques preventivos; he visto algunos, pero la verdad, no sé si el precio compensa para hacer pruebas.

Así que después de darle varias vueltas, sabiendo que Kali Linux es una distro de Debian me he planteado si era posible instalar las herramientas sobre ello, y sí, es posible. Así que para empezar daremos de alta una máquina de, al menos 2GB de RAM con Debian (preferiblemente la última versión).

Lo siguiente a hacer es poner en hora la máquina (sí, una de esas manías mías con la hora).

timedatectl set-timezone UTC
timedatectl set-ntp on

Lo siguiente es permitir la instalación de paquetes Kali, por lo que añadiremos las fuentes como fuente (valga la redundancia) y haremos una actualización.

echo "deb http://http.kali.org/kali kali-rolling main contrib non-free" >> /etc/apt/sources.list
apt-get -y update

Y aquí surge el primer problema, ya que no autentica la configuración. Para ello instalaremos los keyring que también nos podrian dar error, así que le añadiremos un parámetro mágico y continuamos actualizando.

apt-get -y --allow-unauthenticated install kali-archive-keyring
apt-get -y update

Ahora que ya tenemos todo listo, habrá que decidir qué instalamos. Puesto a hacerlo, lo haremos a lo grande, así que haremos la instalación completa full, pero se puede ver la lista primero y decidir.

apt-cache search kali-linux
apt-get -y install kali-linux-all

Después de unos 20 minutos (y unas cuantas preguntas) tendrás tu máquina lista para comenzar a trabajar. Lo siguiente es darte una vuelta por las Herramientas Kali, y hacer pruebas.

ACTUALIZACIÓN: Una vez hecho este proceso, es más que recomendable hacer una actualización (un par de veces para asegurarse que no queda nada pendiente) de todo el sistema:

apt-get -y update
apt-get -y upgrade
apt-get -y dist-upgrade
apt-get -y autoremove

A partir de aquí, un reinicio del sistema, y a trabajar.

reboot

Un reset, dos reset, tres reset

Desde hace tres semanas que he vuelto a dedicarme a la consultoría en Internet. Hace un año que se acabó el proyecto de Geenapp para mi, tras pasar dos temporadas por empresas en las que soy inversor y podía ayudar a acelerar o corregir determinados aspectos de los proyectos (por un lado BoatBureau y por otro MAM) y finalmente tras la enfermedad y fallecimiento de mi socio y sin embargo amigo, mentor, y acompañante en estos últimos 15 años, Jaume 🙂 tocaba un cambio de aires de volver a trabajar en algunas de las cosas que sé hacer, como son las cosas base de Internet, además de las que he ido haciendo estos últimos años (SEO, WPO, AI, EI…) y que en realidad nunca he dejado ya que he ido aplicando en proyectos propios.

Tengo la gran suerte de que algunos antiguos clientes, amigos, colaboradores o simplemente conocidos cuando supieron de mi cambio de planteamiento profesional me han comenzado a pasar proyectos, lo que hace que en unos pocos días me haya podido poner al máximo de capacidad. Sin duda he de agradecer a todos los que han vuelto a confiar en mi tras unos años fuera de mercado.

Los siguientes pasos creo que van a ser interesantes. Por un lado me he vuelto a meter de nuevo en la comunidad WordPress de España, por un lado por el proyecto de WPdanger relacionado con la seguridad del CMS, y por otro por volver a dar charlas de temas que conozco, la mayoría de seguridad, pero que si no hay problemas, en breve serán de otros varios temas.

Parece que los cambios van por buen camino, ya no solo porque tengo un cliente fijo que me puede pasar gran cantidad de trabajo, sino también porque se me han presentado varios proyectos con amigos que hasta ahora, por falta de tiempo era bastante complejo que se pudieran llevar a la realidad.

La verdad es que poder dejar una temporada de ser el desarrollador líder de los proyectos y dedicarme a trabajar en otros proyectos de forma temporal aportando conocimiento es algo que me apetece. Estos días hablando con colegas que quieren montar sus proyectos me estoy dando cuenta de cómo he evolucionado en la parte de negocio, a base de tortazos de esos que te da la vida profesional.

Y tras este reset profesional, en el que he dejado atrás todos los proyectos anteriores, solo queda ver qué me pone el camino por delante y qué soy capaz de ponerle yo.

La comunidad WordPress española en Meetup

Si quieres aprender sobre WordPress, además de lo que puedas encontrar por Internet, lo más recomendable es acercarte a alguna de las comunidades locales que hay alrededor de toda España (y si no la hay, ¿has pensado en crearla?). Esta es una recopilación de las distintas Meetup que hay.

Andalucía

Aragón

Asturias

Baleares

Canarias

Cantabria

Castilla La Mancha

Castilla y León

Cataluña

Extremadura

Galicia

Madrid

Murcia

Navarra

País Vasco

Valencia

Última actualización: 2018-02-05
¿Crees que falta alguna? No dudes en escribirme un correo [javier-arroba-casares.org] que la añadiré.

La comunidad WordPress española en Twitter

Me atrevería a decir que España tiene una de las comunidades WordPress más importantes del mundo, y así se refleja en muchas ocasiones por la cantidad de Meetups o de WordCamp que se realizan. Por eso me he parado a hacer una recopilación de cuentas de Twitter de las distintas comunidades que hay.

WordCamp

Andalucía

Canarias

Cataluña

Madrid

País Vasco

WordPress

Andalucía

Aragón

Asturias

Baleares

Canarias

Cantabria

Castilla y León

Cataluña

Extremadura

Galicia

Madrid

Murcia

Navarra

País Vasco

Valencia

WooCommerce

Madrid

Otros

Oficiales

Última actualización: 2018-02-05
¿Crees que falta alguna? No dudes en escribirme un correo [javier-arroba-casares.org] que la añadiré.

Continuando la evolución de WPdanger

Cuanto más tiempo le dedico a la seguridad de los WordPress, más me doy cuenta de la dejadez de muchos de sus usuarios. Y es que cuando comencé con WPdanger todo venía un poco del mal trago que tuve que pasar con un proyecto que me toca de cerca y que prácticamente se había dejado. Y eso que era un WooCommerce.

Según ha pasado el tiempo y he podido ver análisis de cientos de sitios, voy viendo que sí, que cada vez más usuarios mantienen al día sus sitios pero que, aún siendo la recomendación más dada -mantén al día tu WordPress, los plugins y plantillas- parece que no vemos que no es suficiente.

Esto que he ido viendo en algunas WordCamp como la de Santander o la de Zaragoza me ha hecho lanzar WPdanger Code, el sitio en el que publico algunos bloques de código y artículos con recomendaciones.

Pero, aún así, no es suficiente. Es cierto que estar al día es muy acertado pero ¿por qué dejar ver qué tiene tu sitio, qué plugins utilizas? Y ahí es donde me entran las dudas… no sé si es que los que usamos WordPress no tenemos claro que hay que proteger nuestro hosting (y algunas configuraciones propias de WordPress) o es que simplemente tenemos ya la idea en la cabeza de que “como WordPress es seguro, estar con todo actualizado es suficiente”.

La primera versión de WPdanger era bastante sencilla… simplemente hacía el análisis, te mostraba lo que tenías, y poco más. Poco después añadí ciertas funcionalidades extras como la integración básica del “Project Tide” de WordPress (para analizar la calidad del código de plugins y themes, y que creo que va a sacar las vergüenzas a muchos desarrolladores), el análisis de un antivirus, el sitio con documentación y códigos para aumentar la prevención… aún así, sigo viendo de forma recurrente algunos sitios que van haciendo análisis y no acabo de ver una evolución en cuanto a protección. Lo ideal es que WPdanger te dijera que “no sabe nada de tu sitio”.

Estos últimos días he dedicado bastante tiempo a montar un VPS sin nada, ponerle un WordPress con una decena de plantillas destacadas y una veintena de plugins habituales y hacer un primer análisis. En aquel momento (aunque estaba todo al día) me detectaba lo que no está escrito. Haciendo tunning del servidor, comenzando a ocultar algunos elementos desde el exterior (desde la configuración del nginx, y seguramente también se podría hacer desde los .htaccess) fui dejando de ver la lista de plugins, la lista de plantillas (exceptuando la que tenía puesta), y comencé solo a ver elementos “detectados de forma agresiva”. Eso es buena señal, si el sistema solo detecta elementos haciendo “ataques” contra el sitio y no de forma pasiva, quiere decir que alguien que use herramientas sencillas y necesite poco tiempo para detectar ataques, lo va a tener complejo porque tendrá que aplicar muchos más recursos.

Tras la presentación en la meetup de Barcelona y el taller de seguridad en Zaragoza he tomado la decisión de comenzar a ofrecer servicios de prevención para aquellos que usan WordPress, creo que a unos precios asumibles para alguien mediano o que ha sufrido algún tipo de ataque. Para bien o para mal, aunque tengo medio paquetizado todo, lo más probable es que tengan que ser servicios personalizados, ya que en general cada WordPress es un mundo… aún así, me he prometido intentar mantener el servicio lo más estándar posible.

Otra cosa que me he encontrado bastante últimamente es el asunto de los “plugins de seguridad”. Es curioso porque los plugins como Sucuri o Wordfence son de los plugins que tienen más incidencias y vulnerabilidades documentadas… lo que hace que un sitio en general seguro pueda convertirse en inseguro por poner en marcha estos plugins… ¿realmente es necesario tener un sistema como ese? Yo suelo ser partidario de eliminar puntos de fallida, y soy muy dado a tener un Firewall en modo WAF fuera del propio sistema, lo mismo que tener el correo en un sitio, las DNS en otro, el hosting en uno distinto…

Al final, y en resumen, la cuestión es… tienes un WordPress y ¿vas a dejar la seguridad de tu sitio en manos de la Comunidad o de tu Hosting, o vas a ser un poco proactivo en intentar promover sistemas de seguridad activa? Obviamente la comunidad aporta muchísimo, pero requiere que pongas de tu parte (no va a venir alguien que contribuye a actualizar tu sitio), y lo mismo tu hosting, que puede poner medidas de seguridad, pero va a tener que dejar el sistema lo más estándar posible y no va a poner medidas extremas que puedan hacer incompatible tu configuración de WordPress.

Al fin y al cabo, como en todo, si buscas seguridad, privacidad y todo lo demás, has de comenzar por ti mismo (o dejarte que te asesoren bien).

Seguridad WordPress

Cada vez más personas utilizan WordPress como gestor de contenidos, ya sea un blog, un sitio web corporativo, o directamente foros, o un e-commerce. Este hecho de que cada vez más personas decidan utilizar WordPress hace que se convierta en un punto de inicio de ataques contra usuarios y sistemas.

Si eres de los que utiliza WordPress, para empezar, tranquilo: WordPress es seguro (las personas no tanto).

Aquí te dejo la presentación de la meetup de WordPress Barcelona en la que hablo de seguridad, presento WPdanger, hablo del próximo Proyecto Tide de WordPress…

Descárgate la presentación en formato PDF (987 KB).