Alex Sobrino

Blog personal...

La España Fantasma

jander | 23 Noviembre, 2010 11:51 | del.icio.us meneame.net technorati.com

"La España Fantasma" es el libro de fotografía ideado por kurioso. Se trata básicamente de un proyecto solidario ya que todos los beneficios irán a parar a un proyecto de Save the Children.

El libro es un conjunto de fotografías tomadas por toda España durante la final del mundial de fútbol de Sudáfrica 2010. El libro tiene un coste de 18€, 11,90 de gastos de impresión y encuadernación, y 6,1€ de beneficio. No me extenderé demasiado, ya que cualquier cosa que pueda comentar, está ya explicada en la entrada original.

La España Fantasma

Copio y pego la descripción del libro:

¿Qué aspecto tenían las calles de España durante la final del mundial de fútbol de Sudáfrica? Mientras se disputaba aquel histórico partido, más de 300 fotógrafos convocados a través de Internet salieron a la calle para fotografiar el silencio, los vacíos y abandonos que 17 millones de telespectadores habían fabricado con su ausencia. Ciudades fantasma a lo largo de toda la geografía española captadas a través de las cámaras de cientos de voluntarios unidos por un solo objetivo solidario.

El proyecto fue un éxito y más de 1100 fotografías ilustraron la otra cara de la gran final. Un país desconocido y desocupado, casi hueco. Calles y plazas desiertas. Parques sin niños. Urgencias sin esperas. Este libro es un compendio de las mejores fotografías del proyecto, comentadas por sus autores y por grandes artistas, humoristas, periodistas o escritores. Todos los beneficios de su venta irán destinados al proyecto solidario “El valor de la infancia” que la ONG «Save The Children» está desarrollando en Ciudad del Cabo. Sudáfrica.

La compra del libro se puede realizar aquí.

Me he permitido la libertad de modificar la plantilla del blog de BalearWeb para añadir el banner publicitario. Espero que no cause demasiados problemas, aunque es por una buena causa :-) Si no hay ningún problema con su inclusión y algún blog más de BalearWeb está interesado, puedo indicarle la cutre-ñapa que he hecho para añadirlo.

Nota: Sí, hay un concurso de un smartphone por hacer esto. Pero desde aquí aclaro que no estoy interesado en él. He hecho esto simplemente porque me apetece, porque me parece una buena causa y porque tengo amigos y conocidos que han participado con sus fotos. Si me tocase, lo dono al propio autor...

Manipulación de PDF's

jander | 20 Julio, 2010 11:36 | del.icio.us meneame.net technorati.com

Tengo un PDF enorme del PFC y necesitaba enviar por correo a mis directores tan sólo una parte para que la evaluasen. El resto del documento está aún por corregir, modificar, añadir, ... así que no hacía falta enviarlo para que lo evaluasen, puesto que ya sabía que hay trabajo por hacer.

Estuve buscando la solución a cómo generar un nuevo PDF sólo con ciertas páginas de otro PDF. Al final, di con PDF Toolkit que ofrece eso y mucho más. En Ubuntu es fácil instalarlo, puesto que está en los repositorios de la distribución.

PDF Toolkit permite muchas cosas. Quizás las más destacables son:

  • Juntar PDF's:
    # pdftk fichero1.pdf fichero2.pdf fichero3.pdf output fichero123.pdf
    Esto nos generará un fichero fichero123.pdf que contiene los 3 ficheros PDF.
  • Tomar sólo partes de un PDF:
    # pdftk fichero.pdf cat 1-10 15-70 output ficheroFINAL.pdf
    Esto nos generará un fichero ficheroFINAL.pdf con las páginas 1-10 y 15-70 del documento fichero.pdf.
  • Añadir adjuntos: permite añadir adjuntos a ciertas páginas. Sinceramente, no lo he probado.
  • Rellenar formularios: permite rellenar de forma automática formularios de un PDF. Hay que generar un fichero FDF con el nombre del formulario, de los campos y los valores a insertar. Es una opción que tampoco he probado, pero que puede ser interesante...

Generar certificados SSL auto-firmados

