Guida completa all’installazione di Odoo 18 su Ubuntu 24.04 LTS

Uomo utilizza software Odoo su computer.
Tempo di Lettura: 9 minuti

Tabella dei Contenuti

Odoo è una delle piattaforme ERP open source più diffuse e apprezzate a livello internazionale. Grazie alla sua architettura modulare, permette di gestire in modo centralizzato e integrato processi aziendali complessi come contabilità, vendite, acquisti, CRM, gestione progetti, magazzino e risorse umane.

L’installazione di Odoo su un server Linux richiede una serie di passaggi fondamentali che includono la configurazione del sistema operativo, del database PostgreSQL, dell’ambiente Python e dei servizi di supporto come Nginx e Certbot per garantire l’accesso sicuro via HTTPS.

In questa guida completa, aggiornata al 2025, vedremo come installare Odoo 18 su Ubuntu 24.04 LTS seguendo un processo chiaro e strutturato step by step, così da ottenere un ambiente stabile, sicuro e pronto all’uso in produzione.

Durante le spiegazioni troverai alcuni esempi in cui vengono utilizzati valori generici come:

  • La_tua_password, che deve essere sostituito con la password scelta e personalizzata dall’amministratore di sistema.

  • crm.dominio.it, che deve essere sostituito con il proprio dominio di secondo livello (es. gestionale.azienda.it) o, se si preferisce, con un dominio di primo livello (es. azienda.it).

Questa guida è stata pensata per offrire una procedura dettagliata e completa, utile sia a sistemisti che a sviluppatori, per garantire che l’installazione sia corretta fin dall’inizio e che Odoo possa funzionare senza problemi su un dominio personalizzato.

STEP 1 – Aggiornamento del sistema

Il primo passaggio per installare Odoo 18 su Ubuntu 24.04 LTS è aggiornare il sistema operativo. Un ambiente aggiornato riduce i rischi di incompatibilità e garantisce la disponibilità delle ultime patch di sicurezza.

Per aggiornare i pacchetti esistenti, utilizziamo i comandi apt update e apt upgrade.

1. Aggiornare la lista dei pacchetti

sudo apt update

Questo comando aggiorna la lista dei pacchetti disponibili dai repository di Ubuntu. È fondamentale eseguirlo prima di qualsiasi installazione, per essere certi di avere accesso alle versioni più recenti dei software.

2. Aggiornare i pacchetti installati

sudo apt upgrade -y
Con questo comando vengono installati tutti gli aggiornamenti disponibili. L’opzione -y conferma automaticamente l’operazione, così il processo non richiede ulteriori interazioni.

Con il sistema aggiornato e sicuro, possiamo passare alla fase successiva, dedicata alla configurazione della sicurezza di base con SSH e Fail2ban.

STEP 2 – Configurazione sicurezza di base (SSH + Fail2ban)

Dopo aver aggiornato il sistema, è importante configurare un livello minimo di sicurezza per proteggere il server. Due componenti fondamentali sono il server SSH, che consente l’accesso remoto sicuro, e Fail2ban, che blocca automaticamente i tentativi di accesso non autorizzati.

1. Installare il server SSH

sudo apt install openssh-server -y

Con questo comando si installa il servizio OpenSSH, che permette di collegarsi al server da remoto in modo sicuro. È lo strumento essenziale per gestire la VPS una volta operativa.

2. Installare Fail2ban

sudo apt install fail2ban -y

Fail2ban analizza i log del sistema e, in caso di numerosi tentativi di accesso falliti, blocca automaticamente l’indirizzo IP dell’attaccante. Questo riduce notevolmente i rischi di attacchi brute force.

3. Abilitare e avviare Fail2ban

sudo systemctl enable --now fail2ban

Questo comando attiva Fail2ban immediatamente e garantisce che venga avviato automaticamente ad ogni riavvio del server.

4. Verificare lo stato di Fail2ban

sudo systemctl status fail2ban

Se il servizio è attivo, il sistema mostrerà la voce active (running). Per uscire dalla schermata di stato basta premere il tasto q.

STEP 3 – Installazione delle dipendenze di sistema

