Как настроить Odoo 8 с SSL?

899
forvas

Я установил Odoo на сервере, и он работает хорошо. Сейчас я пытаюсь настроить сайт в Nginx для запуска Odoo с протоколом SSL. Я делал это в другой раз, но сейчас я не могу справиться с этим и не знаю почему.

Я создал этот сайт в Nginx в папке с доступными сайтами (я проверил, что соответствующая символическая ссылка на включенных сайтах в порядке):

upstream backend-odoo { server 127.0.0.1:30081; }  upstream backend-odoo-im { server 127.0.0.1:32081; }  server { listen 80; add_header Strict-Transport-Security max-age=2592000; rewrite ^/.*$ https://$host$request_uri? permanent; }  server { listen 443 default;  # ssl settings ssl on; ssl_certificate /etc/nginx/ssl/cert.pem; ssl_certificate_key /etc/nginx/ssl/key.pem; keepalive_timeout 60;  # proxy header and settings proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forward-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_redirect off;  # odoo log files access_log /var/log/nginx/odoo-access.log; error_log /var/log/nginx/odoo-error.log;  # increase proxy buffer size proxy_buffers 16 64k; proxy_buffer_size 128k;  # force timeouts if the backend dies proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;  # enable data compression gzip on; gzip_min_length 1100; gzip_buffers 4 32k; gzip_types text/plain application/x-javascript text/xml text/css; gzip_vary on;  location / { proxy_pass http://backend-odoo; }  location ~* /web/static/ { # cache static data proxy_cache_valid 200 60m; proxy_buffering on; expires 864000; proxy_pass http://backend-odoo; }  location /longpolling { proxy_pass http://backend-odoo-im; } } 

Я перезагрузил и перезапустил Nginx. Я также изменил следующие параметры в файле конфигурации Odoo:

longpolling_port = 32081 proxy_mode = True secure_cert_file = /etc/nginx/ssl/cert.pem secure_pkey_file = /etc/nginx/ssl/key.pem workers = 33 xmlrpc = True xmlrpc_interface = 127.0.0.1 xmlrpc_port = 30081 xmlrpcs = True xmlrpcs_interface = 127.0.0.1 xmlrpcs_port = 31081 

Я перезапустил сервис Odoo. Я проверил открытые порты на сервере, выполнив команду nmap -sT -O localhostна сервере. Результат:

PORT STATE SERVICE 80/tcp open http 139/tcp open netbios-ssn 443/tcp open https 445/tcp open microsoft-ds 5432/tcp open postgresql 8022/tcp open oa-system 

Для доступа к серверу из браузера я набираю local.example.com в URL. И это остается загруженным навсегда. Я также пытался с https://local.example.com, но тот же результат. Я вижу только сообщение Не удалось загрузить ресурс: net :: ERR_CONNECTION_TIMED_OUT в консоли JS браузера.

Что я забыл? Кто-нибудь может мне помочь? Я очень потерянный сейчас.

1

2 ответа на вопрос

0
Jim Aron

Прежде всего, нам не ясно, какой тип SSL-сертификата вы используете.

Тип вопроса о сертификате SSL был поднят здесь, потому что вы пытаетесь получить доступ к имени субдомена через local.example.com. Если ваш сертификат подтвержден доменом или является стандартным сертификатом SSL, он не будет работать.

Теперь мы можем подумать, что проблема заключается в том, что вы должны добавить свое промежуточное звено и корневой сертификат в Cert.pemпапку при установке SSL-сертификата.

Перейдите с вышеупомянутым решением и попробуйте переустановить свой сертификат. Но вы должны сначала подтвердить свой тип сертификата SSL, потому что вы пытаетесь получить доступ к имени субдомена, и для этого требуется сертификат SSL Wildcard.

Спасибо за ответ! Я создал сертификат SSL с помощью этой команды: `sudo openssl req -x509 -newkey rsa: 2048 -keyout key.pem -out cert.pem -days 365 -nodes`. Должен ли я удалить это? forvas 6 лет назад 0
Мы не уверены, что за проблема с вашим SSL-сертификатом. Мы бы посоветовали вам проверить с помощью инструмента проверки сертификатов SSL. Это даст вам четкое представление о том, отсутствует ли у вас промежуточный сертификат или корневой сертификат. Или вы пытаетесь использовать неправильный тип сертификата SSL. Jim Aron 6 лет назад 0
0
Phoenix Sampras

Использование установки Apache2 с https://letsencrypt.org/

На сайтах включено создание:

 <VirtualHost *:80> ServerName trump4ever.com ServerAlias www.trump4ever.com Redirect / https://trump4ever.com/ </VirtualHost>  <VirtualHost *:443> ServerName trump4ever.com ServerAlias trump4ever.com  LogLevel warn ErrorLog /var/log/apache2/trump4ever.com.error.log CustomLog /var/log/apache2/trump4ever.com.access.log combined  SSLEngine on SSLProxyEngine on SSLCertificateFile /etc/letsencrypt/live/trump4ever.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/trump4ever.com/privkey.pem  ProxyPreserveHost On ProxyPass / http://localhost:9960/ retry=0 ProxyPassReverse / http://localhost:9960/ </VirtualHost>