Nota

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.

Instalación de la plataforma utilizando la configuración por defecto

- 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

Instalación de la plataforma sin utilizar la configuración por defecto.

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" />  
    
    

Instalación de los certificados de confianza

Instalación del las autoridades reconocidas por la plataforma

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.

Instalación de los certificados de confianza por defecto.

Instalación de los certificados de confianza manualmente

Descargamos los certificados de confianza que deseamos sean reconocidos y los dejamos en el escritorio

Reconocimiento de los certificados por el sistema

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)

  • Instalación de los certificados del DNI electónico e-dni.

    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

  • Instalación de los certificados de Avansi

    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
  • Instalación de los certificados de FNMT
    (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
  • Instalación de los certificados de Ancert
    (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
  • Instalación de los certificados de la autoridad de Certificación de la Abogacía
    (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
  • Instalación de los certificados de FirmaProfesional
    (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    

Notas:

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