Índice
- 1 Guía configuración Lexnet Justicia con Ubuntu 18 (GNU/Linux)
- 1.1 1. PREVIO: ACTUALIZANDO EL EQUIPO
- 1.2 2. LECTOR DE TARJETAS
- 1.3 3. INSTALACIÓN DE LIBRERÍAS
- 1.4
- 1.5 4. INSTALAR JAVA
- 1.6
- 1.7 5. ENGAÑANDO AL APPLET DE FIRMA
- 1.8 6. DESCARGAR VERSIÓN DE FIREFOX COMPATIBLE CON JAVA
- 1.9
- 1.10 7. INSTALACIÓN DE CERTIFICADOS RAÍZ E INTERMEDIOS
- 1.11
- 1.12 8. AÑADIR Y CONFIGURAR EL LECTOR EN FIREFOX
- 1.13 9. ACCEDIENDO Y USANDO LEXNET
Guía configuración Lexnet Justicia con Ubuntu 18 (GNU/Linux)
NOTA 2023: Esta guía se centra en la instalación para usar la tarjeta del Colegio de Abogados con el Certificado ACA. Desde el año pasado es posible también acceder y usar Lexnet con el certificado personal de la FNMT, que NO re quiere tarjeta ni lector, y que es mucho más fácil.
Desde la instauración de Lexnet Abogacía primero, y de Lexnet Justicia después, el poder seguir ejerciendo la abogacía con software libre se ha convertido en toda una carrera de obstáculos, en la que el Ministerio poco o nada ha hecho por aquellos usuarios que defendemos la neutralidad tecnológica , y que nos negamos a tener que pagar una licencia privativa (Win o Mac) para poder ejercer nuestra profesión.
Así que provechando que hemos adquirido un terminal nuevo en el despacho, vamos a realizar la configuración para poder utilizar Lexnet Justicia con un sistema operativo Ubuntu 18.04.2.
Esta guía ha sido posible gracias al esfuerzo de muchas usuarias quienes ante el silencio del Ministerio, se han organizado colectivamente para encontrar una solución técnica, que aquí compartimos. Vaya por delante nuestro agradecimiento a todas y cada una de ellas.
Antes de nada, dejar constancia del software y hardware utilizado en esta guía:
– Procesador: Intel Core i5
– RAM: 4Gb
– Sistema Operativo: Ubuntu 18.04.2 recién instalado
– Tipo Sistema Operativo: 64 bits
– Java: jre1.8.0.221
– Lector: SCR3310
– Tarjeta: certificado emitido por ACA 2048 bits
1. PREVIO: ACTUALIZANDO EL EQUIPO
Antes de nada siempre es recomendable actualizar nuestro equipo antes de comenzar a configurar o instalar.
Para ello, abrimos un terminal (Ctrl+Alt+T) e introducimos los siguientes comandos:
sudo apt-get update (actualiza los repositorios)
sudo apt-get upgrade (instala paquetes nuevos de repositorios)
2. LECTOR DE TARJETAS
Ahora vamos a pasar a instalar el paquete psc-lite, que viene a ser el paquete necesario para que nuestro lector funcione. Para ello en la terminal:
sudo apt-get install libccid libpcsclite1 pcscd pcsc-tools
Para comprobar que el lector funciona correctamente, lo conectamos al equipo y en la terminal introducimos este comando, que lo que hace es listar las conexiones usb existentes:
lsusb
Nos debe devolver algo así:
Aquí podemos ver cómo el sistema detecta como «Device 005» nuestro lector SCR331-LC1 / SCR3310 SmartCard Reader
3. INSTALACIÓN DE LIBRERÍAS
Pasamos a instalar las librerías necesarias. Pare ello deberemos descargarlas de la página de abogacia.es. Podéis descargárlas en este enlace.
Lo que se os va a descargar es un archivo comprimido llamado «TS2048_Linux.zip». Lo que vamos a hacer es irnos a dónde se nos haya descargado (usualmente en la carpeta Descargas), damos click derecho y pulsamos en «Extraer a…». Nos va a preguntar dónde queremos que se extraiga y optamos por Escritorio.
Una vez hecho esto tendremos en el escritorio una carpeta llamada «TS2048_Linux». Ahora vamos a proceder a navegar por esa carpeta en la terminal y copiar las librerías al sitio dónde deben esta. Abrimos terminal e introducimos los siguientes comandos:
cd Escritorio/ (para irnos a la carpeta Escritorio)
cd TS2048_Linux/ (para irnos a la carpeta que hay en el escritorio)
cd Linux_\ 4.0.0.5/ (para acceder a la carpeta que hay dentro de la carpeta anterior)
ls (para «listar» o ver, lo que hay en la carpeta)
Nos aparecerá que en esa carpeta hay dos carpetas distintas «linux32» y «linux64»:
Esta distinción hace referencia a si tu sistema operativo es 32bits o 64bits. Si no tienes claro cuál es el tuyo lo puedes averiguar con este comando:
uname -m
Si nos devuelve como resultado x86_64 nuestro sistema es 64bits, si devuelve i686 nuestro sistema es 32 bits. En nuestro caso trabajamos con uno de 64bits, por lo que la carpeta a la que tenemos que acceder es la denominada «linux64». Para ello:
cd linux64/
Y una vez dentro de esa carpeta vemos qué hay dentro con el comando listar:
ls
Y nos devuelve esto:
que son las librerías que debemos copiar a nuestro sistema en el sitio correspondiente. Para ello utilizamos el comando:
sudo cp –r * /usr/lib (estamos copiando las librerias a la carpeta /usr/lib que es dónde deben estar)
NOTA: Es posible nos salga esto: cp: no se puede efectuar `stat’ sobre ‘–r’: No existe el archivo o el directorio
cp: -r not specified; omitting directory ‘pinman_64_bit’ No preocuparse.
Lo siguiente sería actualizar la caché de librerías con el comando:
sudo ldconfig
NOTA: Podría aparecer un aviso de la cabecera del fichero:sbin/ldconfig.real: /usr/lib/libbit4ipki.so.conf no es un archivo ELF –tiene los bytes mágicos equivocados en el comienzo Este mensaje es solo informativo, y no genera un problema.
4. INSTALAR JAVA
Para que Lexnet funcione necesitamos tener instalado Java.
Para ello lo primero que debemos hacer es acceder a la web de java para descargarnos la última versión. En nuestro caso será la versión jre1.8.0_221. En caso de que tu versión sea otra, en los siguientes comandos debes sustituir jre1.8.0_221 por la versión que sea.
Así que accedemos a la web de java y nos descargamos la última versión, en nuestro caso la correspondiente con Linux x64, dado que estamos trabajando con una máquina de 64 bits.
Nosotros vamos a descargar el archivo comprimido, que se denomina jre-8u221-linux-x64.tar.gz, en Descargas.
Una vez descargado el archivo lo descomprimimos, se puede hacer desde nautilus o desde la terminal, vamos a hacerlo de esta segunda manera.
Abrimos una terminal (Ctr+Alt+T) y nos colocamos en Descargas:
cd Descargas/
Y descomprimimos el archivo con el siguiente comando:
tar zxvf jre-8u221-linux-x64.tar.gz
Lo que nos creará una carpeta denominada jre1.8.0_221
Ahora copiamos esa carpeta a /usr/lib/jvm
sudo mv jre1.8.0_221 /usr/lib/jvm/
Lo siguiente seria añadir java al path en /etc/environment para lo que debemos editar este archivo. o hacemos con este comando:
sudo nano /etc/environment
En la primera línea, que comienza por PATH, debemos añadir al final la ruta de java:
:/usr/lib/jvm/jre1.8.0_221/bin"
Y en la segunda línea añade o modifica para que te quede así:
JAVA_HOME=/usr/lib/jvm/jre1.8.0_221
Guardamos (Ctr+O) y salimos (Ctr+X)
Añadimos la nueva alternativa java al sistema
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jre1.8.0_221/bin/java" 0
Definir como alternativa por defecto
sudo update-alternatives --set java /usr/lib/jvm/jre1.8.0_221/bin/java
Verificar que la versión de java es la correcta
java -version
Que nos devuelve:
java version "1.8.0_221" Java(TM) SE Runtime Environment (build 1.8.0_221-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
Y solo faltaría añadir el plugin java a firefox
sudo ln -s /usr/lib/jvm/jre1.8.0_221/lib/amd64/libnpjp2.so /usr/lib/mozilla/plugins/
5. ENGAÑANDO AL APPLET DE FIRMA
Uno de los problemas que impedía la firma es que el applet de firma de Lexnet, llamado WebSigner, la hace siempre, si o si, con la librería del DNIe, luego hay que «trucar» esa libreria para que cuando la llame, cargue la de la tarjeta ACA. Podeis enlazar una libreria a otra, o hacer una copia. (OJO ESTO HACE QUE EL DNIe NO FUNCIONE EN VUESTROS EQUIPOS (por si usais los dos)
La libreria de ACA se llama /usr/lib/libbit4ipki.so
La libreria de DNIe se llama /usr/lib/libpkcs11-fnmtdnie.so
Metemos el siguiente comando en la terminal:
sudo cp /usr/lib/libbit4ipki.so /usr/lib/libpkcs11-fnmtdnie.so
NOTA: Si ya usais el DNI electronico, haced antes un backup de la libreria y cambiarla según querais usar uno u otro.
sudo mv /usr/lib/libpkcs11-fnmtdnie.so /usr/lib/libpkcs11-fnmtdnie.bak
Con esto funciona, aunque al cargar tantas veces el dispositivo de seguridad con varios nombres, pedirá la clave del certificado por duplicado siempre…
6. DESCARGAR VERSIÓN DE FIREFOX COMPATIBLE CON JAVA
Lexnet accediendo por navegador, esta basado en un lenguaje llamado Java, y muchos navegadores, entre ellos Firefox, decidieron a partir de marzo de 2017, que los navegadores ya no serían compatibles con Java. Por tanto si accedemos a Lexnet con un navegador actualizado, nos saldrá un aviso que diga que no podremos realizar operaciones de firma, y por tanto no podremos ni descargar ni mandar escritos.
Para solucionarlo nos vamos a bajar la ultima versión de firefox que soporte java, versión que solo utilizaremos para usar Lexnet.
Nos vamos a la web donde firefox aloja sus versiones antiguas: https://ftp.mozilla.org/pub/firefox/releases/ y buscamos y pinchamos en la versión 51.0b9. Valdría cualquier versión de Firefox compatible con JAVA (versión menor de 51, o ESR menor o igual a 52), pero ponemos esta ya que nos funciona bien.
Ahora elegimos entre x86_64 (64bits) o i686 (32 bits). En nuestro caso, como vimos antes, tenemos 64 bits, así que elegimos x86_64, tras lo que elegimos el idioma (es-ES), y ya nos descargará el archivo firefox-51.0b9.tar.bz2
Nos vamos a dónde nos haya descargado el archivo (normalmente en descargas) y lo descomprimimos con botón derecho «Extraer aquí»
Para poder iniciar esta versión antigua de firefox, primero cerraos el navegador de Firefox «actualizado» y una vez cerrado nos vamos a la carpeta donde se nos ha descomprimido la versión antigua, firefox-51.0b9, doble click, y una vez dentro hacemos doble click en el ejecutable firefox.
Con ello se nos abrirá el firefox, pero en su versión 51.0b9. Una vez abierta nos preguntará si queremos actualizar, decimos que no. Es importante irse a las Preferencias y en Avanzado, Actualizar, marcar «Comprobar actualizaciones, pero dejarme elegir si las quiero instalar». Con esto queremos evitar que se nos actualice automáticamente. Si esto ocurre habŕa que borrar y volver a descomprimir la versión antigua.
7. INSTALACIÓN DE CERTIFICADOS RAÍZ E INTERMEDIOS
Ahora vamos a instalar los certificados raíz e intermedios en nuestro navegador, para poder operar con nuestra tarjeta en el navegador.
Para ello, con nuestro firefox version antigiua, accedemos a la página de abogacía y nos descargamos «Todos los certificados ACA«. Puedes descargarte todos los certificados en este enlace.
Una vez pinchado el enlace nos descargará en nuestro equipo un archivo .zip (comprimido) con todos los certificados. Nos vamos a la carpeta dónde se ha descargado (normalmente Descargas) y con click derecho pinchamos en «Extraer aquí». Ahora tendremos una carpeta denominada «ACA_certs_todos».
Para añadir los certificados a nuestro navegador abrimos el navegador firefox, pulsamos en la esquina superior derecha, en el recuadro con tres rayas horizontales y pinchamos en Preferencias. Buscamos el apartado de «Avanzados» y pinchamos en «Certificados» y en «Ver Certificados». Una vez ahí, elegimos «Autoridades» y pinchamos en Importar:
Se nos abrirá una ventana del explorador de archivos, buscamos la carpeta dónde están los certificados y los vamos añadiendo, indicando que el certificado servirá para identificar sitios web. Vamos añadiendo, uno por uno, los 11 certificados.
Por último vamos a acceder a esta web: https://www.sede.fnmt.gob.es/certificados/administracion-publica/tipos-certificados-ap y pinchamos en los dos certificados que aparecen AC Raíz FNMT-RCM y AC Administración Pública. y los añadimos.
8. AÑADIR Y CONFIGURAR EL LECTOR EN FIREFOX
Una vez añadidos los certificados, vamos a indicarle a Firefox dónde tiene que buscar el lector y que libreria debe asociar. Para ello, en las Preferencias de Firefox, en el apartado de «Avanzadas», en la pestaña de «Certificados» justo al lado de «Ver Certificados» encontramos la «Dispositivos de Seguridad». Pinchamos ahí. Se nos abrirá una ventana llamada «Administración de Dispositivos». Pues bien, pinchamos en la derecha dónde pone «Cargar» y se abrirá otra ventana que nos pedirá 2 datos: nombre del módulo y nombre del archivo del módulo.
En nombre del modulo hay que poner: bit4id pkcs#11 (IMPORTANTE escribirlo exactamente igual, ya que de poner otro nombre no funcionará).
En nombre del archivo del módulo hay que darle la ruta de la librería de lector que nos copiamos en el paso 3, que sería: /usr/lib/libbit4ipki.so
Podemos probar si Firefox nos lee y reconoce la tarjeta y el lector introduciendo la tarjeta en el lector con la ventana de «Dispositivos de seguridad» abierta, y veremos cómo la lees, pudiendo incluso iniciar sesión, para lo que nos pedirá la contraseña de nuestra tarjeta.
9. ACCEDIENDO Y USANDO LEXNET
Ya tenemos todo lo necesario para poder trabajar con Lexnet. La dinámica será siempre la misma. Para navegar y la actividad normal utilizaremos la versión actualizada de firefox o nuestro navegador preferido. Ahora bien, cuando queramos usar Lexnet deberemos cerrar el navegador de Firefox y asegurarnos que esta completamente cerrado. Una vez hecho esto nos vamos a la carpeta donde tenemos la versión de firefox antigua, abrimos y damos doble click a «firefox». Esto nos abrirá la versión antigua, y compatible con java, de firefox. Con esta versión abierta vamos a https://lexnet.justicia.es/ nos pedirá la contraseña de nuestra tarjeta y ya podemos presentar escritos.
NOTA: Si al acceder a Lexnet con la versión de firefox antigua vemos un aviso que nos dice que la versión del navegador no es compatible con java y no se podrá firmar, eso significa que se nos ha actualizado sola la versión de firefox, por lo que habría que borrar la carpeta de firefox y repetir el paso 8.
Cualquier duda, corrección o aportación no dudes en escribirnos.
hola, me sirvió de ayuda tu blog para instalar la primera vez lexnet en Linux_Así que espero poder devolverte el favor, porque estoy a nada de que lexnet escritorio para mac, funcione en linux( utilizo Manjaro). Es relativamente fácil, se trata simplemente de descomprimir el paquete .pkg, e instalarlo en un mac, la sorpresa viene, que es solo una aplicación de java mas, y se puede ejecutar en linux-
Subiré tutorial y mandare el enlace cuando funcione sin problemas+
Gracias
Hola Juan!!
Nos alegramos que te haya servido. No dudes en mandarnos el enlace cuando lo tengas y lo compartimos. Sería maravilloso poder correr Lexnet escritorio en Linux!!
Este viernes 6 de mayo se actualiza a Lexnet 5.1 y se firmará con Autofirma, así que habrá que actuacizar esta guia.
Uf, cien pasos en cada uno de los cuales puede salir algo mal. Parece algo solo para gente con mucha práctica en informática.
Espero que saquen un paquete de Lexnet escritorio más fácil de instalar.
Buenas Manuel, gracias por la información.
De todas formas he instalado el deb que indicas y apuntado el lector a libbit4xpki.so así como instalar el nuevo módulo y sigo obteniendo el mismo error justo cuando va a firmar una notificación recibida.
La única diferencia al instalar los dos módulos es que me pide la clave de la tarjeta dos veces.
Agradezco cualquier sugerencia.
Saludos.
En ~/.WebSigner hay un log. En el mío ponía que no encontraba el «pkcs#11 bit4id». A lo mejor puede dar alguna pista.
Buenas.
Gracias por el tutorial, queda todo muy claro.
Sigo todos los pasos y entro a la web de lexnet, me detecta java y el lector correctamente. De hecho meto la clave de la tarjeta para poder acceder a lexnet.
Ahora bien, cuando quiero descargar un escrito, se me queda atascado en el proceso de la firma y me sale el siguiente error:
[EOVM 001] Error, no se ha podido detectar un certificado en soporte físico, por favor introduzca un certificado en tarjeta para continuar.
Debajo de ese texto pone: Ha surgido un error en el proceso de selección de certificado firmante para el usuario con dni XXXXXXXXXX. Vuelva a intentarlo, si persiste el error remita incidencia.
Y no hay forma.
He vuelto a limpiar todo, comenzar el proceso de instalación de java, certificados, firefox, y sale lo mismo.
Agradecería alguna sugerencia.
Saludos.
Yo he conseguido por fin que me funcionara cargando dos módulos en Firefox: /usr/lib/libbit4xpki.so como «bit4id pkcs#11» y /usr/lib/libpkcs11-fnmtdnie.so como «pkcs#11 bit4id». Si no estaban los dos no funcionaba. El libbit4xpki.so lo instala un .deb que se descarga desde la página de Bit4id (sale si buscas en Google bit4id middleware).