jander | 28 Mayo, 2010 10:14 | del.icio.us meneame.net technorati.com

Muchas veces es necesario probar una configuración de un virtual host con SSL. En algunos, el proceso de solicitud del certificado SSL tarda más de lo previsto y necesitamos ir adelantando trabajo. Muchas veces, directamente no nos es necesario un certificado legítimo y nos basta con un certificado generado por nosotros mismos. Este último caso me lo encuentro a menudo y siempre tengo que hacer memoria de cómo se realizaba, así que he decidido escribirlo aquí para tenerlo siempre a mano.

Generar clave privada

Utilizando openssl creamos nuestra clave privada RSA. Es una clave RSA de 1024 bits encriptada utilizando el algoritmo 3DES (o triple DES). Se nos solicitará una contraseña asociada a la clave.

# openssl genrsa -des3 -out server.key 1024
Generating RSA private key, 1024 bit long modulus
...............................++++++
...................................++++++
e is 65537 (0x10001)
Enter pass phrase for server.key:
Verifying - Enter pass phrase for server.key:

Generar el CSR

El siguiente paso es generar el CSR, Certificate Signing Request o petición de firma de certificado. El CSR es lo que normalmente se le envía a las autoridades certificadoras (CA), pero en este caso, al ser simplemente para pruebas, lo auto-firmaremos. De momento, para generar el CSR para un dominio ficticio pruebas.jander.com:

# openssl req -new -key server.key -out server.csr
Enter pass phrase for server.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:ES
State or Province Name (full name) [Some-State]:Illes Balears
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Universitat de les Illes Balears
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:pruebas.jander.com
Email Address []:pruebas@jander.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

Eliminar la contraseña del fichero .key

Si se utiliza el fichero de clave privada server.key generado en el primer paso, cada vez que arranquemos el Apache éste nos solicitará que introduzcamos la contraseña asociada al certificado. Así es que, al tratarse de pruebas, le quitaremos la contraseña:

# cp server.key server.key.org
# openssl rsa -in server.key.org -out server.key  
Enter pass phrase for server.key.org:
writing RSA key

Generar el certificado auto-firmado

Este es el paso principal, en donde hacemos de CA propia y nos firmamos nosotros mismos la solicitud del certificado. Suponiendo un tiempo de validez del certificado de 1 año (365 días):

# openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Signature ok
subject=/C=ES/ST=Illes Balears/O=Universitat de les Illes Balears/CN=pruebas.jander.com/emailAddress=pruebas@jander.com
Getting Private key

Fin

Ya sólo queda poner los ficheros de certificados en los directorios correspondientes del Apache y configurar los Virtual Hosts de forma que estén asociados a esos ficheros.

Dropbox

jander | 11 Mayo, 2010 14:10 | del.icio.us meneame.net technorati.com

Decir exáctamente qué es Dropbox no es sencillo... Básicamente es un disco duro virtual, en el cual poder almacenar y recuperar información a través de Internet. La gracia está en que esta información está totalmente sincronizada con un directorio en el ordenador (o móvil) de cada uno.

Por ejemplo, yo le puedo decir a Dropbox que trabaje con /home/jander/documentos/ (o C:/Documentos Alex). Desde el punto de vista del usuario, es un directorio más, donde se almacenan ficheros u otros directorios, donde se puede trabajar normalmente. La gracia está en que Dropbox monitoriza este directorio y si se producen cambios, los sincroniza con la copia que está en sus servidores. De esta forma, podemos tener un directorio sincronizado entre varios ordenadores de forma sencilla.

Además, tiene disponible un par de directorios especiales. Uno de ellos, al ponerle fotos, genera una galería online con ellas. El otro, es simplemente un directorio público a través del cual poder compartir tus ficheros con cualquier persona.

Para la documentación del proyecto final de carrera me ha venido de perlas! Básicamente por eso lo comparto por aquí, porque quizás alguno no lo conocía y le pueda venir fenomenal.

Si alguno se decide a registrarse, que lo haga a través del siguiente enlace:
https://www.dropbox.com/referrals/NTYxMDAyNTY5
así ambos tenemos algo más de espacio disponible en el disco virtual.

