androide

Configura odoo con nginx come proxy inverso

Configuring nginx as a reverse proxy for web application

Configuring nginx as a reverse proxy for web application

Sommario:

Anonim

Odoo è uno dei software aziendali più famosi al mondo ed è ricco di molteplici moduli utili come CRM (Customer Relationship Management), punto vendita, gestione progetti, gestione scorte, fatturazione automatizzata, contabilità, e-commerce, gestione scorte e molto di piu.

Odoo viene fornito con un server Web incorporato, ma nella maggior parte dei casi si consiglia di avere un proxy inverso di fronte che fungerà da intermediario tra i client e il server Odoo.

Questa guida fornisce istruzioni su come utilizzare Nginx come terminazione SSL e proxy inverso a Odoo.

Prerequisiti

Assicurati di aver soddisfatto i seguenti prerequisiti prima di continuare con questo tutorial:

  • Hai installato Odoo, altrimenti puoi trovare le istruzioni qui Hai un nome di dominio che punta alla tua installazione di Odoo. useremo odoo.example.com . odoo.example.com Nginx installato, se non controlla questa guida. Hai un certificato SSL installato per il tuo dominio. Puoi installare un certificato SSL Let's Encrypt gratuito seguendo questa guida.

Configura Nginx come proxy inverso

L'uso di un proxy inverso offre molti vantaggi come Bilanciamento del carico, Terminazione SSL, Memorizzazione nella cache, Compressione, Pubblicazione di contenuti statici e altro ancora.

In questo esempio configureremo la terminazione SSL, il reindirizzamento da HTTP a HTTPS, la cache dei file statici e abiliteremo la compressione GZip.

Di seguito è riportato un file di configurazione nginx di esempio (blocco server) che è possibile utilizzare per l'installazione di Odoo. Tutte le richieste HTTP verranno reindirizzate a

Apri il tuo editor di testo e crea il seguente file:

sudo nano /etc/nginx/sites-enabled/odoo.example.com /etc/nginx/sites-enabled/odoo.example.com

upstream odoo { server 127.0.0.1:8069; } upstream odoo-chat { server 127.0.0.1:8072; } server { server_name odoo.example.com; return 301 https://odoo.example.com$request_uri; } server { listen 443 ssl http2; server_name odoo.example.com; ssl_certificate /path/to/signed_cert_plus_intermediates; ssl_certificate_key /path/to/private_key; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_dhparam /path/to/dhparam.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS'; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security max-age=15768000; ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /path/to/root_CA_cert_plus_intermediates; resolver 8.8.8.8 8.8.4.4; access_log /var/log/nginx/odoo.access.log; error_log /var/log/nginx/odoo.error.log; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; location / { proxy_redirect off; proxy_pass http://odoo; } location /longpolling { proxy_pass http://odoo-chat; } location ~* /web/static/ { proxy_cache_valid 200 90m; proxy_buffering on; expires 864000; proxy_pass http://odoo; } # gzip gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript; gzip on; }

Non dimenticare di sostituire odoo.example.com con il tuo dominio Odoo e impostare il percorso corretto per i file del certificato SSL.

Una volta terminato, salva il file e riavvia il servizio Nginx con:

sudo systemctl restart nginx

Cambia l'interfaccia di associazione

Questo passaggio è facoltativo, ma è una buona pratica di sicurezza.

Per impostazione predefinita, il server Odoo ascolta la porta 8069 su tutte le interfacce. Se si desidera disabilitare l'accesso diretto all'istanza di Odoo, aprire il file di configurazione di Odoo e aggiungere le due righe seguenti alla fine del file:

/etc/odoo.conf

xmlrpc_interface = 127.0.0.1 netrpc_interface = 127.0.0.1

Salvare il file di configurazione e riavviare il server Odoo per rendere effettive le modifiche:

systemctl restart odoo

Conclusione

In questo tutorial hai imparato come configurare Nginx come proxy per la tua applicazione Odoo. Puoi anche leggere come configurare i backup automatici di Odoo

odoo nginx proxy ssl