ManualInstalacionQuipux2

11

Click here to load reader

Transcript of ManualInstalacionQuipux2

Page 1: ManualInstalacionQuipux2

Manual de Instalación delSistema de Gestión Documental Quipux

Junio de 2010

1.- Introducción

He tratado de hacer un manual lo más sencillo y lo más estándar posible, funciona igual en distribuciones como Debian, Centos, Ubuntu y en teoría cualquier GNU Linux, nosotros lo tenemos funcionando al 100% en Ubuntu (por lo tanto funciona en Debian) en las máquinas de desarrollo y en Centos 5.2 en los servidores de producción. Ah y por cierto, el sistema Quipux NO FUNCIONA CON SERVIDORES WINDOWS, lo lamento...

El manual lo desarrollé basado en Ubuntu, porque es el sistema operativo que actualmente estoy utilizando, la instalación es la misma sin importar su distribución, claro, teniendo en cuenta que la paquetería se instala diferente en cada sistema; por ejemplo para instalar apache en Debian o Ubuntu ejecutamos “aptitude install apache2” mientras en Centos “yum install httpd” y algunos archivos están ubicados en sitios diferentes.

En este manual no voy a enseñarles como instalar los diferentes paquetes, en internet ustedes pueden encontrar suficiente información para instalarlos.

La configuración que veremos es muy básica y les ayudará a instalar y configurar una máquina de pruebas, para configurar un servidor real es básicamente lo mismo, pero ustedes deberán encargarse de poner todas las seguridades necesarias para que no estén expuestos a ataques, deberán modificar las contraseñas y publicar los nombres de sus servidores.

Nota: Dependiendo de sus necesidades y de los recursos con que cuenten, pueden instalar todo el sistema en un solo equipo o en varios servidores, en un ambiente real les sugiero contar con tres equipos: uno para servidor web, uno para generar PDFs y uno para la base de datos (este debe ser bastante robusto dependiendo de la carga que manejen, los otros no consumen muchos recursos).

Y antes de comenzar con la instalación, algo de propaganda...

El sistema Quipux es un sistema de Gestión Documental que está siendo utilizado por el Gobierno Ecuatoriano, hasta el momento que elaboré este manual, tenía registrados cerca de 25.000 funcionarios públicos y 65.000 ciudadanos; se han creado en el sistema algo más de 2 millones de documentos; se conectan diariamente cerca de 7000 usuarios, los que generan al rededor de 20.000 documentos por día entre originales y copias.

Es posible que el sistema no cumpla con todas sus expectativas, pero es un sistema que funciona, está desarrollado completamente con software libre y liberado con licencia AGPL, por lo que si hay algo que no les gusta, ustedes mismos pueden hacer los cambios que requieran. Por otro lado fue desarrollado y está siendo mantenido por el Estado Ecuatoriano, por lo que el sistema es actualizado todo el tiempo y periódicamente se liberan nuevas actualizaciones para la comunidad.

Ahora si, manos a la obra.

Page 2: ManualInstalacionQuipux2

2.- Instalación del Sistema Quipux.

Vamos a dividir nuestra instalación como si lo hiciéramos en 3 equipos diferentes:•Sevidor Web•Servidor de Base de Datos•Servidor para generar PDFs

Todo esto se puede configurar en un solo equipo, como les decía depende de la infraestructura que le vayan a asignar al sistema.

Nota: Por el momento no instalaremos el módulo de firma digital, apenas pueda actualizo este manual con la información de ese módulo.

2.1.- Instalación del servidor WEB

1.Instalamos el sistema operativo

2.Instalamos los siguientes paquetes:

Apache2php-pearphp5php5-gdphp5-pgsqlphp-soapsubversionsendmail

1.Editamos el archivo “php.ini” (/etc/php5/apache2/php.ini en Ubuntu) y modificamos los siguientes valores de las variables de configuración.

•register_globals = On•display_errors = On #(únicamente mientras configuran el sistema, luego les

sugiero regresarla a “Off”).•short_open_tag = On•register_long_arrays = On•memory_limit = 32 #Mínimo 32, se sugiere 64 o 128

1.Reiniciamos el servidor apache:

•/etc/init.d/apache2 restart

Para comprobar que Apache está ejecutándose y acepta scripts PHP, hacemos lo siguiente:

En “/var/www” cree un archivo llamado phpinfo.php, el cual debe contener las siguientes instrucciones:

<?phpphpinfo();

?>

Abra su navegador Web y en la dirección URL coloque:http://IP_SERVIDOR/phpinfo.php

esto deberá mostrarle una página con información de la configuración de PHP.