Per poter installare e utilizzare correttamente Odoo 18 su Ubuntu 24.04 LTS, è necessario installare una serie di pacchetti e librerie che garantiscono il corretto funzionamento del software.
Queste dipendenze includono strumenti di sviluppo, librerie di supporto per database, gestione delle immagini e compilazione dei file CSS e JavaScript.

1. Installare i pacchetti principali

Il primo passo consiste nell’installare Python, pip e gli strumenti di compilazione di base:

sudo apt install git python3-pip python3-dev python3-venv python3-wheel build-essential -y

2. Installare librerie aggiuntive

Queste librerie sono necessarie per la gestione di XML, LDAP e protocolli di sicurezza:

sudo apt install libxml2-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev libssl-dev libffi-dev -y

3. Installare librerie per immagini e database

Servono a Odoo per lavorare con file grafici, PDF e database PostgreSQL:

sudo apt install libjpeg-dev libpq-dev liblcms2-dev libblas-dev libatlas-base-dev -y

4. Installare Node.js e npm

Odoo utilizza Node.js e npm per compilare i file JavaScript e CSS:

sudo apt install nodejs npm -y

5. Creare un link simbolico per Node.js

Alcuni pacchetti cercano il comando node invece di nodejs. Creiamo quindi un link simbolico:

sudo ln -s /usr/bin/nodejs /usr/bin/node

6. Installare less e plugin CSS

Questi strumenti permettono a Odoo di compilare correttamente i file CSS dei temi:

sudo npm install -g less less-plugin-clean-css

A questo punto tutte le dipendenze di sistema necessarie a Odoo sono installate correttamente e il server è pronto per la configurazione di wkhtmltopdf, indispensabile per la generazione dei report in PDF.

STEP 4 – Installazione di wkhtmltopdf

Uno dei componenti fondamentali per l’utilizzo di Odoo 18 è wkhtmltopdf.
Questo strumento consente la generazione di documenti PDF direttamente dal sistema ERP, ad esempio fatture, preventivi e report personalizzati.

Su Ubuntu 24.04 LTS la versione consigliata e compatibile è la 0.12.6.1-3 (Jammy), che include il supporto a Qt patchato.
Di seguito riportiamo i passaggi dettagliati per l’installazione.

1. Installare i pacchetti di font richiesti

Prima di installare wkhtmltopdf è necessario aggiungere i pacchetti di font richiesti dal sistema:

sudo apt install xfonts-75dpi xfonts-base -y

2. Scaricare il pacchetto wkhtmltopdf compatibile

Scarichiamo la versione stabile e compatibile per Ubuntu 24.04:

wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_amd64.deb

3. Installare il pacchetto

Procediamo con l’installazione del pacchetto .deb appena scaricato:

sudo dpkg -i wkhtmltox_0.12.6.1-3.jammy_amd64.deb

4. Risolvere le dipendenze mancanti

In caso di errori dovuti a dipendenze non soddisfatte, eseguire:

sudo apt --fix-broken install -y

5. Verificare l’installazione

Per confermare che wkhtmltopdf sia installato correttamente, digitare:

wkhtmltopdf --version

Il risultato atteso è simile al seguente:
wkhtmltopdf 0.12.6.1 (with patched qt).
Se compare questa versione, l’installazione è stata completata correttamente.

Con wkhtmltopdf installato correttamente, Odoo sarà in grado di generare report e documenti PDF senza problemi.
Il prossimo passo sarà l’installazione e configurazione di PostgreSQL, il database utilizzato da Odoo.

STEP 5 – Installazione e configurazione di PostgreSQL

Il database utilizzato da Odoo è PostgreSQL, un sistema robusto e performante.
È necessario configurarlo correttamente per permettere a Odoo di funzionare senza problemi e garantire la sicurezza dei dati.

1. Installare PostgreSQL

Per installare il database eseguire il comando:

sudo apt install postgresql -y

2. Abilitare PostgreSQL all’avvio

Assicuriamoci che il servizio sia avviato subito e che parta automaticamente ad ogni riavvio della VPS:

sudo systemctl enable --now postgresql

3. Impostare la password dell’utente postgres

Entriamo nella console PostgreSQL con l’utente di default postgres:

sudo -u postgres psql