Fail2ban

jander | 15 Febrero, 2010 09:50 | del.icio.us meneame.net technorati.com

fail2ban es una herramienta muy útil que básicamente analiza ficheros de log y bloquea el acceso a una IP que realiza varios intentos fallidos de contraseña.

Por ejemplo, si tenemos un servidor con SSH en marcha, y recibimos muchos intentos por parte de una IP, fail2ban bloqueará esa IP durante unos minutos. El fichero de log que monitoriza, el número de intentos fallidos permitidos y la duración del ban es totalmente configurable.

Descarga e instalación

En la web oficial, apartado Downloads, se encuentra el código fuente para compilar. Además, hay paquetes precompilados para la mayoría de las distribuciones.

De hecho en Debian/Ubuntu está incluido en los repositorios oficiales. Para instalarlo bastará con realizar:

aptitude install fail2ban

Siempre se puede optar por instalarlo a partir del fichero .tar.bz2 con los fuentes. Para ello:

tar xvfj fail2ban-X.X.X.tar.bz2
cd fail2ban-X.X.X
python setup.py install

Con ello, nos quedará todo instalado en /usr/share/fail2ban y con los ejecutables en /usr/bin.

Habrá que añadir la ejecución de fail2ban al inicio del sistema. Para ello, nos vienen una serie de scripts por defecto que podemos utilizar. Se encuentran en el directorio de instalación:

cd fail2ban-X.X.X/files
ls

Hay para distintas distribuciones y tan solo debemos copiar la que más nos convenga. En mi caso, una SuSE SLES 9:

cp suse-initd /etc/init.d/fail2ban

Darle los permisos adecuados y añadirlo al arranque:

chmod 755 /etc/init.d/fail2ban
chkconfig fail2ban on

Configuración

La configuración de fail2ban se encuentra dentro del directorio /etc/fail2ban/. Dentro se encuentran los dos ficheros básicos de configuración.

El primero de ellos es /etc/fail2ban/fail2ban.conf en el cual indicaremos parámetros globales de la configuración, como el fichero de log de fail2ban. Por defecto, se trata del /var/log/fail2ban.log.

El segundo fichero de configuración es /etc/fail2ban/jail.conf. En él se definen las reglas de funcionamiento de fail2ban. Se configuran parámetros globales que quieras que sean comunes. Además, hay un áera de configuración para cada uno de los servicios y logs que se quiera monitorizar con fail2ban.

Para activar uno de ellos, debemos poner el enable = true, y configurar el resto de opciones según nuestros requisitos. Siguiendo con el ejemplo de la SuSE SLES 9 anterior... para el SSH tenemos:

[ssh-iptables]

enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
           sendmail-whois[name=SSH, dest=bofh@direcciondedestino.com,
           sender=fail2ban@direcciondeorigen.com]
           logpath  = /var/log/ssh-auth
           maxretry = 5

En él vemos que el fichero de autenticación del SSH es

/var/log/ssh-auth
, que queremos permitir un máximo de 5 intentos fallidos y que nos envie un correo electrónico cada vez que realice una operación. La duración del ban viene determinada por el parámetro global bantime = 600.

Si lo hemos hecho bien, podemos hacer una prueba nosotros mismos, fallando a propósito el login. Deberíamos recibir un correo electrónico similar a este:

Hi,

The IP XXX.XXX.XXX.XXX has just been banned by Fail2Ban after
6 attempts against SSH.


Here are more information about XXX.XXX.XXX.XXX:

blablabla

Regards,

Fail2Ban

Además, podremos ver la entrada correspondiente en el fichero de log, /var/log/fail2ban.log. También veremos una entrada de iptables denegando las conexiones desde la IP XXX.XXX.XXX.XXX. Para comprobarlo, podemos realizar:

iptables -L

Una cosilla más por hacer, es integrar el fichero de log de fail2ban en el logrotate:

/var/log/fail2ban.log {
    weekly
    rotate 7
    missingok
    compress
    postrotate
      /usr/local/bin/fail2ban-client reload 1>/dev/null || true
    endscript
}