Page 3: ManualInstalacionQuipux2

Si todo va bien hasta aquí, borramos el archivo creado.

1.En nuestro webroot (/var/www en Ubuntu) creamos una carpeta llamada “quipux”

•mkdir /var/www/quipux

1.Utilizando Subversión, descargamos la última versión del sistema Quipux en la carpeta que acabamos de crear con el siguiente comando:

•svn checkout http://svn.quipux.org/quipux /var/www/quipux

1.Creamos el archivo de configuración del sistema Quipux:

•cp /var/www/quipux/config2.php /var/www/quipux/config.php

1.Creamos el repositorio de archivos:

•mkdir /var/www/quipux/bodega•mkdir /var/www/quipux/bodega/logos•mkdir /var/www/quipux/bodega/plantillas•mkdir /var/www/quipux/bodega/tmp•mkdir /var/www/quipux/bodega/2010 (o el año actual)

1.Editamos el archivo “/var/www/quipux/config.php” y completamos la siguiente información en base a nuestros parámetros:

//Email del Super Administrador del Sistema QUIPUX

$amd_email = "[email protected]";

// email de la cuenta de soporte

$cuenta_mail_soporte = "[email protected]";

// email de la cuenta desde la que se enviarán los recordatorios a los usuarios

$cuenta_mail_envio = "[email protected]";

Page 4: ManualInstalacionQuipux2

// Nombre de nuestro servidor; por ejemplo: http://quipux.dominio.com// o http://127.0.0.1/quipux o http://192.168.0.5/quipux

$nombre_servidor="http://nombre_servidor_quipux";

2.Cambiamos los permisos y el propietario de las carpetas y archivos:

•chown -R apache:apache /var/www/quipux•cd /var/www/quipux•find . -type d -exec chmod 755 {} \;•find . -type f -exec chmod 644 {} \;

Por seguridad sugerimos dar permisos 755 a todos los directorios y 644 a todos los archivos.