All’interno della console eseguire il comando:

ALTER USER postgres WITH PASSWORD 'LA_TUA_PASSWORD';
\q

4. Creare l’utente odoo per il database

Ora creiamo un utente PostgreSQL dedicato a Odoo con i permessi necessari:

sudo -u postgres psql -c "CREATE USER odoo WITH PASSWORD 'LA_TUA_PASSWORD CREATEDB;"

In questo modo abbiamo un utente sicuro e separato che Odoo utilizzerà per gestire i propri database.

Con PostgreSQL installato e configurato correttamente, possiamo passare allo step successivo: la creazione dell’utente Linux che eseguirà Odoo come servizio.

STEP 6 – Creazione dell’utente Linux Odoo

Per motivi di sicurezza, Odoo deve essere eseguito con un utente dedicato e non con l’utente root.
In questo modo eventuali problemi o vulnerabilità non comprometteranno l’intero sistema.

1. Creare l’utente odoo

Creiamo un utente di sistema chiamato odoo, con la propria home directory in /opt/odoo:

sudo adduser --system --home=/opt/odoo --group --shell=/bin/bash odoo

2. Impostare la password

Assegniamo una password sicura all’utente appena creato:

sudo passwd odoo

Password scelta per questa guida: LA_TUA_PASSWORD

3. Creare la cartella per gli addons personalizzati

Gli addons personalizzati saranno posizionati in una cartella separata rispetto a quelli nativi:

sudo mkdir /opt/odoo/custom-addons

4. Assegnare i permessi all’utente odoo

Concediamo all’utente odoo la gestione completa della propria cartella addons:

sudo chown odoo:odoo /opt/odoo/custom-addons

Abbiamo ora un utente Linux dedicato e pronto a eseguire Odoo in modo isolato dal resto del sistema.
Il passo successivo sarà scaricare i sorgenti di Odoo 18 dal repository ufficiale.

STEP 7 – Download e installazione dei sorgenti Odoo 18

Una volta creato l’utente dedicato, possiamo scaricare i sorgenti ufficiali di Odoo 18 dal repository GitHub.
Questa operazione ci permette di avere la versione più aggiornata e stabile disponibile.

1. Accedere come utente odoo

Entriamo nell’ambiente dell’utente odoo creato in precedenza:

sudo su - odoo -s /bin/bash

2. Clonare il repository Odoo 18

Scarichiamo la versione stabile di Odoo 18 direttamente da GitHub:

git clone --depth 1 --branch 18.0 https://github.com/odoo/odoo /opt/odoo/odoo-server

Il parametro --depth 1 scarica solo l’ultima versione disponibile, riducendo il peso del download,
mentre --branch 18.0 garantisce di lavorare sul ramo corretto.

3. Verificare il contenuto della cartella

Possiamo confermare che il download è andato a buon fine controllando i file presenti:

ls -l /opt/odoo/odoo-server

In questa directory troveremo i file principali come odoo-bin, requirements.txt e la cartella addons.

4. Uscire dall’utente odoo

Una volta scaricati i sorgenti, usciamo dall’ambiente dell’utente dedicato per tornare all’utente principale:

exit

A questo punto abbiamo a disposizione i file sorgenti di Odoo 18 e possiamo prepararci alla configurazione dell’ambiente Python dedicato.

STEP 8 – Creazione ambiente Python (virtualenv) e installazione delle dipendenze

Per garantire stabilità e compatibilità, Odoo deve essere eseguito in un ambiente Python isolato.
A questo scopo utilizzeremo virtualenv, che ci permette di gestire le dipendenze senza interferire con i pacchetti globali del sistema.

1. Accedere come utente odoo

Torniamo a lavorare con l’utente dedicato:

sudo su - odoo -s /bin/bash

2. Spostarsi nella cartella dei sorgenti Odoo

Entriamo nella directory contenente i file scaricati:

cd /opt/odoo/odoo-server

3. Creare un ambiente virtuale Python

Creiamo un ambiente virtuale dedicato a Odoo:

python3 -m venv odoo-venv

4. Attivare l’ambiente virtuale

Per utilizzare il virtualenv appena creato, attiviamolo con il comando:

source odoo-venv/bin/activate

5. Installare il pacchetto wheel

Prima di procedere all’installazione delle dipendenze è consigliato installare wheel:

pip3 install wheel

6. Installare tutte le dipendenze richieste

Le librerie necessarie sono elencate nel file requirements.txt. Installiamole tutte con:

pip3 install -r requirements.txt

7. Disattivare l’ambiente virtuale

Una volta completata l’installazione, usciamo dal virtualenv:

deactivate

8. Tornare all’utente principale

Infine, lasciamo l’utente odoo per tornare all’utente principale del server:

exit

Ora Odoo dispone di tutte le librerie Python necessarie per funzionare correttamente.
Il passo successivo sarà configurare il file odoo.conf con le credenziali del database e i percorsi degli addons.

STEP 9 – Creazione e configurazione del file /etc/odoo/odoo.conf

Il file odoo.conf è il cuore della configurazione di Odoo.
Contiene tutte le informazioni necessarie per collegarsi al database PostgreSQL, gestire gli addons e avviare il servizio in modo corretto.

1. Creare la cartella di configurazione

Creiamo una cartella dedicata ai file di configurazione di Odoo:

sudo mkdir /etc/odoo

2. Creare il file di configurazione

Apriamo il file odoo.conf con l’editor nano:

sudo nano /etc/odoo/odoo.conf

All’interno del file inseriamo il seguente contenuto:

[options]
admin_passwd = LA_TUA_PASSWORD
db_host = localhost
db_port = 5432
db_user = odoo
db_password = LA_TUA_PASSWORD
addons_path = /opt/odoo/odoo-server/addons,/opt/odoo/custom-addons
logfile = /var/log/odoo/odoo.log
proxy_mode = True
list_db = True
http_port = 8069
workers = 4

3. Impostare i permessi corretti

Il file contiene password sensibili, quindi deve essere leggibile solo da root e dall’utente Odoo:

sudo chown odoo:odoo /etc/odoo/odoo.conf
sudo chmod 640 /etc/odoo/odoo.conf

4. Creare la cartella dei log

Aggiungiamo una directory dedicata ai file di log di Odoo:

sudo mkdir /var/log/odoo
sudo chown odoo:odoo /var/log/odoo

Con questa configurazione, Odoo è pronto per essere gestito come un servizio di sistema tramite systemd.

STEP 10 – Creazione del servizio systemd per avviare Odoo

Per garantire che Odoo venga eseguito automaticamente ad ogni avvio del server, è necessario configurarlo come servizio di sistema tramite systemd.
In questo modo sarà possibile avviarlo, arrestarlo e monitorarlo con i classici comandi di gestione dei servizi in Linux.

1. Creare il file del servizio

Apriamo un nuovo file di configurazione per il servizio Odoo:

sudo nano /etc/systemd/system/odoo.service

All’interno inseriamo il seguente contenuto:

[Unit]
Description=Odoo 18 ERP
After=postgresql.service

[Service]
Type=simple
User=odoo
ExecStart=/opt/odoo/odoo-server/odoo-venv/bin/python3 /opt/odoo/odoo-server/odoo-bin -c /etc/odoo/odoo.conf
Restart=on-failure

[Install]
WantedBy=multi-user.target

2. Ricaricare systemd

Ricarichiamo la configurazione dei servizi per far riconoscere a systemd il nuovo file:

sudo systemctl daemon-reload

3. Avviare Odoo

Eseguiamo il servizio per la prima volta:

sudo systemctl start odoo

4. Abilitare l’avvio automatico

Configuriamo Odoo per avviarsi automaticamente con il server:

sudo systemctl enable odoo

5. Controllare lo stato del servizio

Verifichiamo che Odoo sia attivo e funzionante:

sudo systemctl status odoo

Se il servizio è in esecuzione correttamente, lo stato mostrerà active (running).
A questo punto Odoo è raggiungibile sulla porta 8069 e pronto per essere messo dietro un proxy con Nginx.

STEP 11 – Configurazione Nginx e Certbot per HTTPS

