Actualizar nuestra IP en el panel de OpenDNS

Si estamos usando el servicio OpenDNS Home y tenemos una IP dinámica, podemos utilizar ddclient, disponible en los repositorios, para actualizar la IP registrada en dicho servicio cada vez que cambie nuestra IP. Para ello, lo único que necesitamos es editar el fichero de configuración en /etc/ddclient.conf: ## ## OpenDNS.com account-configuration ## use=web, web=myip.dnsomatic.com ssl=yes server=updates.opendns.com protocol=dyndns2 login=username@example.com password=opendns_password opendns_network_label Los espacios en el nombre dado a la red se deben sustituir por guiones bajos “_” y si la contraseña contiene caracteres especiales, se debe encerrar entre comillas simples “’”. ...

December 3, 2016 · 1 min · 198 palabras · Nacho Cano

Writing efficient JavaScript

This entry describes simple techniques to fulfill the JavaScript compiler optimization process which results in faster running code. Especially in games you immediately notice frame drops and when the garbage collector has to hit in with a big stack of work to do. » Felix Maier | medium.com

November 30, 2016 · 1 min · 48 palabras · Nacho Cano

Descargar archivos de zippyshare desde el terminal con plowshare

plowshare es una herramienta diseñada para descargar y subir ficheros a los sitios de intercambio de ficheros más populares. Hace ya un tiempo la podíamos usar para descargar archivos de Megaupload. Instalación Primero, instalamos las dependencias: $ sudo aptitude install curl recode imagemagick tesseract-ocr-eng spidermonkey-bin rhino perlmagick aview Podemos descargar el código fuente desde el repositorio Git y compilarlo: $ git clone https://github.com/mcrapet/plowshare.git $ cd plowshare Podemos instalarlo mediante sudo make install, o si no tenemos privilegios de root, podemos sobreescribir el prefijo /usr con make install prefix=$home/local. ...

November 26, 2016 · 1 min · 168 palabras · Nacho Cano

Comprobar la firma de Xposed

Ayer mismo, se subió una nueva versión del framework Xposed, el cual tengo instalado en un Samsung S4. Si queremos descargarla y comprobar mediante la firma que lo que nos hemos bajado no ha sido alterado, no tenemos más que hacer uso de gpg. Descargamos los archivos: $ wget http://dl-xda.xposed.info/framework/sdk23/arm/xposed-v87-sdk23-arm.zip $ wget http://dl-xda.xposed.info/framework/sdk23/arm/xposed-v87-sdk23-arm.zip.asc Y comprobamos la firma: $ gpg --verify xposed-v87-sdk23-arm.zip.asc gpg: Signature made jue 24 nov 2016 22:26:15 CET using RSA key ID 852109AA gpg: Can’t check signature: public key not found En este caso, la firma no está certificada por una autoridad de confianza, y tampoco la tenemos importada en nuestro sistema. Vamos a buscarla y, si nos fiamos de esa cuenta de correo, tenemos la opción de importarla: ...

November 25, 2016 · 2 min · 291 palabras · Nacho Cano

Hype Driven Development

Software development teams often make decisions about software architecture or technological stack based on inaccurate opinions, social media, and in general on what is considered to be “hot”, rather than solid research and any serious consideration of expected impact on their projects. I call this trend Hype Driven Development, perceive it harmful and advocate for a more professional approach I call “Solid Software Engineering”. Learn more about how it works and find out what you can do instead. ...

November 25, 2016 · 1 min · 83 palabras · Nacho Cano

Hasta el infinito y más allá. Bienvenido IPv6 (I)

El principal motivo de la creación de IPv6 fue la falta de direcciones IPv4 por la expansión de países altamente poblados como China e India. La principal y más conocida ventaja es el tamaño de su rango de direcciones. Como todo el mundo sabe, una dirección IPv4 consta de 32 bits, lo cual posibilita un direccionamiento de 2^32 máquinas (4.294.967.296). En cambio, una dirección IPv6 está formada por 128 bits, dando lugar a 2^128 direcciones posibles, este número es muy difícil de imaginar, o de manejar, ya que el ser humano no esta acostumbrado a números de tal magnitud. ...

November 25, 2016 · 1 min · 104 palabras · Nacho Cano

Bullet proofing Django models

Related: We recently added a bank account like functionality into one of our products. During the development we encountered some textbook problems and I thought it can be a good opportunity to go over some of the patterns we use in our Django models. This article was written in the order in which we usually address new problems: Define the business requirements. Write down a naive implementation and model definition. Challenge the solution. Refine and repeat. » Haki Benita | medium.com

November 7, 2016 · 1 min · 81 palabras · Nacho Cano

The open guide to Amazon Web Services

Related: A lot of information on AWS is already written. Most people learn AWS by reading a blog or a “getting started guide” and referring to the standard AWS references. Nonetheless, trustworthy and practical information and recommendations aren’t easy to come by. AWS’s own documentation is a great but sprawling resource few have time to read fully, and it doesn’t include anything but official facts, so omits experiences of engineers. The information in blogs or Stack Overflow is also not consistently up to date. ...

November 7, 2016 · 1 min · 128 palabras · Nacho Cano

Streisand: Una herramienta que permite evadir la censura de Gobiernos y ISP de forma fácil

Related: Cuando los Gobiernos y proveedores de Internet bloquean un portal, nos tenemos que buscar la vida cambiando los DNS, conectándonos a servidores Proxy y VPN e incluso a la red Tor. Streisand es una herramienta gratuita que nos permite automatizar el proceso de configuración de nuevos servidores VPN, Proxy y Tor para proporcionar a los usuarios una solución rápida y fácil, ideal para activistas en Internet. Ver el proyecto en github.com. ...

November 6, 2016 · 1 min · 78 palabras · Nacho Cano

Linux containers in 500 lines of code

Relatd: I’ve used Linux containers directly and indirectly for years, but I wanted to become more familiar with them. So I wrote some code. This used to be 500 lines of code, I swear, but I’ve revised it some since publishing; I’ve ended up with about 70 lines more. I wanted specifically to find a minimal set of restrictions to run untrusted code. This isn’t how you should approach containers on anything with any exposure: you should restrict everything you can. But I think it’s important to know which permissions are categorically unsafe! ...

November 1, 2016 · 1 min · 98 palabras · Nacho Cano