1.Por último accedemos a la aplicación desde nuestro navegador (http://IP_SERVIDOR/phpinfo.php), debe mostrarse esta pantalla:

2.2.- Instalación del servidor de Base de Datos

1.Instalamos el sistema operativo

2.Instalamos el servidor de base de Datos Postgresql 8.2. Lamentablemente el sistema no funciona con versiones superiores aunque estamos trabajando para corregir esto.

3.Modificamos los archivos de configuración de postgres.Ingresamos al directorio /etc/postgresql/8.2/main y configuramos los archivos postgresql.conf y pg_hba.conf

Editamos el archivo /etc/postgresql/8.2/main/postgresql.conf:

Cambiamos la línea:listen_addresses = '*'

A continuación editamos el archivo /etc/postgresql/8.2/main/pg_hba.conf y aumentamos el Número IP de la máquina

Page 5: ManualInstalacionQuipux2

# IPv4 local connections:host all all 127.0.0.1/32 md5host all all 192.168.0.22/32 md5(suponiendo que el IP de la máquina sea 192.168.0.22)

Por seguridad se recomienda poner únicamente el número IP del servidor web pero si se desea que cualquier usuario de la red tenga acceso al servidor de base de datos se puede incluir la siguiente línea:

host all all 192.168.0.0/24 md5(suponiendo que el número de la subred sea 192.168.0.0)

4.Reiniciamos el servidor de base de datos PostgreSQL

sudo /etc/init.d/postgresql-8.2 restart

5.Cambiamos la clave del usuario postgres

sudo passwd postgres

6.Nos cambiamos de usuario al usuario postgres

su postgres

7.Ingresamos al servidor de base de datos PostgreSQL con el comando

psql

8.Cambiamos la contraseña del usuario postgres de la base de datos y salimos de psql

ALTER USER postgres WITH PASSWORD 'nuevo_password';\q

9.Para mayor facilidad en la administración de la base de datos vamos a utilizar el paquete “pgAdmin III”, lo podemos instalar en otra máquina y con este nos conectamos a nuestro servidor de base de datos.

10.Una vez instalado, creamos una nueva conexión al servidor de BDD (hacemos chlick sobre

el ícono ) y nos aparecerá el siguiente wizard que nos ayudará a configurar la conexión.

Page 6: ManualInstalacionQuipux2

11.A continuación creamos una nueva base de datos con los siguientes parámetros:

name: quipuxowner: postgresencoding: UTF-8Tablespace: pg_default

12.Para mayor facilidad en la administración de la base de datos vamos a utilizar el paquete “pgAdmin III”, lo podemos instalar en otra máquina y con este nos conectamos a nuestro servidor de base de datos.

13.Abrimos el editor SQL y ejecutamos los scripts para la creación de tablas y los inserts básicos para que funcione el sistema (los scripts se encuentran en el directorio /var/www/quipux/bdd).

14.Caso contrario podemos restaurar desde el backup que se encuentra en el mismo directorio. Para esto damos un click derecho sobre la base de datos y seleccionamos la opción “Restaurar” y nos aparecerá un wizard que nos ayudará a restaurar la base de datos:

Page 7: ManualInstalacionQuipux2

Únicamente marcamos la opción “No owner” y verificamos que no existan errores en el proceso.

15.Luego configuramos la conexión del sistema Quipux con la base de datos:

Editamos el archivo /var/www/quipux/config.php (en el servidor Quipux) y cambiamos las siguientes variables:

$usuario = "Usuario de la base de datos";$contrasena = "Contraseña de la base de datos"; $servidor = “Servidor de BDD:puerto”; //ejm: "192.168.0.22:5432";$db = "nombre de la BDD";

16.Por último ingresamos a la aplicación.

17.En el campo cédula ponemos “ADMINISTRADOR” y la contraseña es “123” e ingresamos al sistema.

Page 8: ManualInstalacionQuipux2

Nota: Si tienes algún problema para ingresar y no se te muestra esta pantalla, te sugiero ejecutar el archivo test_config.php, este archivo verifica que varios de los puntos de la configuración estén correctos y te da sugerencias para solucionar los inconvenientes.

Ingresa desde desde tu navegador Web http://IP_SERVIDOR/quipux/test_config.php

2.3.- Instalación del servidor de PDFs

1.Instalamos el sistema operativo

2.Instalamos los siguientes paquetes:

Apache2php-pearphp5php5-gdphp-soapsubversionghostscripthtml2ps

1.En nuestro webroot (/var/www en Ubuntu) creamos una carpeta llamada “html_a_pdf”

•mkdir /var/www/html_a_pdf

1.Utilizando Subversión, descargamos la última versión del módulo para generación de PDFs en la carpeta que acabamos de crear con el siguiente comando:

Page 9: ManualInstalacionQuipux2

•svn checkout http://svn.quipux.org/html_a_pdf /var/www/html_a_pdf

1.Creamos los archivos de configuración:

•cp /var/www/html_a_pdf/config2.php /var/www/html_a_pdf/config.php•cp /var/www/html_a_pdf/html_a_pdf2.wsdl /var/www/html_a_pdf/

html_a_pdf.wsdl

1.Modificamos el archivo config.php en base a los datos de nuestro servidor:

$nombre_servidor = 'http://IP_SERVIDOR/html_a_pdf'

Nota: no es necesario que este servidor esté publicado, basta con que el servidor Quipux pueda acceder a el.

2.Editamos el archivo html_a_pdf.wsdl y al final del archivo cambiamos la variable soap: address location:

<soap:address location="http://IP_SERVIDOR/html_a_pdf/html_a_pdf.php"/>

Este archivo es fundamental para la comunicación entre el servidor Quipux y el Servidor de PDFs.

Para probar la conexión ingresamos desde nuestro navegador web la siguiente dirección y debe mostrarse la siguiente pantalla:

http://IP_SERVIDOR/html_a_pdf/html_a_pdf.php?wsdl

Page 10: ManualInstalacionQuipux2

3.Por último le indicamos a nuestro servidor Quipux la dirección de nuestro servidor de PDFs:

Editamos el archivo /var/www/quipux/config.php (en el servidor Quipux) y cambiamos la siguiente variable:

$servidor_pdf = 'http://IP_SERVIDOR/html_a_pdf';

Page 11: ManualInstalacionQuipux2

Nota 1: Las plantillas son archivos PDF de tamaño A4 en las que tienes un margen de 4cm en la parte superior para el encabezado y 3cm en la parte inferior para el pié de página. Puedes poner imágenes o lo que tú desees.

Nota 2: Hay veces que las plantillas no funcionan, es por el programa en que las generas, puedes utilizar Open Office o descargarte gratis programas como el pdf creator o el pdf995 (recomendado). NO FUNCIONAN LAS PLANTILLAS GENERADAS CON MICROSOFT OFFICE 2007.

Nota 3: La instalación del módulo de firma digital les quedo debiendo.

Nota 4: Por último, cuando configuren sus instituciones, creen una nueva institución, NO utilicen la institución creada por defecto.

Espero que les sirva y cualquier duda, estoy a las órdenes.

Mauricio Haro A.