Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Sistema seguro de registro y conexión de usuarios en PHP: password_hash, password_verify, cookie de sesión y el concepto de pepper

Imago voragine.net
• Por

La mayoría de las veces que se necesita un sistema de usuarios, se usa el del CMS o framework que se esté usando para desarrollar. Para las pocas veces que no sea el caso, o que sencillamente se quiera aprender cómo funciona un sistema de registro e inicio de sesión de usuarios a más bajo nivel, aquí algunas pistas de cómo hacerlo de manera segura usando PHP.

En este caso lo voy a hacer usando las funciones password_hash y password_verify.

Maneras de vaciar y borrar un enorme archivo de varios gigabytes en Linux

Imago voragine.net
• Por

Hay veces que un archivo es tan grande que un sistema Linux no permite borrarlo con el procedimiento habitual: usando el comando rm. En una pequeña receta en Tecmin cuentan varias estrategias para vaciar un archivo y así poder borrarlo después.

Un caso típico es encontrarse con un log --un archivo de registro de actividad-- de varios gigabytes, por ejemplo, el registro de acceso del servidor web, que típicamente se llama access.log.

Cómo saber tu IP pública desde la línea de comandos

Imago voragine.net
• Por

La IP pública es aquella desde la que estamos saliendo a internet; la que conecta una red privada, como por ejemplo una red local, a la parte pública de internet. Hay muchos comandos en linux que permiten obtener este dato. El procedimiento siempre es el mismo: el comando consulta un servidor DNS, un servicio en internet, que le devuelve el dato. Personalmente prefiero usar host porque viene instalado por omisión en la mayoría de las distribuciones linux.

Airbnb «not found»: queremos saber lo que pasa en nuestras ciudades

Imago voragine.net
[actualizado el ] • Por

Este artículo lo escribí en mayo de 2018 y se publicó originalmente en julio de 2018 en el blog Laaab del Gobierno de Aragón que reúne experiencias y teoría en torno a temas como la transparencia, el gobierno y los datos abiertos. El artículo forma parte de la serie Cartografiar los imposible, comisariada por Mauro Gil-Fournier.

Proyecto Efecto Airbnb de Montera34

¿Ha habido un aumento significativo de las viviendas de uso turístico en Donostia con la proliferación de plataformas digitales de alquileres turísticos como Airbnb? ¿Cómo está influyendo la proliferación de viviendas de uso turístico en el precio de los alquileres en esta ciudad? ¿Cómo está afectando este fenómeno a las distintas zonas? En definitiva, ¿Existe un “Efecto Airbnb” en Donostia? Ibai Zabaleta vive en el barrio de Egia, uno de los que más han cambiado de la ciudad en los últimos tres años, y donde se encuentra Tabakalera, antigua fábrica de tabaco reconvertida en centro de cultura contemporánea. Ibai es programador de contenidos en Hirikilabs, el laboratorio de cultura digital y tecnología de Tabakalera. Como vecino de Egia se hizo estas preguntas hace unos años al ver cómo su barrio y su ciudad cambiaban aceleradamente. Como programador de contenidos de Hirikilabs quería lanzar una nueva línea de experimentación y trabajo con datos y pensó montar un taller para aprender a analizar y visualizar datos, y por qué no analizar una cuestión actual como el de las viviendas turísticas en Donostia.

Cuando Ibai nos propuso dar un taller sobre análisis y visualización de datos sobre el Efecto Airbnb en abril de 2017, en Montera34 no conocíamos la situación más allá de las noticias que se podían leer en prensa. El Efecto Airbnb en datos en Donostia- San Sebastián fue el primer taller de la serie de talleres sobre el Efecto Airbnb y la turistificación en general que hemos coordinado desde entonces. En aquel primer taller aprendimos muchas cosas.

Gitlab en Apache2 con conexión segura sobre HTTPS usando reverse_proxy

Imago voragine.net
[actualizado el ] • Por

Explico en esta entrada cómo instalar Gitlab usando el paquete Omnibus, que es la manera más fácil de poner en marcha una instancia y mantenerla actualizada. Luego explico cómo configurar la conexión segura HTTPS usando un certificado Let's Encrypt. En mi caso la instalación se hace en un servidor Debian en el que hay más servicios funcionando bajo un servidor web Apache2. Así que configuro un proxy inverso para la conexión segura ya que el puerto 443 está siendo usando por Apache2.

