Installare openerp-server e openerp-web come demoni su Ubuntu server 10.04

Pubblicato il 9 luglio 2010 da eLBati

Dopo aver installato ed eseguito con successo OpenERP nel nostro ambiente di test grazie alla precedente guida, vediamo come installare e configurare i due demoni openerp-server e openerp-web (versione 5.0.11 in questo momento) su di un sistema server GNU/Linux debian based (nel nostro caso Ubuntu 10.04).

Come prima cosa spostiamo i nostri due server in una directory di sistema come /usr/lib

# mv openerp-server-5.0.11/ /usr/lib/

Poi copiamo in init.d lo script di esempio distribuito con openerp-web ed il suo file di configurazione:

# cp /usr/lib/openerp-web-5.0.11/scripts/openerp-web /etc/init.d/openerp-web
# cp /usr/lib/openerp-web-5.0.11/config/openerp-web.cfg /etc/openerp-web.cfg

Modifichiamo lo script openerp-web sostituendo

DAEMON=/usr/bin/openerp-web

con

DAEMON=/usr/lib/openerp-web-5.0.11/openerp-web.py

Poi potremmo voler modificare un po’ il file /etc/openerp-web.cfg impostando ad esempio (dopo aver creato il file error.log)

server.environment = "production"
log.error_file = "/var/log/openerp-web/error.log"

Ora il web server è pronto per essere eseguito (ad esempio con /etc/init.d/openerp-web start).

Ma dobbiamo ancora occuparci di openerp-server: come prima cosa gli facciamo salvare un file di configurazione che poi potremo modificare:

# /usr/lib/openerp-server-5.0.11/bin/openerp-server.py -s

All’interno di questo file (che, se abbiamo eseguito il precedente comando come root, è stato salvato in /root/.openerp_serverrc) troviamo tutte le impostazioni con cui è possibile configurare openerp-server.

Anche qui, potremmo voler cambiare alcune cose, come la admin_passwd ed il logfile (nel mio caso /var/log/openerp-server/server.log). Sicuramente sarà necessario modificare i seguenti tre parametri:

db_password = DB_PASSWORD
db_user = openerp
db_host = localhost

Ora spostiamo questo file di configurazione

# mv /root/.openerp_serverrc /etc/openerp-server.cfg

e facciamo una copia dello script precedentemente creato per openerp-web

# cp /etc/init.d/openerp-web /etc/init.d/openerp-server

Apriamo il file /etc/init.d/openerp-server e lo adattiamo a openerp-server. La prima parte del file dovrebbe assomigliare a questa:

#!/bin/sh

### BEGIN INIT INFO
# Provides:             openerp-server
# Required-Start:       $syslog
# Required-Stop:        $syslog
# Should-Start:         $network
# Should-Stop:          $network
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    OpenERP Server - the OpenERP server
# Description:          OpenERP is a complete ERP and CRM software.
### END INIT INFO

PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/lib/openerp-server-5.0.11/bin/openerp-server.py
NAME=openerp-server
DESC=openerp-server

# Specify the user name (Default: openerp).
USER="openerp"

# Specify an alternate config file (Default: /etc/openerp-web.cfg).
CONFIGFILE="/etc/openerp-server.cfg"

# pidfile
PIDFILE=/var/run/$NAME.pid

# Additional options that are passed to the Daemon.
DAEMON_OPTS="-c $CONFIGFILE"

Aggiungiamo infine al sistema l’utente openerp, che sarà il responsabile dell’esecuzione dei due demoni

# adduser openerp

e lo rendiamo proprietario dei file che dovrà gestire

# chown -R openerp /usr/lib/openerp-*
# chown -R openerp /var/log/openerp-*
# chown openerp /etc/openerp-*

Ora possiamo far partire i nostri server semplicemente con

/etc/init.d/openerp-server start
/etc/init.d/openerp-web start

Possiamo anche configurarli per avviarli al boot del sistema con strumenti come sysv-rc-conf.

I nostri server saranno quindi in ascolto sulle porte 8069, 8070 e 8080. Il web server sarà raggiungibile alla porta 8080.

A questo punto potremmo voler mettere in sicurezza il nostro sistema. A cominciare dalle regole del firewall che possono essere facilmente amministrate da strumenti come ufw.

O anche utilizzando TLS per le comunicazioni (è necessario installare il pacchetto python-openssl), impostando, nel file di configurazione di openerp-server, l’opzione secure = True e passando al server i parametri –cert-file e –pkey-file contenenti il certificato e la chiave privata. In questo modo il server utilizzerà una connessione criptata sulla porta 8069:

INFO:web-services:starting XML-RPC Secure services, port 8069

Per far utilizzare TLS anche al web server, possiamo usare strumenti come Stunnel, o direttamente Apache

Commenti

Una risposta a “Installare openerp-server e openerp-web come demoni su Ubuntu server 10.04”

  1. LB on luglio 31st, 2010 13:19

    Anche in questo caso, la guida è valida anche per Debian 5.0 (l’unica differenza consiste nel fatto che il pack ufw non è disponibile per lenny)

Lascia un commento