Como nota, añadir que existe una alternativa denominada DenyHosts que realiza algo parecido modificando el /etc/hosts.deny. Pero eso ya es para otro día...

La importancia de conocer algo

jander | 25 Enero, 2010 20:11 | del.icio.us meneame.net technorati.com

Durante una semana y media, más o menos, he conducido una furgoneta. Ha sido la típica Citroen Berlingo 2.0 HDi con matrícula BDZ, un par mallorquín de años encima y unos 250.000 km. Son los trastos más simples, pero a la vez, mejor pensados que hay. Realmente, vienen con una mierda de equipamiento, no tiene ninguna comodidad, no tiene ningún embellecedor (ni mucho menos, toda la chapa está "a pelo"!), el motor no saca más de 90 CV, ni los asientos te recogen bien, ... Aún así, ir en una furgoneta mola! No se como explicarlo, pero es bastante divertida. Supongo que es básicamente debido a su poco peso vacía, la configuración de suspensión y a un par de motor decente, hacen que cualquier giro o acelerón se note más. Es simplemente eso, una sensación, pero mola.

Aunque lo parezca, el post no va sobre mi experiencia de conducción con una furgoneta. El hecho es que esta furgo, tras muchos palos, viajes, cajas, y demás malos tratos que habrá recibido durante 250.000 km tenía el cuenta revoluciones roto. No es ningún trauma, ya que el motor hace una escandalera a cafetera industrial, el habitáculo no está insonorizado que digamos, y todo ello hace que sea muy fácil e intuitivo saber sobre qué régimen aproximado se está llevando al motor.

Hasta aquí todo fantástico. ¿Qué pasa cuando realizas viajes cortitos, de un par de kilómetros, y la aguja del depósito apenas baja de 1/4? Pues piensas en "qué poco consume esta furgo, fijo que estoy haciendo un 4l de media a lo Javier Costas". Imaginaos la escena de andar con la furgoneta llena de cajas con objetos personales de valor, tanto monetario como sentimental, por el centro de una calle de un único carril. Para rematar la cosa, una calle con un tráfico denso, situada en uno de los barrios más inseguros de Palma. Estando parado completamente, empezó a venir unas vibraciones intensas, que daban miedo, y que provenían del motor. De repente, el silencio. El motor se apaga.

Pues sí, el depósito estaba vacío. Me había quedado parado en medio de una calle transitadísima, con una furgoneta hasta arriba de cajas y a 1 ó 2 km de la gasolinera más próxima. No podía dejar la furgoneta ahí parada, por dos motivos. El primero, es la que iba a armar en cuanto a tráfico (ya estaba bastante mal la cosa sin que yo molestase...). Y el segundo, es que seguro que al volver no me encontraría con ninguna caja.

Por suerte pude arrancarla de nuevo, y llegar, aún no se como, hasta la gasolinera más próxima y llenar el depósito. Eso sí, el camino se me hizo una eternidad. Se me apagaba el motor prácticamente cada vez que iba a ralentí, así que tenía que mantenerlo mínimamente revolucionado. Y ahora lo pienso, y menuda gilipollez, así estaba consumiendo aún más de las pocas gotas que debían quedar! Creo que, a menos que alguien haya pasado por algo así, no se puede imaginar cómo vibraba todo. Al arrancar, tras cada mini parón provocado por el tráfico, aquello pegaba unos bandazos que prácticamente desplazaban la furgoneta unos cuantos pasos.

En fin, al final se solucionó y saqué algo en claro. Y es que si no conoces bien algo, no te fies... Porque llego a saber que la aguja del depósito se atasca cuando llega a 1/4 y hubiese ido a visitar la gasolinera antes ¬¬

de móviles con Android

jander | 09 Octubre, 2009 09:00 | del.icio.us meneame.net technorati.com

Hace tiempo que voy detrás de algún teléfono con el sistema operativo Android, para sustituir a mi actual móvil (un Sony-Ericsson bastante viejo), mi agenda (de papel de toda la vida) y mi iPod Touch. El motivo por el cual no me he hecho con uno de estos terminales es sencillo, el timo de las compañías.