Per rendere Odoo accessibile tramite un dominio personalizzato con connessione sicura HTTPS, configureremo il server web Nginx come reverse proxy
e utilizzeremo Certbot per ottenere un certificato SSL gratuito da Let’s Encrypt.

1. Installare Nginx e Certbot

Installiamo il server Nginx e Certbot con il plugin per l’integrazione diretta:

sudo apt install nginx certbot python3-certbot-nginx -y

2. Creare il file di configurazione per Odoo

Creiamo una configurazione dedicata al dominio scelto, ad esempio crm.dominio.it:

sudo nano /etc/nginx/sites-available/odoo

Inseriamo il seguente contenuto:

server {
    server_name crm.dominio.it;

    access_log /var/log/nginx/odoo.access.log;
    error_log /var/log/nginx/odoo.error.log;

    proxy_buffers 16 64k;
    proxy_buffer_size 128k;

    location / {
        proxy_pass http://127.0.0.1:8069;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
    }
}

3. Abilitare il sito e disattivare la configurazione predefinita

sudo ln -s /etc/nginx/sites-available/odoo /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default

4. Verificare la configurazione Nginx

Controlliamo che non ci siano errori di sintassi:

sudo nginx -t

5. Ricaricare Nginx

Applichiamo le modifiche:

sudo systemctl reload nginx

6. Generare il certificato SSL con Certbot

Infine, richiediamo e installiamo automaticamente il certificato SSL per il dominio:

sudo certbot --nginx -dcrm.dominio.it

Seguiamo la procedura guidata, accettiamo i termini e scegliamo l’opzione per il redirect forzato a HTTPS.
A questo punto Odoo sarà disponibile in modo sicuro all’indirizzo:

https://crm.dominio.it

STEP 12 – Creazione del primo database Odoo tramite interfaccia web

Una volta che Odoo è installato, configurato e raggiungibile tramite HTTPS, il passo successivo è la creazione del primo database,
necessario per iniziare a utilizzare la piattaforma ERP.

1. Accedere all’interfaccia web

Apriamo un browser e colleghiamoci all’indirizzo configurato per Odoo:

https://crm.dominio.it

2. Inserire la master password

Per procedere alla creazione di un nuovo database viene richiesta la master password, definita nel file
/etc/odoo/odoo.conf alla voce admin_passwd.
Nella nostra configurazione la password è:

CrystalMoonLight55@

3. Configurare il database

Compiliamo i campi richiesti con i seguenti dati:

  • Database Name: un nome a scelta, ad esempio gestionale
  • Email Admin: l’indirizzo email dell’amministratore, ad esempio info@dominio.it
  • Password Admin: una password sicura per l’utente amministratore di Odoo
  • Language: Italiano
  • Country: Italy

4. Creare il database

Clicchiamo su Create Database per avviare la procedura di configurazione.
Odoo creerà automaticamente le tabelle e i dati di base necessari per il funzionamento del sistema.

A questo punto l’istanza di Odoo è pronta e accessibile tramite l’account amministratore appena creato.
Da qui sarà possibile installare moduli, configurare gli utenti e personalizzare la piattaforma secondo le esigenze aziendali.

Abbiamo realizzato questa guida all’installazione di Odoo 18 inizialmente per uso interno, ma abbiamo deciso di condividerla anche con clienti, partner e amici che vogliono avvicinarsi a questa potente piattaforma ERP.

Esistono diversi approcci per installare e configurare Odoo e le possibilità di personalizzazione sono davvero ampie. Quella che hai appena letto è la nostra procedura base, pensata per garantire stabilità e sicurezza fin dall’inizio.

Se durante l’installazione riscontri difficoltà o hai bisogno di una configurazione più avanzata, il nostro team è a tua disposizione. Puoi contattarci in qualsiasi momento scrivendo a:
 support@gtechgroup.it

Lascia un commento

G Tech Group nasce nel concettualmente nel 2011 e imprenditorialmente nel 2013 da un’idea di Gianluca Gentile il suo fondatore.

Lo scopo era quello di creare la prima Social Web Agency non una classica agenzia web che si occupa di social ma un’aggenzia che mettesse in condivisione le proprie risorse e idee con altre agenzie mettendo anche in comunicazione diverse agenzie creando una vera e propria rete.

Post Recenti