span.fullpost {display:none;}

lunes, 23 de marzo de 2009

Java y firma digital en 64 bits

Hoy en dia, y desde hace mucho tiempo, se hace imprescindible disponer en cualquier sistema informático de un entorno de ejecución Java, tanto más desde que Internet se popularizó y, con él, la World Wide Web, pues cada vez más páginas incluyen aplicaciones escritas en lenguaje Java, desarrollado por Sun MicroSystem, lo cual obliga no solo a disponer de un JRE apropiado, sino también un plugin que permita al navegador ejecutar dichas aplicaciones. Una utilidad algo reciente de Java es la posibilidad de implementar la firma electrónica, que nos permite realizar ciertas gestiones telemáticas con la Administración Pública o con entidades financieras.

Afortunadamente, Sun lleva tiempo dando soporte para sistemas gnu/Linux, incluyendo a los de 64 bits. Una de las mejores cualidades de Java es el hecho de ser una tecnología multiplataforma, de tal modo que cualquier aplicación escrita en dicho lenguaje se puede ejecutar en cualquier plataforma que tenga instalada una máquina virtual (JVM). Para poder disfrutar de toda la potencialidad de Java en nuestro sistema Ubuntu, es necesario seguir una serie de pasos que voy a exponer a continuación. Estas instrucciones son válidas para un sistema 8.04 (Hardy) de 64 bits, por tanto habrá que realizar ciertas modificaciones si se desea aplicar a otros sistemas distintos
  1. En primer lugar creamos el directorio java en /opt, y una vez allí descargamos desde la web de Sun el paquete binario necesario para instalar el entorno de ejecución JRE:
    $ cd /opt
    /opt/$ sudo mkdir java
    /opt/$ cd java
    /opt/java/$ wget http://www.java.net/download/jdk6/6u12/promoted/b03/binaries/jre-6u12-ea-bin-b03-linux-amd64-22_dec_2008.bin
  2. A continuación procedemos a instalarlo, tras lo cual se configura como aplicación por defecto:
    /opt/java/$ sudo bash jre-6u12-ea-bin-b03-linux-amd64-22_dec_2008.bin
    /opt/java/$ sudo update-alternatives --install "/usr/bin/java" "java" "/opt/java/jre1.6.0_12/bin/java" 1
    /opt/java/$ sudo update-alternatives --set java /opt/java/jre1.6.0_12/bin/java
  3. Creamos los enlaces necesarios al plugin de Java para que Firefox reconozca al JRE, para ello creamos el directorio ~/.mozilla/plugins, si aún no existe.
    $ mkdir ~/.mozilla/plugins
    $ sudo ln -s /opt/java/jre1.6.0_12/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

    $ sudo ln -s /opt/java/jre1.6.0_12/lib/amd64/libjavaplugin_jni.so $HOME/.mozilla/plugins/libjavaplugin_oji.so
    $ sudo ln -s /opt/java/jre1.6.0_12/lib/amd64/libjavaplugin_jni.so /usr/lib/mozilla/plugins/libjavaplugin_oji.so
    $ sudo ln -s /opt/java/jre1.6.0_12/lib/amd64/libjavaplugin_jni.so /usr/lib/firefox/plugins/libjavaplugin_oji.so

  4. Se reinicia Firefox, y entramos a continucación en esta web para comprobar que está bien instalado. En caso afirmativo nos aparecerá en el navegador algo así:


Hasta aquí los pasos necesarios para la instalación de Java. Sin embargo, es posible que hayamos obtenido el certificado digital, que nos habilita para realizar trámites burocráticos con alguna Administración Pública, y queramos utilizarlo con nuestro sistema Ubuntu. En tal caso necesitaremos obtener un par de ficheros que contienen las librerías necesarias para implementar la firma electrónica, tales ficheros suelen facilitarse en la web oficial de la Administración correspondiente, en mi caso los descargué a traves del portal de la Junta de Andalucía. Una vez hecho, les cambiamos los permisos y los copiaremos en dos directorios distintos:
$ wget --no-check-certificate https://ws022.juntadeandalucia.es/firmadigital/servicio/paginas/jss33.jar
$ wget --no-check-certificate https://ws022.juntadeandalucia.es/firmadigital/servicio/paginas/libjss3.so
$ chmod 644 jss33.jar
$ chmod 755 libjss3.so
$ sudo cp jss33.jar /opt/java/jre1.6.0_12/lib/ext/
$ sudo cp libjss3.so /opt/java/jre1.6.0_12/lib/amd64/
Reiniciamos de nuevo el navegador para que haga efecto la instalación de estas librerías, y comprobamos su funcionalidad en alguna web con soporte para firma digital. Ni que decir tengo que previamente a todo este proceso deberíamos haber importado en Firefox la clave del certificado digital, facilitado por la FNMT en un fichero con extensión .p12 (Menú Editar - Preferencias - Avanzado - Cifrado - Ver certificados - Sus certificados - Importar).

