[truco] mariadb se va de paseo (MySQL server has gone away)

O dicho en el idioma de los errores de sistema, ERROR 2006 (HY000) at line 21232: MySQL server has gone away.

El lío

mariadb

mariadb

El error me apareció cuando intentaba importar la base de un wordpress en una instalación de MariaDB 10.1.37-0+deb9u1. Tengo que decir que el fichero SQL no es muy diferente al montón de importaciones que he hecho con MySQL, tiene un tamaño aproximado aunque sí que ha habido ficheros varios megas más grandes en el mismo servidor. Lo inusual del error, el que no fuese un error de sintaxis del fichero me hacía sospechar de la configuración de MariaDB.

La solución

Hay que aumentar una variable del sistema que se encarga del tamaño máximo del buffer donde se almacenan los paquetes, max_allowed_packet. Basta con añadir (o modificar) el valor y ponerlo a algo tremendo para que no falle, en este caso, 2 GB.

Tras aplicar el cambio, ya se puede importar sin problema volcados de wordpress o de lo que sea.

 

Tip: Escalar un documento PDF con GhostScript

Pongamos que lleváis tiempo maquetando un documento de unos cuantos cientos de páginas y que a la hora de imprimir decidís que en lugar del clásico A4, preferís hacerlo en un formato más manejable, por ejemplo B5. Pongamos también que la pereza os ha vencido y no habéis utilizado LaTex para editar vuestro documento. Y que además tiene decenas de imágenes y tablas con sus respectivas leyendas. Remaquetarlo son unas cuantas horas de ingrato trabajo extra ¿por qué no redimensionar el PDF directamente?

Ghostscript funciona la mar de bien en estos casos, y pasar de un A4 a un B5, respetando márgenes, interlineados y demás es tan sencillo como ejecutar:

gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -dFIXEDMEDIA -sPAPERSIZE=isob5 -dPDFFitPage -sOUTPUTFILE=B5_file.pdf A4_file.pdf

Los curiosos podéis echar un vistazo al significado de cada parámetro en el man de gs.

Happy reformating!

 

WordPress Multisite, Let’s Encrypt Wildcard y dominios redirigidos

Inciso: Dabo, te lo dije, te advertí que no pararía hasta terminar sabiendo cómo hacer funcionar esto 🙂

Tengo varias web, varios WordPress y un puñado de dominios. Es, creo yo, lo habitual cuando te mueves por estas aguas y a cada proyecto, idea o viaje místico le asocias un dominio y un espacio en internet. La mayoría no llega a ningún sitio pero eso no es lo importante. Al final, te juntas con un puñado de webs en un WordPress Multisite, con varios dominios apuntando a varios de sus subdominios y con unas ganas locas de ponerles a todas un bonito certificado SSL patrocinado por Let’s Encrypt.

El escenario

example.com es el dominio principal de un WordPress Multisite que alberga una veintena de webs en su propio subdominio, loquesea.example.com y, algunas de ellas, además, tienen un dominio propio que apunta al subdominio. Así tenemos, por ejemplo, example1.com que apunta a ex1.example.com y example2.net que apunta a ex2net.example.com.

Y un día quieres que todos los dominios tengan su propio certificado de Let’s Encrypt y es un problema porque como todos los subdominios dependen del mismo dominio principal y Let’s Encrypt no soporta wildcards, no hay mucho que hacer.

Así que te planteas hacer que sea Apache (2.4) el que se coma el marrón y te pones a mirar cómo hacerlo. El VirtualHost ya tiene declarado el dominio y los subdominios y también cuenta con el certificado para si mismo. Y no encontré la forma de meterle el resto de certificados, ni declarando otros VirtualHosts para que cada dominio tuviese su certificado, ni de ninguna forma.

Al final lo dejas por un tiempo porque no, ni apache es la solución ni Let’s Encrypt soporta wildcards y ya estás bastante cansado de batallar con molinos multisite.

La solución

El 13 de marzo, con dos meses de retraso sobre la fecha previstas, Let’s Encrypt anuncia que soporta wildcards y empiezas con las pruebas.

Primero, el VirtualHost de apache debe reconocer todos y cada uno de los dominios y subdominios, incluídos los dominios asociados:

Luego, se invoca a cerbot con los parámetros adecuados:

