Puesta en marcha de Odoo en Debian 9 – Parte 1

1) ¿Qué es odoo?

Para los que no estáis familiarizados con este software, se trata de una aplicación web que permite tener la gestión integral de los recursos, activos y contabilidad de una empresa. Vamos, a fin de cuentas, es un ERP: Sistema de planificación de recursos empresariales.

Por lo tanto, odoo (antes llamado openerp), es una aplicación de código abierto, escrita en python y javascript, con licencia GNU LGPL v3.

odoo_debian_9_cabecera

2) ¿Es gratis?

Sí, existe una versión community que es gratuita y que puedes descargar y utilizar donde te apetezca. Obviamente, no contarás con soporte ni con algunos plugins de pago, pero para tu pequeño negocio (o autónomos) es más que suficiente.

Pero si lo que queréis es tener odoo en la nube, contar con soporte técnico u otras ventajas, os recomendamos que visitéis su página y echéis un vistazo a los diferentes planes.

3) Preparando el entorno

Como siempre, os recomendamos hacer

apt-get update

apt-get upgrade

Con cuidado de no romper nunca nada. ¡Los upgrades los carga el diablo!

Ahora, instalaremos algunos paquetes que necesita odoo como, por ejemplo, postgresql.

apt-get install postgresql -y

Cambiamos de usuario:

su – postgres

Ejecutamos la consola de PSQL:

psql

Y ahora, desde el cliente de postgres, añadimos un usuario odoo con la contraseña que queráis:

Te puede interesar  Puesta en marcha de Odoo en Debian - Parte 4

alter user odoo password 'password';

Una vez hecho, nos tocará instalar wkhtmltopdf porque si no, tendremos problemas a la hora de visualizar, por ejemplo, una factura en PDF. Esta librería se encarga de generar los PDF y poder visualizarlos en odoo correctamente.

apt-get install wkhtmltopdf

4) Instalando Odoo

wget -O - https://nightly.odoo.com/odoo.key | apt-key add -

echo "deb http://nightly.odoo.com/11.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list

apt-get update && apt-get install odoo

5) Configurando odoo

5.1 Parámetros conexión a BD

Ahora vamos a decirle cuáles son los parámetros de conexión a PostgreSQL. Modificamos el fichero /etc/odoo/odoo.conf

vi /etc/odoo/odoo.conf

Donde pone password, tenéis que poner la contraseña del usuario odoo que hemos configurado anteriormente.

odoo_01_dbconfig

5.2 Puerto por defecto

Ahora la idea es cambiar el puerto por defecto 8069 que utiliza Odoo para utilizar el 80. Sin embargo, dado que odoo se ejecuta con un usuario sin privilegios (odoo), no puede escuchar en puertos bajos. Para ello debería correr como Root y no es nada aconsejable por motivos de seguridad. Por lo tanto, vamos a tener que buscar un workaround para hacer esta tarea.

Pero, aquí vamos a hacer un pequeño hincapié para recordaros y aconsejaros que lo hagáis funcionar a través de la VPN. De esta forma, nuestro ERP de Odoo solo estará accesible por VPN. ¿Qué conseguimos con esto? Al no estar publicado abiertamente a internet, reducimos la exposición y no seremos víctimas de potenciales atacantes. Podrían conseguir acceso a nuestro ERP y consultar datos sensibles de nuestra empresa. Mal rollo, ¿verdad? Pues si queréis instalar y configurar la VPN en vuestro VPS, ¡no os perdáis este post!

Por lo tanto, ¿qué tenemos que hacer para “cambiar” el puerto por defecto de odoo? Para los que hayáis elegido la opción de usarlo a través de la VPN, ejecutad:

Te puede interesar  DNSmasq en Debian 8

iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 80 -j REDIRECT --to-port 8069

Y, pasad al punto 5.3.

para los que os atreváis a tenerlo abierto en internet o simplemente lo tengáis en vuestra máquina local, podéis dejarlo en la interfaz eth correspondiente:

iptables -t nat -A PREROUTING -i ethN -p tcp --dport 80 -j REDIRECT --to-port 8069

Sustituid la interfaz por la que uséis para vuestros desarrollos en local o la que tengáis en el VPS

5.3 OPCIONAL: Configurar odoo en la interfaz VPN:

Para decirle a Odoo que sólo acepte conexiones que vienen de la VPN, modificamos el fichero de configuración del servicio Odoo y le indicamos la interfaz a la que tiene que “bindearse”.

vi /lib/systemd/system/odoo.service

Ahora, añadimos —http-interface 10.8.0.1 a los parámetros de arranque:

El fichero quedará de la siguiente forma:

odoo_02_confservicio

Ojo, hemos puesto 10.8.0.1 porque es la IP por defecto que nos configura OpenVPN para nuestra interfaz tun0. Si por algún motivo habéis elegido una IP diferente en el proceso de instalación de OpenVPN, haceis un ifconfg tun0 y miráis la IP que tiene asignada. Si fuera diferente, tenéis que modificar el script anterior y cambiar el 10.8.0.1 por la IP que tengáis en tun0 asignada.

Cerramos vi guardando los cambios y recargamos la configuración de systemctl:

/bin/systemctl daemon-reload

6) OPCIONAL: Configurando subdominio para VPN

Esto es opcional, si no tienes odoo por VPN y lo tienes abierto o en local, puedes saltar al siguiente paso. Por otro lado, también es opcional incluso porque podéis acceder a odoo poniendo la IP de la VPN. Nosotros vamos a hacerlo, por comodidad. Suponiendo que tenemos nuestro dominio comprado, por ejemplo cibernomadas.es, vamos a hacer que podamos acceder a nuestro ERP navegando a la url odoo.cibernomadas.es.

Te puede interesar  Instalación de Wordpress 4.9.x en Debian 8

Recordad que sólo será accesible cuando estemos conectados a la VPN.

Para ello necesitamos tener dnsmasq configurado. Si no lo tenéis, aquí podéis seguir el post que hicimos explicando el proceso de instalación y parametrización.

Cuando ya lo tengamos instalado y configurado correctamente para que funcione sobre la interfaz tun0 (vpn), modificamos el fichero /etc/hosts:

vi /etc/hosts

Añadimos la IP donde está escuchando odoo y le decimos que va a resolverse cuando se pregunte por odoo.cibernomadas.es:

odoo_03_hostsfile

¡Hecho! Ahora tocará probar todo… ¿no?

7) Accediendo a Odoo

Si habéis seguido todos los pasos, tan solo nos queda acceder desde un navegador a la IP donde tengamos escuchando Odoo.

Los que lo tengáis por VPN, probad con la IP del concentrador (en nuestro caso 10.8.0.1) o por el subdominio que hemos configurado (odoo.cibernomadas.es, por ejemplo). Los que lo tengáis abierto públicamente o en local, acceded a la ip correspondiente.

Una vez hayáis accedido os saldrá el asistente de configuración:

odoo_04_wizard

Si no os funciona, dejadnos un comentario y os intentaremos echar una mano en la medida de lo posible J

Y esto es todo para nuestra primera parte de esta serie de artículos de Odoo.

¡Hasta la próxima entrada, nómadas!

Puesta en marcha de Odoo en Debian 9 – Parte 1
Etiquetado en:                                             

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *