Configuración de OpenERP (Odoo) 9 con Nginx en RHEL/CentOS y Debian/Ubuntu

Configuración de OpenERP (Odoo) 9 con Nginx en RHEL/CentOS y Debian/Ubuntu

Odoo. anteriormente conocido como OpenERP. es un software empresarial ERP de planificación de recursos empresariales de código abierto. basado en la web escrito en Python que viene con un conjunto de aplicaciones web diseñadas para todas las empresas, como creadores de sitios web, módulos de comercio electrónico, facturación y contabilidad, recursos humanos, punto de venta, gestión de relaciones con el cliente, módulo de inventario, chat en vivo y muchas otras aplicaciones y funciones.

Este tutorial le guiará sobre cómo instalar la última versión estable de Odoo. (versión 9. en un RHEL/CentOS/Fedora. o Sistemas basados ​​en Debian/Ubuntu. con servidor Nginx. para actuar como un proxy inverso en la interfaz para acceder a la interfaz web de forma más rápida, segura y desde puertos de navegación web estándar, sin la necesidad para que los usuarios usen los puertos de redireccionamiento del navegador.

Paso 1: Instale y proteja la base de datos PostgreSQL

1.. Antes de comience a proceder con la instalación de Odoo. primero asegúrese de que su sistema se envíe con los paquetes proporcionados por los repositorios de Epel para instalar la base de datos de backend PostgreSQL.

También asegúrese de el servidor está actualizado con los últimos paquetes de seguridad y parches emitiendo los siguientes comandos:

———– On RedHat/Sistemas basados ​​en CentOS. ———-# yum update # yum install-y epel-release———– En sistemas basados ​​en Debian/Ubuntu. ———-# apt-get update && sudo apt-get upgrade # En Debian

2.. A continuación, continúe e instale el servidor de base de datos PostgreSQL. que es la base de datos predeterminada utilizada por Odoo. para almacenar información.

———– En sistemas basados ​​en RedHat/CentOS. ———-# yum install postgresql-server———– En Debian/Ub sistemas basados ​​en untu. ———-# apt-get install postgresql postgresql-client freestar.config.enabled_slots.push

Inicialice la base de datos PostgreSQL.

# postgresql-setup initdb

Ahora finalmente inicie la base de datos PostgreSQL. emitiendo el siguiente comando:

———– En sistemas SystemD. ———-# systemctl start postgresql———– En sistemas SysVinit. ———-# service postgresql start

Como paso adicional para asegurar PostgreSQL. usuario predeterminado, que tiene una contraseña en blanco, emita el siguiente comando con privilegios de root para cambiar la contraseña:

sudo-u postgres psql postgres = # \ password postgres

Paso 2: Instale Odoo 9-OpenERP

3.. Para instalar Odoo 9. desde el repositorio oficial, primero cree una nueva y um archivo de repositorio para Odoo con el siguiente contenido:

En CentOS/RHEL Systems # vi/etc/yum.repos.d/odoo.repo

Agregue el siguiente extracto al archivo odoo.repo.

[odoo-nightly] name = Odoo Nightly repositorio baseurl = http://nightly.odoo.com/9.0/nightly/rpm/enabled = 1 gpgcheck = 1 gpgkey = https://nightly.odoo.com/odoo.key Activado Sistemas Debian/Ubuntu

En Debian/Ubuntu. ejecute el siguiente comando para agregar los repositorios de Odoo.

# wget-O-https://nightly. odoo.com/odoo.key | apt-key add-# echo “deb http://nightly.odoo.com/9.0/nightly/deb/./”>>/etc/apt/sources.list

4.. A continuación, instale el software Odoo 9. desde binarios.

———– En sistemas basados ​​en RedHat/CentOS. ———-# yum install odoo———– En sistemas basados ​​en Debian/Ubuntu. ———# apt-get update && sudo apt-get install odoo

A continuación, inícielo y verifique el estado del demonio emitiendo los siguientes comandos:

———– En sistemas SystemD. ———-# systemctl start odoo # systemctl status odoo———– En sistemas SysVinit. ———-# service odoo start # service odoo status

Como paso adicional, puede verificar Puerto de escucha del servicio Odoo. ejecutando el comando ss. o netstat:

# ss-tulpn O # netstat-tulpn

Por defecto, Odoo escucha para conexiones de red en el puerto 8069/TCP.

Paso 3: Configure Odoo desde la interfaz web

5.. Para configurar Odoo para iniciar un navegador y acceder a la interfaz web de Odoo en el siguiente URI:

http://host-or-IP-address: 8069/

6.. A continuación, Se le pedirá que cree una nueva base de datos para Odoo y establezca una contraseña segura para la cuenta de administrador.

 Crear base de datos Odoo  Crear base de datos Odoo Crear base de datos Odoo

7.. Una vez que la base de datos ha sido creado usted b e redirigido al panel web de administración donde puede instalar más aplicaciones y configurar su ERP. Por el momento, deje la aplicación por defecto y cierre la sesión.

 Panel web administrativo de Odoo  Panel web administrativo de Odoo Panel web administrativo de Odoo

8.. Una vez que regrese a la pantalla de inicio de sesión, presione Administrar bases de datos. enlace y establezca una contraseña maestra para proteger el administrador de la base de datos de Odoo.

 Odoo Manage Databases  Odoo Administrar bases de datos Odoo Administra bases de datos Establecer contraseña del administrador de base de datos de Odoo  Establecer contraseña del administrador de la base de datos de Odoo Establecer contraseña de Odoo Database Manager  Establecer nueva contraseña de Odoo Manager Establecer Nueva contraseña de administrador de Odoo Establecer nueva contraseña de administrador de Odoo d

9.. Una vez que haya asegurado el administrador de base de datos de Odoo, puede iniciar sesión en su aplicación y comenzar a configurarla más con sus aplicaciones y configuraciones requeridas.

 Instalar Configurar aplicaciones de Odoo Instalar Configurar aplicaciones de Odoo Instalar Configurar aplicaciones Odoo

Paso 4: Acceder a Odoo desde Nginx Frontend

Puede configurar el sistema para que los usuarios puedan acceder a la web de Odoo panel a través del proxy inverso de Nginx. Esto puede facilitar que los usuarios naveguen por la interfaz web de Odoo más rápido, debido al almacenamiento en caché de frontend de Nginx, en puertos HTTP estándar sin la necesidad de ingresar manualmente el puerto http. 8069. en sus navegadores. .

Para configurar esta opción, primero debe instalar y configurar Nginx. en su sistema mediante los siguientes pasos.

10.. Primero instale el servidor web Nginx. con el siguiente comando:

———– En sistemas basados ​​en RedHat/CentOS. ———-# yum install nginx———– En sistemas basados ​​en Debian/Ubuntu. ———-# apt-get install nginx

11.. A continuación, abra el archivo de configuración principal de Nginx con un editor de texto e inserte el siguiente bloque después de la línea que especifica la ubicación de la raíz del documento Nginx.

———– En sistemas basados ​​en RedHat/CentOS. ———-# vi/etc/nginx/nginx.conf———– En sistemas basados ​​en Debian/Ubuntu. ———-# nano/etc/nginx/sites-enabled/default

Agregue el siguiente extracto de configuración al archivo nginx.conf:

location/{proxy_pass http://127.0.0.1:8069; proxy_redirect off; proxy_set_header Host $ host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Fordered-For $ proxy_add_x_fordered_for; proxy_set_header X-Fordered-Proto $ esquema;

Además, comente la declaración de ubicación de Nginx colocando un #. delante de las siguientes líneas. Utilice la siguiente captura de pantalla como guía.

# ubicación/# Primero intente entregar la solicitud como archivo, luego # como directorio, luego vuelva a mostrar un 404. # try_files $ uri $ uri/= 404; #  Configurar Nginx para Odoo Proxy inverso  Configurar Nginx para Odoo Reverse Proxy Configurar Nginx para Odoo Reverse Proxy

12.. Una vez que haya realizado todos los cambios anteriores, reinicie Nginx. daemon, pero no antes de ejecutar el comando getenforce para verificar si Selinux está habilitado en su máquina.

En sistemas CentOS/RHEL

En caso de que la política esté establecida en Forzada, deshabilítela emitiendo los siguientes comandos:

# setenforce 0 # getenforce

Para deshabilitar completamente Selinux, abra el archivo/etc/selinux/config con un editor de texto y establezca la línea SELINUX en deshabilitado.

 Deshabilitar SELinux en CentOS y RHEL  Deshabilitar SELinux en CentOS y RHEL Deshabilitar SELinux en CentOS y RHEL

Si no desea hacerlo completamente deshabilite la política Seliux y solo quiera relajar las reglas para otorgar un proxy Nginx con acceso permisivo al socket de red, ejecute el siguiente comando:

# setsebool httpd_can_network_connect on-P # getsebool-a | grep httpd

Luego, reinicie el demonio Nginx para reflejar los cambios realizados anteriormente:

# systemctl restart nginx O # service nginx restart

13.. Este siguiente paso es una característica de seguridad opcional e implica el cambio del socket de red que la aplicación Odoo. está escuchando, cambiando la dirección de enlace de todas las interfaces (o dirección) a localhost solamente.

Este cambio debe hacerse solo en junto con el proxy inverso de Nginx debido al hecho de que vincular la aplicación en localhost solo implica que los usuarios dentro de la LAN u otras redes no podrán acceder a Odoo.

Para activar este cambio, abra el archivo/etc/odoo/openerp-server.conf y edite la línea xmlrpc_interface para enlazar en localhost solo como se sugiere en la siguiente captura de pantalla.

xmlrpc_interface = 127.0. 0.1  Configurar la interfaz de Odoo Configurar la interfaz de Odoo Configurar la interfaz de Odoo

Para reflejar los cambios, reinicie el servicio Odoo ejecutando el siguiente comando:

# systemctl restart odoo.service O # service odoo restart

14.. En En caso de que su máquina tenga una línea de defensa de red proporcionada por el firewall, emita los siguientes comandos para abrir los puertos del firewall al mundo exterior para el proxy Nginx:

———– En sistemas basados ​​en FirewallD. ———-# firewall-cmd–add-service = http–permanent # firewall-cmd–reload———– En sistemas basados ​​en IPTables. ———-# iptables-A INPUT-p tcp-m tcp-sport 80-j ACCEPT # iptables-A OUTPUT-p tcp-m tcp–dport 80-j ACCEPT #/etc/init.d/iptables guardar———– En sistemas de cortafuegos UFW. ———-# ufw allow http

15.. ¡Eso es todo! Ahora puede acceder con éxito a su aplicación ERP Odoo visitando la dirección IP de su servidor o el nombre de dominio.

http://192.168.1.40 http://domain.tld  Odoo Web Interface  Odoo Web Interface Interfaz web de Odoo

16.. Para ejecutar automáticamente los servicios después de reiniciar el sistema, ejecute el siguiente comando para habilita todos los demonios en todo el sistema con un solo disparo.

———— En SystemD Systems. ———–# systemctl enable postgresql.service # systemctl enable odoo.service # systemctl enable nginx.service———— Activado Sistemas SysVinit. ———–# chkconfig postgresql en # chkconfig odoo en # chkconfig nginx en

NOTA. Para los informes en PDF, debe descargar e instalar manualmente los paquetes binarios wkhtmltopdf para su propia distribución visitando el siguiente enlace Instalar wkhtmltopdf para convertir una página HTML a PDF.