Con el parámetro --manual deberemos añadir un registro TXT _acme-challenge con una clave al DNS de cada uno de los dominios especificados para que sean capaces de comprobar que realmente eres el propietario del dominio.

Los dominios a incluir en el certificado se especifican por separado, todos ellos, con un -d, incluyendo el wildcard para los subdominios de example.com.

Se cambia la declaración del certificado porque es un fichero diferente, se reinicia apache y esta parte está lista. Cada dominio y subdominio tiene un certificado nominal válido, firmado por Let’s Encrypt y se puede acceder a cada uno, por HTTP y HTTPS.

En WordPress es una buena idea activar el plugin Really Simple SSL que convierte todas las peticiones HTTP en HTTPS para que todo el contenido esté cifrado.

Bonus track: redirigir las peticiones HTTP a HTTPS

Añadir estas pocas líneas al VirtualHost de apache:

Sólo he necesitado un año y pico y que Let’s Encrypt admitiese los wildcard para poder tener los dominios funcionando a mi gusto. Y si, seguro que hay una docena (o más) de mejores formas de hacerlo pero, sinceramente, no he encontrado ninguna otra.

 

Preguntando a Richard Stallman en Oviedo sobre “Hurd” y la postura de la FSF respecto a Debian GNU/Linux

El pasado 24 de febrero, el equipazo humano de Hack Lab Pica Pica volvió a hacer posible (no sin grandes esfuerzos y un “justito” apoyo institucional según lo que pude ver ) que RMS estuviese en Oviedo tres años después de su primera conferencia en la ciudad.

Tras años escribiéndome con Alexis, uno de los integrantes de Pica Pica y gran impulsor del Software Libre, por fin pudimos ponernos cara en Palacio de Congresos “Ciudad de Oviedo”. Sobre la conferencia de RMS, la crónica de víctorhck de su intervención en 2015, sigue siendo perfectamente válida, en mi caso era la primera vez que le veía en directo y es una experiencia 100 % recomendable.

Sobre las fotos del post. Intenté hacer fotos decentes tanto para el post, como para pasárselas a Pica Pica y me llevé la EM1 para hacerlas con ayuda de Patri.  La licencia es la misma que la de la web, una CC, pero pediría por favor que si alguien las usa, respete la petición de RMS al comenzar su charla pidiendo no compartirlas en Facebook e Instagram.

Y es que, aún conociendo y siguiendo muchas de sus proclamas desde hace años, no es lo mismo cuando le ves a unos metros de ti y escuchas con plena atención. Vaya por delante que ni soy, ni tampoco pretendo ser tan coherente como él con la filosofía que promulga. Sólo él es Richard Stallman y podrás estar de acuerdo o no con sus ideas, pero nadie puede negar que es consecuente hasta límites inalcanzables para el resto con lo que proclama. En una Sociedad tan plagada de “falsos profetas”, RMS es esa excepción que confirma (afortunadamente) la regla.

Os dejo una galería con varias imágenes que hablan por si mismas..

El pase de diapositivas requiere JavaScript.

Conectó a tope con el público asistente con un estilo claro, cercano y sin rodeos. Fue muy interesante ver las reacciones de gente que nunca le había escuchado, o que no estaba al tanto de su nivel de activismo social.

Tras la conferencia llegó el momento de las preguntas y en mi caso, formulé dos. Intentaré reproducir mis preguntas y sus respuestas de la forma más exacta posible ya que hay matices que cuentan, con la objetividad por delante (creo que la gente de Pica Pica grabó la charla y quizás también las preguntas y respuestas. Si cuando te pases por aquí Alexis ves pertinente aclarar algo, no dudes en dejarlo en los comentarios, gracias de antemano;).

P: ¿En qué estado se encuentra el proyecto GNU/Hurd?

Me respondió que tras 6 años de un desarrollo intenso, el Linux Kernel era la mejor opción para acompañar a GNU, que era totalmente libre y que no veía problema.

P: ¿Cómo están actualmente las relaciones entre la FSF y Debian respecto a que siga sin estar en las distros recomendadas por la Free Software Foundation?

 

Leer más … 

 

Panopticlick: ¿estás protegido contra el tracking?

Fantástica herramienta de la Electronic Frontier Foundation. Comprueba si tu navegador está protegido contra los intentos de tracking y fingerprinting que practican infinidad de compañías on-line con tan sólo un click.

… 

 

Destilado de #Hackmeeting17

Ahí van unas pequeñas cápsulas de conocimiento concentrado, mensajes cortos y directos al hipocampo
para fijar ideas. Por supuesto, no están todos los que son ni son todos los que están, sois bienvenidos a
contribuir al destilado de #HackMeeting2017 en los comentarios:

… 

 

[Short] Cómo capturar paquetes en Wireshark sin ser root (Debian 9 “Stretch”)

Entrada breve para responder a algo que me suelen preguntar sobre cómo poder capturar paquetes con Wireshark en Debian sin ser root. Este método es válido también para jessie y es la respuesta a un mensaje como este:

couldn’t run /usr/bin/dumpcap in child process: Permission Denied.

Instalamos:

aptitude install wireshark

Configuramos “Dumpcap” para que los usuarios del grupo “wireshark” (creado en la instalación) puedan capturar paquetes:

dpkg-reconfigure wireshark-common

Añadimos nuestro usuario al grupo wireshark

usermod -a -G wireshark nuestro_usuario

Y como dumpcap seguirá “quejándose” al iniciar Wireshark, tecleamos:

chmod +x /usr/bin/dumpcap

Y tras estos pasos, ya se iniciará normalmente y veréis la lista de interfaces disponibles para capturar tráfico de red (hablando de Redes y capturas de tráfico, os recomiendo encarecidamente esta saga del compañero Alfon (@seguridadyredes) en Daboweb.

Happy Hacking (que no va a ser todo bajo Kali, por muy “Debian based” que sea, recordad eso de los recursos y las VM-;)

 

Mañana empieza el HackMeeting 2017

Aunque se le ha dado bombo y platillo en las redes libres (y en las no tan libres), no quería dejar de recordaros que mañana empieza el HackMeeting 2017: Ingoberhack en La Ingobernable, un escenario inmejorable para compartir y construir conocimiento abierto.

Empieza fuerte, con nodos prácticos sobre cifrado de datos, análisis de big data para controlar las corruptelas de la clase política y fabricación colaborativa; y otros algo más filosóficos como la propuesta de trasladar la GPL a objetos físicos. Y el patrón se mantiene a lo largo de los cuatro días con talleres y charlas sobre temas tan diversos como feminismo, criptomoneda, procomún, censura en la red o defensa de la privacidad, por mencionar algunos. Os dejo captura del calendario de nodos, os aseguro que no tiene desperdicio:

El pase de diapositivas requiere JavaScript.

El calendario es provisional, podéis ver los cambios en tiempo real aquí. Y los detalles sobre el contenido de cada nodo aquí.

Cambio y corto, pero no sin antes agradecer el currazo de las buenas gentes que han invertido tiempo, sudor y ganas, muchas ganas en organizar el evento.

¡Nos vemos mañana!

 

Compilando un menú global en Debian 9

Dada mi casi insana obsesión por aprovechar al máximo los cada vez más reducidos píxeles verticales de mi pantalla (gracias, wide screen formats) siempre he admirado la idea de integrar los menús de aplicaciones en el panel superior del escritorio. Sí, a lo Mac OS, a lo Unity, preparad los tomates fanboys y haters del ciberuniverso. Sin embargo, ni utilizo software privativo ni me gusta lo más mínimo el ahora moribundo Unity. Y desafortunadamente los vastos repostorios debianitas tampoco cuentan con una alternativa viable (tenemos el topmenu plugin para XFCE y Mate, pero no funciona bien con aplicaciones GTK3). Por suerte, rilian-la-te ha escrito este pequeño applet para sacarnos del apuro. Veamos cómo instalarlo en Debian 9:

… 

 

Buceando en los paquetes Debian con apt-file

Hoy os traigo una joya en bruto para el sistema de paquetes APT. Se trata de apt-file, un buscador de archivos para el sistema de paquetes Debian. Sí, habéis entendido bien, apt-file busca dentro de los paquetes Debian para encontrar en qué paquete (o paquetes) está dicho archivo. Una auténtica maravilla para cuando nos tenemos que pelear con dependencias a la hora de compilar software de terceros.

…