Si no se está familiarizado con la generación de certificados TLS de Let's Encrypt usando certbot, es aconsejable leer antes este otro artículo.

Instalación, configuración y uso de Kimai2, herramienta web open source de organización de tareas y rastreo del tiempo

Imago voragine.net
• Por

Desde Montera34 estamos ayudando a montar el Banco del tiempo de Wikitoki. Wikitoki es el espacio en el que trabaja Pablo en Bilbao. Hemos elegido el software Kimai2 para que cada persona que participa en las tareas comunes del espacio registre sus horas. Para elegir Kimai2 hemos hecho un análisis comparativo de unas cuantas herramientas, que cuando tenga un rato publicaré. De momento publico un pequeño manual para poner en marcha Kimai2.

Kimai es una herramienta para organizar tareas y los equipos que las trabajan, y registrar el tiempo (time tracker) que se dedica a cada una de ellas. También dispone de algunas herramientas básicas (estadísticas, algún diagrama de barras) para evaluar la dedicación de cada persona del equipo. Se utiliza usando una interfaz web disponible a través de cualquier navegador. No tiene aplicación móvil pero su interfaz está adaptada para usarse en cualquier dispositivo.

El desarrollo está liderado por Kevin Papst, aunque no siempre ha sido así. Kevin Papst rescribió prácticamente todo el código y liberó Kimai2. Actualmente tiene una comunidad de desarrolladores considerable detrás: 24 personas contribuyen a su desarrollo, según su repositorio de Github. El software está liberado bajo licencia MIT, así que es open source.

Gestionar WordPress desde la línea de comandos con wp-cli

Imago voragine.net
[actualizado el ] • Por

wp-cli es una interfaz de línea de comandos para WordPress. Permite hacer multitud de operaciones de administración y mantenimiento de una instalación de WordPress. Por un lado agiliza estas operaciones y por otro permite automatizarlas, ejecutándolas en modo no interactivo usando cron y un script de bash por ejemplo.

Aquí recojo cómo llevar a cabo tareas básicas con WordPress usando wp-cli. Para cualquier otro uso se puede consultar la documentación oficial de wp-cli.

Podcast On Collaboration. Git y Github como ecosistema de colaboración

Imago voragine.net
• Por

On Collaboration Podcast

En junio pasado tuve la oportunidad de participar en el primer programa del podcast On Collaboration, que explora los recovecos de los colaborativo. Del sitio web de On Collaboration:

5 enfoques distintos dan forma a los 5 PROGRAMAS del proyecto. Cada programa viene estructurado mediante una serie de secciones o PÍLDORAS transversales a todos ellos, de manera que el oyente se convierte en el último engranaje y editor de contenido resultado de este proceso colaborativo que es en sí mismo On Collaboration. Tú escoges qué y cómo organizas el contenido.

El primer programa, titulado Historias de la colaboración, está comisariado por Zuloark y Juanito Jones, se puede escuchar en web de On Collaboration.

Dentro de la sección de Herramientas para la colaboración del programa, estuve charlando con Manuel Pascual de Zuloark, sobre el potencial de git y github como ecosistemas de colaboración.

Password Store, el gestor de contraseñas para Android compatible con pass

Imago voragine.net
• Por

Password Store es un gestor de contraseñas para Android compatible con pass, el gestor de contraseñas de línea de comandos sobre el que escribí no hace mucho. Es probablemente la mejor opción para disponer en Android de una base de datos de contraseñas personales generada con pass.

El interés de pass es que permite almacenar las contraseñas en un repositorio git cifrado bajo una clave público privada. Por ello Password Store necesita una aplicación, como OpenKeychain, que permita gestionar contenido cifrado.

Cómo clonar todo un disco duro en Linux

Imago voragine.net
• Por

Ayer me llegó un nuevo disco para mi portátil ThinkPad X201, un SSD de 500GB para sustituir mi vetusto HDD de 250GB. Llevaba tiempo queriendo cambiar el disco por un SSD para comprobar si el portátil iba más rápido y se calentaba menos. Los SSD son más rápidos y al no girar a miles de revoluciones por minuto se calientan menos. Me he decidido tras una conversación que he tenido con @eldelacajita a propósito de qué mirar cuando uno se compra un portátil de segunda mano.

Cuento aquí lo que he hecho para sustituir el disco. Es un procedimiento muy fácil, pero uno tiene que ser ordenado.