[bc76022] | 1 | # Manual de instalación de Murachí - Portal de Firma Electrónica y Verificación |
---|
| 2 | |
---|
| 3 | Murachí es un servicio web para la firma y verificación de documentos firmados |
---|
| 4 | electrónicamente que ofrece las herramientas necesarias para incorporar, de |
---|
| 5 | manera sencilla, la funcionalidad de firma electrónica en sistemas como correo |
---|
| 6 | electrónico o sitios web. |
---|
| 7 | |
---|
| 8 | ## Autores: |
---|
| 9 | |
---|
| 10 | Centro Nacional de Desarrollo e Investigación en Tecnologías Libres (CENDITEL), |
---|
| 11 | Mérida - Venezuela. |
---|
| 12 | Dirección de Desarrollo: |
---|
| 13 | -Ing. Pedro Buitrago |
---|
| 14 | -Ing. Angelo Osorio |
---|
| 15 | -Ing. Laura Colina |
---|
| 16 | -Ing. Pablo Sulbarán |
---|
| 17 | -Ing. Argenis Osorio |
---|
| 18 | |
---|
| 19 | ## Instalación: |
---|
| 20 | |
---|
| 21 | ### Requerimientos del sistema: |
---|
| 22 | |
---|
| 23 | Servidor Web. |
---|
| 24 | Php5 o superior. |
---|
| 25 | Java 1.6 o 1.7 compatible runtime. |
---|
| 26 | |
---|
| 27 | ### Instalación del entorno: |
---|
| 28 | |
---|
| 29 | * Entorno: Desarrollo |
---|
| 30 | * Usaremos $ para describir los comandos que se ejecutaran con un usuario regular. |
---|
| 31 | * Usaremos # para describir los comandos que se ejecutaran con un super usuario. |
---|
| 32 | |
---|
| 33 | 1. Instalar el entorno: |
---|
| 34 | |
---|
| 35 | $ sudo aptitude install apache2 |
---|
| 36 | |
---|
| 37 | $ sudo aptitude install php7.0 |
---|
| 38 | |
---|
| 39 | $ sudo aptitude install default-jre |
---|
| 40 | |
---|
| 41 | $ sudo aptitude install openjdk-8-jre |
---|
| 42 | |
---|
| 43 | NOTAS: |
---|
| 44 | |
---|
| 45 | -Al instalar default-jre en Debian 9 Stretch, se instalará openjdk-8-jre, que es |
---|
| 46 | la versión de openjdk por defecto para esa distribución. |
---|
| 47 | |
---|
| 48 | -Se ha comprobado la compatibilidad de PortableSigner solo hasta OpenJDK versión |
---|
| 49 | 11, desde en esa en adelante dependerá del usuario comprobar. |
---|
| 50 | |
---|
| 51 | -Las pruebas fueron realizadas con OpenJDK 8. |
---|
| 52 | |
---|
| 53 | 2. Descargar el proyecto: |
---|
| 54 | |
---|
| 55 | Clonar el proyecto en el directorio del servidor local (www, htdocs, html, etc...): |
---|
| 56 | |
---|
| 57 | $ export GIT_SSL_NO_VERIFY=True |
---|
| 58 | |
---|
| 59 | $ git clone https://tibisay.cenditel.gob.ve/murachi/scm/git/portal_2019.git |
---|
| 60 | |
---|
| 61 | Entrar al proyecto: |
---|
| 62 | |
---|
| 63 | $ cd portal_2019 |
---|
| 64 | |
---|
| 65 | Cambiar a la rama portal: |
---|
| 66 | |
---|
| 67 | $ git checkout portal |
---|
| 68 | |
---|
| 69 | Crear el directorio donde se guardarán los archivos gestionados: |
---|
| 70 | |
---|
| 71 | $ mkdir tmp |
---|
| 72 | |
---|
| 73 | Otorgarle al servidor la propiedad del directorio: |
---|
| 74 | |
---|
| 75 | # chown -R www-data:www-data tmp |
---|
| 76 | |
---|
| 77 | 3. Correr en el navegador host/portal_2019/ y si todo se ejecutó correctamente |
---|
| 78 | debemos ver el Portal de Firma Electrónica y Verificación. |
---|
| 79 | |
---|
| 80 | ### Errores y preguntas frecuentes |
---|
| 81 | |
---|
| 82 | -Error 1. El sistema se carga pero no muestra las imágenes ni los estilos |
---|
| 83 | -Solución: Entrar en el archivo portal_2019/php/url.php y modificar la ruta |
---|
| 84 | de la línea 12. |
---|
| 85 | |
---|
| 86 | De: |
---|
| 87 | |
---|
| 88 | if ($_SERVER['REQUEST_URI'] == "/index.php" || $_SERVER['REQUEST_URI'] == "/") { |
---|
| 89 | |
---|
| 90 | a: |
---|
| 91 | |
---|
| 92 | if ($_SERVER['REQUEST_URI'] == "/portal_2019/index.php" || $_SERVER['REQUEST_URI'] == "/portal_2019/") { |
---|
| 93 | |
---|
| 94 | donde **/portal_2019/** será el nombre del directorio donde está alojado el sistema. |
---|
| 95 | |
---|
| 96 | ----- |
---|
| 97 | |
---|
| 98 | -Error 2. El sistema arroja: **Error al intentar subir el archivo.../tmp/xxxxxxxxxx.pdf** |
---|
| 99 | -Solución: Crear el directorio tmp y darle permisos 777 al directorio, o en |
---|
| 100 | su defecto otorgarle la propiedad del directorio al usuario del servidor |
---|
| 101 | como se muestra en el paso 3 y 4 de la instalalación. |
---|
| 102 | |
---|
| 103 | ----- |
---|
| 104 | |
---|
| 105 | -Error 3. El sistema arroja el error "clave inválida" a pesar que escribir |
---|
| 106 | la clave adecuada del p12. |
---|
| 107 | -Solución: Entrar en el archivo portal_2019/php/run_script.php y agregar el |
---|
| 108 | flag --illegal-access=deny la ruta de la línea 59. |
---|
| 109 | |
---|
| 110 | De: |
---|
| 111 | |
---|
| 112 | $callPortable = "java -jar ../PortableSigner.jar -n"; |
---|
| 113 | |
---|
| 114 | a: |
---|
| 115 | |
---|
| 116 | $callPortable = "java -jar --illegal-access=deny ../PortableSigner.jar -n"; |
---|
| 117 | |
---|
| 118 | ### Notas: |
---|
| 119 | |
---|
[75e3863] | 120 | - La documentación de portablesigner se encuentra en: http://portablesigner.sourceforge.net/ |
---|
| 121 | - PortableSigner puede instalarse de manera global y ser convocado de manera diferente al script de php |
---|
| 122 | - Para encriptar la frase de paso en el cliente se utiliza [jsencrypt](https://github.com/travist/jsencrypt) |
---|
| 123 | |
---|
[bc76022] | 124 | ### El portal fue desarrollado en máquinas con las siguientes especificaciones: |
---|
[75e3863] | 125 | |
---|
| 126 | - Debian 9.9 stretch |
---|
| 127 | - Apache/2.4.25 (Debian) |
---|
| 128 | - PHP 7.3.8-1+0~20190807.43+debian9~1.gbp7731bf |
---|
| 129 | - OpenJDK Runtime Environment (build 1.8.0_222-8u222-b10-1~deb9u1-b10) |
---|
[bc76022] | 130 | - Google Chrome Versión 75.0.3770.142 (Build oficial) (64 bits) |
---|