Tal como indiqué anteriormente, la URL del paquete binario y las rutas de los directorios serán distintos en caso de utilizarse Ubuntu de 32 bits, u otro sistema gnu/Linux cualquiera. Y esto es todo, espero que os funcione. ;-)

Seguir leyendo ...

domingo, 15 de marzo de 2009

Flash para Ubuntu 64, por fin

Tras unos meses de inactividad retomo este blog, esta vez con su propio dominio (gratuito eso sí, que no está el horno para bollos) y con ganas de seguir escribiendo sobre los temas que más me gustan, y que -espero- que sean de vuestro interés.

Parece que los chicos de Adobe, tras las "sugerencias" recibidas por parte de los usuarios de gnu/Linux, han decidido apostar en esta ocasión no solo por el software libre, sino también por las arquitecturas de 64 bits, liberando la última versión (aún en fase Alpha) de su plugin flash para distribuciones de 64 bits de gnu/Linux. Los usuarios de Ubuntu estamos, pues, de enhorabuena, pues esto debe interpretarse como un reconocimiento implícito de la creciente influencia que está adquiriendo el software libre para las grandes empresas de software.

Lo he instalado en mi sistema Hardy-64, y la experiencia de navegar por páginas web que usan y abusan del flash (que son cada vez más) ha sido plenamente satisfactoria. Desde que poseo un ordenador de 64 bits había tenido que recurrir a la emulación mediante nspluginwrapper para poder usar plugins de 32 bits, lo cual era un engorro que acarreaba muchos problemas, como el de los cuadros grises, del que hablé en otra entrada. Pero en esta ocasión, tras instalar la versión 10 del reproductor, la cosa ha cambiado radicalmente y, aparte no tener ningún impedimento para ver imágenes flash de cualquier tipo (banners, vídeos, juegos, etc...) la calidad de las mismas ha mejorado notablemente.

A continuación voy a explicar detalladamente el proceso que he seguido para instalar dicho plugin en el navegador Firefox 3.0.x, teniendo en cuenta que anteriormente utilizaba la versión de 32 bits mediante emulación.
  • En primer lugar desinstalar los paquetes necesarios para hacer funcionar Flash Player de 32 bits:
    $ sudo aptitude purge nspluginwrapper flashplugin-nonfree
  • Borrar los ficheros libflash-mozplugin.so antiguos:
    $ sudo rm /usr/lib/mozilla-firefox/plugins/libflash-mozplugin.so /usr/lib/mozilla/plugins/libflash-mozplugin.so
  • Descargar el plugin flash 10 de la web de Adobe y descomprimir el fichero.

  • Copiar el plugin descargado en el directorio /usr/lib/mozilla/plugins/:
    $ sudo cp libflashplayer.so /usr/lib/mozilla/plugins/
  • Crear enlaces simbólicos en los demás directorios de FF:
    $ sudo ln -s /usr/lib/mozilla/plugins/libflashplayer.so /usr/lib/mozilla-firefox/plugins/
    $ sudo ln -s /usr/lib/mozilla/plugins/libflashplayer.so /usr/lib/firefox/plugins/
    $ sudo ln -s /usr/lib/mozilla/plugins/libflashplayer.so ~/.mozilla/plugins/
  • Reiniciar Firefox y listo.
Espero que en sucesivas versiones de Flash, Adobe siga apostando por el SL y no deje tirados al cada vez mayor número de usuarios de Ubuntu y demás distros de gnu/Linux. Aunque lo suyo es que el proyecto Gnash madure lo suficiente como para poder dejar de depender del software privativo, pero me temo que esa opción aún está muy lejana.

Seguir leyendo ...