Instalación desde cero

De LNXGEST
Ir a la navegación Ir a la búsqueda

Requisitos minimos

En el lado servidor se requiere:

  • Sistema operativo Linux con apache 2.4 y librerias php 7.0 o superior
  • MariaDB 10.4 o superior
  • unoconv (permite convertir entre formatos de libreoffice)
  • Pdftk (utilidad que une ficheros PDF)

Para que los scripts de reconomiento de contenido de los ficheros adjuntos funcionen, se tiene que instalar varias librerías (ver capitulo: instalación módulo OCR)


En el lado cliente o puesto de trabajo

  • Navegador Mozilla firefox o Google Chrome

Otros requisitos:

  • Para el servidor de impresión se requiere windows 10 o superior

usuarios y contraseñas utilizados en este manual

usuarios y contraseñas
Usuario Contraseña Servicio
root toor Usuario Linux root
lnxuser password Usuario Linux lnxuser
lnxprint passprint Usuario Linux y FTP para la cola de impresión
root toorsql Usuario root MariaDB
administrator password Usuario administrador para MariaDB
administrator password Usuario por defecto en LNXGEST ERP

P del servidor en este ejemplo: 192.168.1.110

Instalación del servidor

Instalación del sistema operativo

Para la instalación del servidor vamos a instalar Debian 10 desde cero y con todas las opciones necesarias para que LNXGEST ERP sea 100% operativo Instalación del sistema operativo

Iniciamos la instalación de debían 10, en nuestro caso hemos descargado debian-10.3.0-amd64-netinst.iso que descarga toda la instalación via internet

Ahora o bien montamos una maquina virtual o lo instalamos en un servidor físico )eso ya a elección de cada uno) y arrancamos desde la ISO:

Install1.png

Seleccionamos el idioma

Install2.png

Install3.png

Install4.png

En este paso comenzará a cargar los componentes

Install5.png

En este paso tenemos que indicar el nombre de la maquina, en nuestro ejemplo será lnxerp1 y a continuación pulsaremos en continuar

Install6.png

Escribimos el nombre del dominio o grupo de trabajo (preguntar a vuestro administrador) y pulsamos en continuar

Install7.png

Escribir la contraseña para el usuario root y pulsamos en continuar

Install8.png

Volvemos a escribir la contraseña para su verificación y pulsamos en continuar

Install9.png

Ahora crearemos un usuario con el que trabajaremos, puede ser cualquiera, en nuestro caso lo vamos a llamar lnxuser y pulsamos en el botón de continuar

Install10.png

Escribimos la contraseña para el usuario lnxuser y continuamos

Install11.png

Indicamos el uso horario

Install12.png

Aquí vamos a usar todo el disco para la instalación.

Install13.png

Seleccionamos el disco

Install14.png

Marcamos la opción de todos los archivos en una partición

Install15.png

Finalizamos con la siguiente configuración:

Install16.png

Aplicamos los cambios

Install17.png

Ahora comienza la instalación base

Install18.png

Elegimos en NO

Install19.png

eleccionamos la que mejor nos convenga, en nuestro caso marcamos España

Install20.png

Seleccionamos el servidor de replica:

Install21.png

Solo si utilizais proxy para la navegación a internet tendréis que configurar el proxy, sino, dejarlo vacio a continuación

Install22.png

Ahora comenzará a descargase los archivos necesarios de la web, esta operación puede tardar un poco

Install23.png

Si salta esta pregunta podeis hacer caso omiso y hacer clic en no

Install24.png

Como la instalación la estamos haciendo por línea de comandos y queremos saber que software vamos a instalar, vamos dejar las siguientes opciones tal y como se muestra en la siguiente imagen

Install25.png

Instala el software

Install26.png

Instalamos grub

Install27.png

Seleccionamos el disco /dev/sda

Install28.png

Con esto ya hemos terminado la instalación del sistema operativo

Install29.png

Una vez reiniciado ya nos aparecerá la ventana de usuario y contraseña

Install30.png

La instalación del sistema operativo esta lista.

Instalación del software web en el servidor linux

Una vez que ya hemos instalado el servidor deberemos de iniciar como superusuario root y con el password que le pusimos durante la instalación y escribiremos el siguiente comando

Ip addr

Con este comando veremos la IP que tiene nuestro servidor Linux

Install31.png

Aquí en el ejemplo vemos que tenemos la IP 192.168.1.110 con esta IP la usaremos para trabajar desde putty / WinSCP

Si nos conectamos por putty, por defecto no se permite al usuario root iniciar sesión en remoto, es por ello que usaremos el usuario creado lnxuser y desde ahí cambairemos a root con el siguiente comando:

su root

Una vez que estemos ya logeados con el usuario root procederemos a realizar la instalación del software del lado del servidor

A partir de este momento, cuando el texto este en color rojo, significa que lo estamos ejecutando como usuario root

apt update

apt install apache2

Con esto instalamos el servidor web con apache Si todo ha ido bien podremos visualizar el sercicio de apache funcionando en http://192.168.1.110 como vemos en la siguiente imagen:

Install32.png

Una vez que tenemos el servicio de apache instalado y funcionando, procederemos a instalar php7

En este tutorial vamos a instalar la versión 7.4 de PHP, para ello primero hemos de añadir un repositorio

Descargamos y almacenamos el repositorio PPA en un archivo en el servidor Debian. Pero primero, descarguamos la clave GPG.

apt -y install lsb-release apt-transport-https ca-certificates

wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Ahora añadimos el repositorio

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" |  tee /etc/apt/sources.list.d/php.list

