ctt-gob-es / clienteafirma

Cliente @firma
http://administracionelectronica.gob.es/ctt/clienteafirma
247 stars 120 forks source link

Cómo hacer funcionar autofirma en GNU/Linux (Debian 11 Stable) #302

Open vanfanel opened 1 year ago

vanfanel commented 1 year ago

Buenos días,

Veo que hay muchos problemas para hacer funcionar Autofirma en GNU/Linux, y en mi caso particular usando Debian 11 y Lubuntu tuve que resolver un par de ellos (que parecían sólo uno: AutoFirma no funciona y ya), así que presento aquí la solución por si la administración tuviese a bien facilitar su funcionamiento.

En primer lugar, tenemos que instalar manualmente estos paquetes antes de instalar autofirma: sudo apt-get install openjdk-11-jre libnss3-tools OJO: En ninguna parte se dice que haya que instalar el paquete openjdk-11-jre y sin él AutoFirma no funciona. Esto debería dejarse muy claro en la página de descargas o hacer que el paquete de AutoFirma tenga openjdk-11-jre como dependencia. No hacerlo así causa problemas a los usuarios que son complicados de diagnosticar porque normalmente no intentan ejecutar /usr/bin/AutoFirma desde la consola de comandos del sistema, por lo que no llegan a ver los errores de Java y simplemente no les funciona.

Ahora, descargamos el paquete .deb de Autofirma de aquí: https://firmaelectronica.gob.es/Home/Descargas.html Y lo instalamos: sudo dpkg -i AutoFirma_1_7_1.deb

En realidad, este paquete hace dos cosas que nos conviene saber: 1- Instala un programa hecho en Java en /usr/bin/AutoFirma 2- Instala un certificado raiz para el navegador web en _/usr/lib/Autofirma/AutoFirmaROOT.cer

Así que ahora importamos el certificado desde el navegador Firefox, yendo a Configuración->Seguridad y Privacidad->Certificados->Ver Certificados->Autoridades->Importar, y navegando hasta _/usr/lib/Autofirma/AutoFirmaROOT.cer donde tenemos el certificado instalado.

Así que hay dos posibles problemas con los que la gente se encuentra: El primero, es que la versión de JRE que viene instalado tanto en Debian Stable como en Ubuntu (y todas las variantes de Ubuntu: Lubuntu, Xubuntu, etc) NO puede ejecutar /usr/bin/AutoFirma si no se instala antes el paquete openjdk-11-jre, incluso aunque la máquina virtual de java OpenJDK venga instalada. El segundo, es que el certificado raiz es instalado en una ruta donde Firefox no lo ve, así que hay que instalarlo a mano. OJO: En ninguna parte se dice que haya que importar el certificado raíz a mano desde Firefox, con lo que, una vez más, AutoFirma no funciona y el usuario nunca sabe por qué. Esto debería indicarse claramente en la página de descargas.

Ambos problemas deberían resolverse por parte de quien sea que desarrolle AutoFirma, porque mucha gente se tiene que estar encontrando con que echar a andar AutoFirma en GNU/Linux es innecesariamente complicado en las distribuciones más populares, y esto no es culpa de GNU/Linux, sino de que el paquete de AurtoFirma disponible actualmente no tiene en cuenta las circunstancias expuestas.

LucasFA commented 8 months ago

Para los que vengan de Fedora, es algo similar. Pueden leer la documentación de Fedora (https://docs.fedoraproject.org/en-US/quick-docs/installing-java/)

o la oficial de autofirma, preferiblemente:

https://administracionelectronica.gob.es/ctt/clienteafirma/descargas o en ctt-gob-es/clienteafirma-docs