Y es que las 3 grandes ofrecen sus terminales Android, pero ninguna ofrece tarifas que se ajusten a mis necesidades. MoviStar tiene unas tarifas desorbitadas, de otro planeta, incluso su tarifa de datos (a pesar de ser plana) es un poco timadura de pelo. Que alguien me explique porqué la tarifa de datos de 15€ / mes del iPhone tiene mejores condiciones que la de 15€ / mes de cualquier otro terminal. Además, ofrecen el móvil más antiguo de todos, el primer HTC con Android (G1 o Dream). Vodafone tiene la mejor tarifa plana de datos, un móvil Android decente (HTC Magic) pero sus tarifas a mí no me sirven, así de sencillo... Después está Orange con su HTC Hero, de momento el más completo en cuanto a hardware, pero de nuevo, con unas tarifas (tanto de llamadas como de datos) que no son las adecuadas.

¿Y cuales son unas tarifas de llamadas adecuadas? Pues las que tengo actualmente con Yoigo o las de Simyo, tarifas reducidas llames a donde llames, sea de la operadora que sea, y a la hora que te de la gana llamar. Ei! Pues mira que bien, Yoigo a través de sus tiendas SMOL ofrece el Samsung Galaxy otro terminal con Android, con unas características hardware muy similares al HTC Magic de Vodafone.

Cojonudo entonces!! Vayamos a ver ese móvil!! Y entonces es cuando te cae un tropezón enorme en la cara. La tarifa de datos de Yoigo, Internet para llevar, son 25€ / mes sin impuestos (29€ en total). ¿Esto que es? Fácil, otro robo! Así que una compañía que ofrece precios competitivos por un lado, te la mete doblada por el otro, genial!

Y así es como se llega a la conclusión de que la mejor forma de tener una tarifa de datos decente con unas tarifas de llamadas decentes es a través de Simyo. Pero claro, debido a la política de Simyo, hace falta un terminal libre. Bien, mirando el mercado actual, básicamente tenemos 3 posibilidades:

  • HTC Hero libre - 459€
  • Samsung Galaxy libre - 479€
  • eBay y comprar algún móvil seminuevo (por la friolera de unos 200€)

Cosas que tampoco veo viables. Se que soy de los que quizás pidan mucho (o quizás es que el resto pide poco) pero ¡JODER! ¿tan difícil es? En fin, que la última opción que tengo es participar en el sorteo de un HTC Magic, cruzar los dedos para que me toque, liberarlo y largarme a Simyo. La otra opción es jorobarme y esperar. Opción más que probable y tremendamente asumida.

Curso de iluminación en fotografía #tallerfoto 2009

jander | 17 Agosto, 2009 07:38 | del.icio.us meneame.net technorati.com

Ayer, Domingo 16 de Agosto, tuve el placer de asistir a un curso de fotografía (iluminación en este caso) impartido por Javier Martín. Con el permiso de Suki_, le robo la imagen para encabezar el post:

Asistentes al taller de iluminación

El temario del curso fué el siguiente:

  • Introducción a la luz como elemento fundamental
  • Luz. Definición y aplicación real
  • El volumen de los objetos - Logro de su representación visual en fotografía
  • Características: Calidad, tamaño, dirección
  • Luz continua y de destello
  • Flash en profundidad
  • Luz continua en profundidad
  • Luz principal
  • El retrato. Conceptos básicos para hacer la vida más fácil
  • El triángulo clave
  • El relleno. Rellenar con luz suave. Superficies de relleno - reflectantes / suavizadoras / luz propia
  • Luz de contra
  • Luz estrecha y luz ancha
  • Gafas
  • Superficies. Reflejos
  • La familia de ángulos
  • Luz polarizada. Iluminar con luz polarizada
  • Metales, piedras preciosas, reproducción de arte, cristal. Fotografía de vitrinas / escaparates
  • Menos es más - Secretos de iluminar con una sola fuente de luz
  • Luz mezclada

El curso de fotografía ha sido posible gracias a la coordinación que ha llevado David, al aporte de material de estudio fotográfico por parte de Foto Ruano, y al patrocinio de Azafatas A Punto. Además de parte del patrocinio, Azafatas A Punto puso una modelo a nuestra disposición.

