Para acceder a los servicios básicos de autenticación y firma digital, no es necesario la instalación de la plataforma completa, estando disponible una aplicación de ejemplo que hace uso de los servicios que ofrece la plataforma localizada en www.viafirma.org.
El sistema es una aplicación JEE 1.4 estandar por lo que para que funcione correctamente únicamente requiere que coloquemos el .war en el directorio de desplieges del servidor y a continuación configuremos las variables de entorno que necesita el sistema.
Algunas autoridades de certificación no permiten el libre acceso a sus lista de revocación de certificados, siendo necesario por ejemplo en el caso de la FNTM firmar aderirse a un convenio para su uso.
- Descargamos la aplicación viafirma.war preempaquetada para Tomcat 5.5
- Copiar viafirma.war al directorio webapps de tomcat 5.5 (TOMCAT_HOME/webapps)
- Iniciar tomcat. (TOMCAT_HOME/bin/catalina.sh run)
- Acceder con el navegador a http://localhost:8080/viafirma
Sera necesario modificar las variables de entorno de la aplicación (que se encuentran en /META-INF/context.xml) a su valor adecuado y volver a rempaquetar el .war.
- Variables de entorno que requieren modificación.
<!-- Configuración del cliente de ejemplo integrado en la plataforma -->
<Environment description="Configuración del Cliente:Proveedor OpenID utilizado para la autenticación"
name="URL_DEFAULT_AUTHENTICATION_PROVIDER"
value="http://viafirma.viavansi.com/viafirma/pip/#ID#" type="java.lang.String" override="false"/>
<Environment description="Configuración del Cliente:Proveedor OpenID utilizado para la firma de documentos"
name="URL_DEFAULT_SIGN_PROVIDER"
value="http://viafirma.viavansi.com/viafirma/sign/#ID#" type="java.lang.String" override="false"/>
<Environment description="Configuración del Cliente: Url pública de la aplicación."
name="URL_APLICACION"
value="http://viafirma.viavansi.com/viafirma" type="java.lang.String" override="false"/>
<Environment description="Configuración del servidor:Parametro de configuracion utilizado por el propio conector para saber desde que url sera visible por los usuario finales la autenticación"
name="URL_AUTHENTICATION_CONECTOR_OPENID"
value="http://viafirma.viavansi.com/viafirma/conectorAutenticacionOpenId" type="java.lang.String" override="false"/>
<Environment description="Configuración del servidor:Parametro de configuracion utilizado por el propio conector para saber desde que url sera visible por los usuario finales la firma de ficheros"
name="URL_FIRMA_CONECTOR_OPENID"
value="http://viafirma.viavansi.com/viafirma/conectorFirmaOpenId" type="java.lang.String" override="false"/>
<!-- Para la conexión via RMI
<Environment description="Configuración del Cliente:URL del conector RMI utilizado para el proceso de firma"
name="URL_VIAFIRMA_RMI_CONECT"
value="rmi://127.0.0.1:19111/conectorViafirmaRMI" type="java.lang.String" override="false"/>
-->
<!-- Para la conexión via Web Services -->
<Environment description="Configuración del Cliente:URL del conector WS utilizado para el proceso de firma"
name="URL_VIAFIRMA_RMI_CONECT" override="false" type="java.lang.String"
value="http://127.0.0.1:8080/viafirma/services/ConectorFirmaRMI"/>
<Environment description="Directorio que se va a utilizar para guardar los documentos firmados. Lo ideal es que este en red."
name="PATH_CUSTODIA" type="java.lang.String"
value="/tmp/custodia" />
<Environment description="Configuración del Servidor: Desactiva la validación online del certificado usando CRLd"
name="VALIDACION_ONLINE"
value="false" type="java.lang.String" override="false"/>
<Environment
description="Configuración del Servidor: Parametros de acceso al LDAP de FNMT para el acceso a las CRLs"
name="CONEXION_LDAP_CRL_FNMT" value="ldap://ldap-2.cert.fnmt.es:389;usuario;clave" type="java.lang.String"
override="false" />
<!-- Configuración de envio de emails seguros firmados digitalmente -->
<Environment description="Configuración de usuario smtp (opcional)"
name="SMTP_USER" override="false" type="java.lang.String"
value="usuario" />
<Environment description="Configuración de password smtp (opcional)"
name="SMTP_PASS" override="false" type="java.lang.String"
value="password" />
<Environment description="Configuración de smtp (opcional)"
name="HOST_SMTP" override="false" type="java.lang.String"
value="192.168.10.7" />
<!-- seguridad -->
<Environment description="Listado de IPs con acceso permitido a los servicios web de la plataforma"
name="ALLOWED" override="false" type="java.lang.String"
value="127.0.0.1,192.168.10.160" />
Para que la plataforma funcione correctamente, es necesario instalar los certificados de confianza con los que posteriormente trabajara el sistema. Si lo desea puede simplemente descargar el almacen de certificados por defecto, que contiene todos los certificados de confianza actualmente soportados por Viafirma, o realizar usted mismo una instalación manual.
Descargamos los certificados de confianza que deseamos sean reconocidos y los dejamos en el escritorio
Para que sean reconocidos los certificados de e-DNI, ANCERT, AVANSI CxA, FNMT, FirmaProfesional y ACA como validos deben ser instalados como autoridad certificadora reconocida por Java, además el sistema solo tendrá en cuenta los certificados cuyo alias contenga la palabra "viafirma".
Esto se puede hacer desde el panel de control java certificados o con el keytool modificando el almacen por defecto que suele estar en /usr/lib/j2sdk1.5-sun/jre/lib/security ( o similar).
A continuación se explica, como opción recomendada, el proceso de instalación utilizando keytool(clave del keystore changeit ):
Nota: Para que los cambios surjan efecto hay que reiniciar la plataforma ( JVM)
sudo keytool -import -alias edni_viafirma -file ACRaiz.crt -keystore cacerts
Owner: CN=AC RAIZ DNIE, OU=DNIE, O=DIRECCION GENERAL DE LA POLICIA, C=ES
Issuer: CN=AC RAIZ DNIE, OU=DNIE, O=DIRECCION GENERAL DE LA POLICIA, C=ES
Serial number: d28570fdaea7d65f118415c631b5cb
Valid from: Thu Feb 16 11:37:25 GMT+01:00 2006 until: Fri Feb 08 23:59:59 GMT+01:00 2036
Certificate fingerprints:
MD5: 15:5E:F5:11:7A:A2:C1:15:0E:92:7E:66:FE:3B:84:C3
SHA1: B3:8F:EC:EC:0B:14:8A:A6:86:C3:D0:0F:01:EC:C8:84:8E:80:85:EB
sudo keytool -import -alias edni001_viafirma -file ac_DNIe_001.cer -keystore cacerts
sudo keytool -import -alias ocsp_dnie_viafirma -file ocsp_dnie_certificate.cer -keystore cacerts
sudo keytool -import -alias avansi_certificados_viafirma -file /home/*/Desktop/AVANSI_CERTIFICADOS_DIGITALES_20042007.crt -keystore cacerts sudo keytool -import -alias avansi_certificacion_viafirma -file /home/*/Desktop/AVANSI_CERTIFICACION_20042007.crt -keystore cacerts
Owner: C=DO, L=APARTADO POSTAL 3179 SANTO DOMINGO - REPUBLICA DOMINICANA, O=AVANSI C. POR A. - RNC 130222509, CN=AVANSI CERTIFICADOS DIGITALES
Issuer: C=DO, L=APARTADO POSTAL 3179 SANTO DOMINGO - REPUBLICA DOMINICANA, O=AVANSI C. POR A. - RNC 130222509, CN=AVANSI CERTIFICACION
Serial number: 22a1623591cc001
Valid from: Fri Feb 02 11:47:45 CET 2007 until: Sun Jan 09 11:35:07 CET 2107
Certificate fingerprints:
MD5: 13:9E:BC:23:E6:92:1B:EF:84:3F:F9:49:2D:7C:E2:2D
SHA1: 6B:8E:12:2C:75:B7:7D:DD:F2:D1:FB:99:B8:FE:CF:C9:F0:39:92:EC
Trust this certificate? [no]: yes
Certificate was added to keystore
(En Linux) cd $JAVA_HOME/jre/lib/security sudo keytool -import -alias fnmt_viafirma -file /home/*/Desktop/FNMT_ca_certificado.cer -keystore cacerts (En Windows) cd %JAVA_HOME%\jre\lib\security keytool -import -alias fnmt_viafirma -file c:\FNMT_ca_certificado.cer -keystore cacerts
Propietario: OU=FNMT Clase 2 CA, O=FNMT, C=ES
Emisor: OU=FNMT Clase 2 CA, O=FNMT, C=ES
Número de serie: 36f11b19
Válido desde: Thu Mar 18 15:56:19 CET 1999 hasta: Mon Mar 18 16:26:19 CET 2019
Huellas digitales del certificado:
MD5: 25:9D:CF:5E:B3:25:9D:95:B9:3F:00:86:5F:47:94:3D
SHA1: 43:F9:B1:10:D5:BA:FD:48:22:52:31:B0:D0:08:2B:37:2F:EF:9A:54
¿Confiar en este certificado? [no]: s
Respuesta incorrecta, vuelva a intentarlo
¿Confiar en este certificado? [no]: si
Se ha añadido el certificado al almacén de claves
(En Linux ) cd $JAVA_HOME/jre/lib/security sudo keytool -import -alias ancert_viafirma -file /home/*/Desktop/ANCERTCCP.crt -keystore cacerts (En Windows) cd %JAVA_HOME%\jre\lib\security keytool -import -alias ancert_viafirma -file c:\ANCERTCCP.crt -keystore cacerts
Propietario: CN=ANCERT Certificados Corporativos Personales, O=Agencia Notarial de Certificacion S.L. Unipersonal - CIF B83395988, L=Paseo del General Martinez Campos 46-6a planta, ST=Madrid, C=ES
Emisor: CN=ANCERT Certificados Redes Privadas, O=Agencia Notarial de Certificacion S.L. Unipersonal - CIF B83395988, C=ES
Número de serie: 64a119bd7a20010c5068ce22ea90ef0
Válido desde: Thu Feb 12 14:14:48 CET 2004 hasta: Wed Feb 12 14:14:44 CET 2014
Huellas digitales del certificado:
MD5: FF:DA:09:2D:5E:AF:C7:EB:49:D2:1E:FB:F5:A7:3B:63
SHA1: 0C:A8:54:B2:F4:55:E5:F5:34:D7:01:79:16:0F:6A:2F:A6:6A:9A:A2
¿Confiar en este certificado? [no]: si
Se ha añadido el certificado al almacén de claves
(En Linux ) cd $JAVA_HOME/jre/lib/security sudo keytool -import -alias aca_corporativos_viafirma -file /home/*/Desktop/ACAcorporativos.crt -keystore cacerts (En Windows) cd %JAVA_HOME%\jre\lib\security keytool -import -alias aca_corporativos_viafirma> -file c:\ACAcorporativos.crt -keystore cacerts
Propietario: CN=ACA - Certificados Corporativos, OU=Autoridad de Certificacion de la Abogacia, O=Consejo General de la Abogacia NIF:Q-2863006I, EMAILADDRESS=ac@acabogacia.org, L=Madrid, C=ES
Emisor: CN=Autoridad de Certificacion de la Abogacia, O=Consejo General de la Abogacia NIF:Q-2863006I, C=ES
Número de serie: 793bbe524357d2fd42afd884269cac62
Válido desde: Wed Jun 15 09:28:04 CEST 2005 hasta: Wed Jun 14 00:00:00 CEST 2017
Huellas digitales del certificado:
MD5: 23:8D:D7:C6:E4:A9:91:25:51:B7:AA:4E:90:16:B6:91
SHA1: 67:B8:6C:DB:DE:FD:4A:8D:F1:4A:6C:14:46:B1:EE:04:38:07:CB:9B
Nombre del algoritmo de firma: SHA1withRSA
Versión: 3
¿Confiar en este certificado? [no]: si
Se ha añadido el certificado al almacén de claves
(En Linux ) cd $JAVA_HOME/jre/lib/security sudo keytool -import -alias firmaprofesionalroot_viafirma -file /home/*/Desktop/FirmaProfesional_root.cer -keystore cacerts sudo keytool -import -alias firmaprofesionalCA1_viafirma -file /home/*/Desktop/FirmaProfesional_ca1.cer -keystore cacerts (En Windows) cd %JAVA_HOME%\jre\lib\security keytool -import -alias firmaprofesionalroot_viafirma -file c:\FirmaProfesional_root.cer -keystore cacerts keytool -import -alias firmaprofesionalCA1_viafirma -file c:\FirmaProfesional_ca1.cer -keystore cacerts
Eliminación de certificador: sudo keytool -delete -alias alias -keystore cacerts
Instalar un certificado de ejemplo: keytool -genkey -keyalg RSA -validity 2000 -keypass certificado_ejemplo_viafirma -dname "cn=Certificado de Ejemplo,ou=Viafirma,c=ES" -alias certificado_ejemplo_viafirma -keystore /home/felix/workspaces/viafirmaPFCWorkspace/viafirma-business/src/site/resources/cert/cacerts -storepass changeit -trustcacerts