Refrescamos los repositorios

apt update

Procedemos a la instalación de php 7.4

apt -y install php7.4

Ahora comienza la descarga de las librerías de php7.4

Install33.png

Ahora vamos a instalar los siguiente paquetes adicionales que hacen falta de php

apt-get install php7.4-mysqli

apt-get install php7.4-{bcmath,bz2,intl,gd,mbstring,mysql,zip,xmlrpc}

apt-get install php7.4-xml

Reiniciamos el servicio de apache

systemctl restart apache2

Ahora, para saber si esta funcionando correctamente php, tendremos que crear un fichero php en /var/www/html

Como root, tendremos que cambiar los permisos del directorio para poder escribir en el directorio de apache, para ello:

cd /var/www/
chmod 777 html

Ahora ya tenemos permiso de escritura en el directorio de web

En nuestro caso lo vamos a llamar test.php con el siguiente contenido:

<?php
phpinfo();
?>

Ahora, si accedemos al navegador http://192.168.1.110/test.php veremos lo siguiente:

Install34.png

Ahora ya tenemos el servidor web con las librerías php ya instaladas

Extra: Ampliar límite de subida de archivos al servidor web

Ampliar límite
Editamos con nano el fichero de php.ini
nano /etc/php/7.4/apache2/php.ini

y buscamos que por defecto esta coinfigurado a 2 Mb de subida y aqui lo cambiamos a 10Mb, más que suficiente.

nano /etc/php/7.4/apache2/php.ini

Reiniciamos el servicio de apache

systemctl restart apache2

Instalación de MariaDB

Nuestro siguiente paso es instalar el servidor de base de datos MariaDB y un software de gestión como phpmyadmin.

Primero vamos a instalar el servidor de base de datos

apt install mariadb-server mariadb-client

Una vez finalazada la instalación ejecutaremos el script para configurar MariaDB

mysql_secure_installation

Install35.png

Install36.png

Bien, ahora ya hemos asignado el password a root (de MariaDB) la contraseña os recomiendo poner la misma que le pusisteis al usuario root de Linux para que os sea más fácil de recordar.

Ahora vamos a crear un usuario en MariaDB para que funcione con el phpmyadmin, ya que el usuario root no tiene permitido el acceso. Nos conectamos a MariaDB con el siguiente comando

mysql –u root –p

introducimos el password de root y ahora ya estaremos en la consola de MariaDB

Install37.png

Ejecutaremos los siguientes comandos, para crear un usuario administrador con acceso local que será el que usaremos para el phpmyadmin

CREATE USER 'administrator'@'localhost' IDENTIFIED BY 'password';

Donde **** es la contraseña que nosotros queramos poner al usuario administrator que vamos a crear

GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' WITH GRANT OPTION;

FLUSH PRIVILEGES;

Con este script hemos indicado que el usuario solo tiene permiso desde acceso local

Si lo hemos hecho bien, ahora desde el phpmyadmin podremos acceder y gestionar MariaDB

Ahora vamos a proceder a instalar una herramienta web para poder acceder a MariaDB ya que tendremos que crear la base de datos e importar el archivo .sql que tenemos en sourceforge. Accedemos a https://www.phpmyadmin.net/ y nos descargamos la última versión disponible de phpmyadmin

Usaremos Winscp para copiar el phpmyadmin ya descomprimido al directorio web /var/www/html/ tal y como vemos en la imagen:

Install38.png

Install39.png

Ahora cuando finalice accederemos al phpmyadmin:

http://192.168.1.110/phpmyadmin/

Ahora vamos a crear una base de datos nueva llamada lnxgesterp y codificación utf8_general_ci y pulsaremos en el botón de crear.

Install40.png

Ahora importamos el archivo SQL ("1 estructura.sql" y "2 datos.sql") (pestaña importar). El primer fichero genera la estructura de tablas y el segundo añade los datos básicos que requiere el programa.

Install41.png

Y al final de la pagina encontraremos el botón “continuar” con esto se procede a crear la base de datos limpia con el usuario “administrator” y contraseña “password” que es el usuario genérico creado en la aplicación LNXGEST ERP.

Si todo ha ido bien nos encontraremos con este mensaje: "Importación ejecutada exitosamente"

Bien, ahora ya tenemos instalado el servidor web, las librerías php y el motor de base de datos MariaDB funcionando

Instalación de software adicional

Configuraremos varios puntos:

  • Los directorios de la aplicación
  • Instalación unoconv y pdftk
  • Configurar algunos scripts

Los directorios de la aplicación

El programa requiere varios directorios para ello vamos a crear un directorio raíz llamado /lnxgest

cd /
mkdir lnxgest
chmod 777 lnxgest

Con esto hemos creado el directorio principal y ahora tendremos que crear la siguiente estructura:

Estructura directorios
/lnxgest/files/ En este directorio es donde se van a guardar todos los archivos que se suban desde la aplicación
/lnxgest/scripts/ Aquí es donde se guardan los scripts que requieren algunos módulos para funcionar y que son ejecutados desde el lado del servidor para funcionar
/lnxgest/filestemp/ En este directorio se generan los archivos temporales de los usuarios, existe un script que se tiene que configurar en crontab como root para que pueda: eliminar los directorios, limpiarlos y volver a generar una estructura para los usuarios.
/lnxgest/spool/ Aquí se generar los archivos para imprimir, este directorio tiene que poderse acceder via FTP para que el cliente de impresión pueda recoger los archivos y enviarlos a imprimir.
/lnxgest/recovery/ Este directorio se utiliza para almacenar los archivos generados en el “recovery mode”