AutoFirma y Fedora

Para realizar unos trámites legales necesité acceder a la administración pública con mi certificado de "ciudadano" y tener instalado AutoFirma, una maravillosa APP en java.

Tuve varios problemas:

1. Java

Autofirma 1.6.5 requiere java y libnss. Tras instalar openjdk y java directamente de Oracle, seguía sin funcionar. Al ejecutar autofirma desde consola salta una excepción de noseque de sql blablablba

Tras buscar por internet, resulta que autofirma tiene hardcodeadas las rutas donde busca las librerías y en fedora (34 en mi caso) falla.

La solución fué hacer un link de /usr/lib64 a /opt/firefox- (sisi con el guión al final)

ln -s /usr/lib64 /opt/firefox-

Supongo que esto hace que cuando arranca autofirma busca en /opt/firefox-xxx.xxx (donde xxx.xxx es la versión) y de alguna manera puede leer las librerías de /usr/lib64 y las encuentra correctamente.

https://github.com/ctt-gob-es/clienteafirma/issues/27

2. Certificado de autofirma ROOT

No confirmado pero parece que al instalar autofirma (rpm -i autofirma-xxxx.rpm) no me instaló certificado root.

Tuve que buscar-lo e instalarlo manualmente en el navegador como una autoridad de certificación

3. Problema del navegador

Cuando desde Firefox que viene con la distribución daba clic en la web para firmar, no aparecia el cuadro de diálogo de que las url afirma:// debía lanzarlas contra la aplicación de autofirma.

Probé de modificar la mimelist y los .desktop pero no acabó de resultar.

Una solución fue bajarme Firefox directamente de internet (formato tgz) descomprimir y usar ese firefox temporalmente.

moví el perfil de firefox ($home/.mozilla/firefox) para que al ejecutar el "nuevo" firefox me crease uno limpio, donde volví a importar los certificados.

Con el "nuevo" firefox al hacer click a firmar si me solicitaba y recomendaba utilizar "autofirma" como la aplicación a utilizar

¡Bien!

4. Problema CORS entre Navegador y autofirma

Cuando tenia el java (openjdk) y los problemas de las rutas solucionado, el "nuevo" firefox, podía arrancar sin problemas autofirma desde consola y firmar cosas, pero cuando lo hacia desde la web, al cabo de un rato salia un error que decia que "No se puede conectar con autofirma".

Repitiendo el proceso y mirando la consola del navegador (F12 para arrancar el inspector de Firefox) allí aparecían un montón de errores relacionados con CORS.

Traté de instalar plugins para permitir CORS, etc. etc. pero no resultó

Probé de reinstalar certificados personales, de autofirma, pero no resulto

Hiciera lo que hiciera, el navegador no podía abrir autofirma

Probé utilizar chromium, pero tampoco

Probé de utilitzar firefox con una versión vieja (la 60.0esr) pero nada, en ese navegador ni la web se veía bien

Desactivé SELinux por si las moscas

Al final la solución fue reinstalar autofirma. Creo que durante la primera instalación, como tenia java instalado pero sin las librerías linkadas a /opt/firefox-, se instalava la aplicación pero algo se quedó a medias.

Al reinstalar autofirma, el navegador "nuevo" con los certificados metidos pudo conectar correctamente con autofirma y el proceso funcionó sin problemas

Comentarios