La combinación fué realmente genial. Y ha sido todo un gustazo contar con una clase fotográfica de un profesional, poder ver material de estudio -taaaaaaaan caro-, ver cómo funciona, etc. E incluso, lo mejor de todo, es que pudimos probarlo con la modelo. Al principio, me imagino que por el hecho de tener 20 cámaras delante, focos, flashes, ... se le notaba un poco intimidada. Pero gracias a la profesionalidad de Javier y de Philippe la modelo se fué soltando poco a poco cada vez más. Y fué de agradecer que en ningún momento se quejase, a pesar de tener a taaaanta gente que le pidiese mil cosas.

Creo que, como el resto de los que estábamos allí, la chica de A Punto se lo pasó genial :-D Al final, para que os hagais una idea, acabó descalza en el jardín de la finca Son Alegre, saltando con un paraguas, mientras el resto aprovechábamos para hacerle fotos. Sencillamente, un momento genial, que refleja lo divertido que fué el resto del día.

En fin, una oportunidad BRUTAL para conocer a gente nueva, aprender de un gran profesor y de ver/probar cosas que muy probablemente, no pueda volver a hacer. De nuevo, gracias a David Martín - Suki_, Javier Martín, Foto Ruano y Azafatas A Punto. ¡Espero repetir!

A medida que la gente suba las fotos, iré añadiendo enlaces a los diferentes Flickr de los asistentes... stay tunned!

¡ ACTUALIZACIÓN ! Empieza el catálogo de fotos y posts en los blogs:

Rsync entre directorios locales

jander | 16 Junio, 2009 07:00 | del.icio.us meneame.net technorati.com

A modo de chuletario, para sincronizar dos directorios a través de rsync (siempre tengo que estar leyendo el man...) basta con que hagamos:

rsync --archive --update --quiet /home /backup

Ok, haciendolo un poco más manejable y mantenible (ole! bonitos palabros) podemos hacernos un chorra-script tal que así:

#!/bin/bash

# Directorio de origen
BACKDIR="/home"
# Directorio de destino
DESTDIR="/backup"

# Opciones para rsync
# 'man rsync' para mas detalles
OPTS="--archive --update --quiet"

# Comprobamos que existen los directorios de
# origen y destino
if [ ! -d $BACKDIR ]
then
  echo "ERROR: $BACKDIR no existe."
  exit 1
fi
if [ ! -d $DESTDIR ]
then
  echo "ERROR: $DESTDIR no existe."
  exit 1
fi

rsync $OPTS $BACKDIR $DESTDIR

exit 0

Habría que mirar si interesa añadir la opción de --delete y bien si deseamos almacenar logs de los resultados. Así, quitaríamos --quiet y haríamos un rsync $OPTS $BACKDIR $DESTDIR > log_salida 2> log_error. Lo típico...

Ya sólo falta añadirlo al cron.

# crontab -e

Y añadir:

00 XX * * * /path/al/script/rsync.sh

Me da auto-vergüenza publicar estas cosas, pero como es algo que SIEMPRE estoy revisando el man rsync... Y seguro que a más de uno le viene bien XD

Lector de RSS (de la casa :))

jander | 06 Marzo, 2007 10:12

Lector de RSS

Para la asignatura de Tecnologías de la Información decidimos hacer un Lector de RSS donde cualquier usuario pudiera darse de alta, añadir sus RSS favoritos y leer las noticias de los mismos cuando les diera la gana. Todo eso de forma segura y totalmente personalizada. Así que si alguien quiere probarlo... adelante :) Evidentemente no está a la altura de Bloglines o de Google Reader pero es simplemente por una cuestión de tiempo :-P

Hay cosas que no terminan de ir como $DEITY manda:

  • La validación XHTML Strict aún no es total
  • La navegación entre los distintos RSS puede resultar muy liosa al principio
  • Clama al cielo la incorporación de algún tipo de tecnología a lo Ajax
 
Accessible and Valid XHTML 1.0 Strict and CSS
Powered by LifeType - Design by BalearWeb