Android

Konfigurera odoo med nginx som en omvänd proxy

How to Setup Odoo (OpenERP) 9 using Nginx in Linux

How to Setup Odoo (OpenERP) 9 using Nginx in Linux

Innehållsförteckning:

Anonim

Odoo är en av de mest populära affärsmjukvarorna i världen och den är fullpakad med flera användbara moduler som kundrelationshantering (CRM), försäljningsstället, projektledning, lagerhantering, automatiserad fakturering, redovisning, e-handel, lagerhantering och mycket mer.

Odoo kommer med en inbyggd webbserver, men i de flesta fall rekommenderas det att ha en omvänd proxy framför sig som kommer att fungera som en mellanhand mellan klienterna och Odoo-servern.

Den här guiden innehåller instruktioner om hur du använder Nginx som en SSL-terminering och omvänd proxy till Odoo.

förutsättningar

Se till att du har uppfyllt följande förutsättningar innan du fortsätter med denna handledning:

  • Du har Odoo installerat, om inte kan du hitta instruktionerna här. Du har ett domännamn som pekar på din Odoo-installation. Vi kommer att använda odoo.example.com Du har Nginx installerat, om inte kontrollera den här guiden. Du har ett SSL-certifikat installerat för din domän. Du kan installera ett gratis Let's Encrypt SSL-certifikat genom att följa den här guiden.

Konfigurera Nginx som en omvänd proxy

Att använda en omvänd proxy ger dig många fördelar som belastningsbalansering, SSL-avslutning, caching, komprimering, servering av statisk innehåll och mer.

I det här exemplet kommer vi att konfigurera SSL Termination, HTTP till HTTPS omdirigering, cache de statiska filerna och aktivera GZip-komprimering.

Nedan visas ett exempel på en nginx-konfigurationsfil (serverblock) som du kan använda för din Odoo-installation. Alla HTTP-förfrågningar kommer att omdirigeras till

Öppna din textredigerare och skapa följande fil:

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; }

Glöm inte att ersätta odoo.example.com med din Odoo-domän och ställa in rätt sökväg för SSL-certifikatfilerna.

När du är klar spara filen och starta om Nginx-tjänsten med:

sudo systemctl restart nginx

Ändra bindningsgränssnittet

Detta steg är valfritt, men det är en bra säkerhetspraxis.

Som standard lyssnar Odoo-servern på port 8069 på alla gränssnitt. Om du vill inaktivera direkt åtkomst till din Odoo-instans öppnar du Odoo-konfigurationsfilen och lägger till följande två rader i slutet av filen:

/etc/odoo.conf

xmlrpc_interface = 127.0.0.1 netrpc_interface = 127.0.0.1

Spara konfigurationsfilen och starta om Odoo-servern så att ändringarna träder i kraft:

systemctl restart odoo

Slutsats

I denna handledning lärde du dig hur du konfigurerar Nginx som en proxy till din Odoo-applikation. Du kan också läsa om hur du ställer in automatiska Odoo-säkerhetskopior

odoo nginx proxy ssl