...
2. Для подключения собственных сертификатов SSL необходимо полученные сертификаты/ключи скопировать на сервер с платформой.
Подсказка |
---|
Вам потребуется зарегистрированное доменное имя и публичный IP адрес |
Например:
- создать директорию /etc/ansible-iot/ssl
- создать директорию с именем домена /etc/ansible-iot/ssl/example.com, где example.com доменное имя Вашего сервера. В данную директорию скопировать фалы сертификатов/ключей
- при наличии dhparams.pem скопировать в /etc/ansible-iot/ssl
- создать файл /etc/ansible-iot/ssl/options-ssl-nginx.conf с следующим содержимым:
...
Блок кода | ||||||
---|---|---|---|---|---|---|
| ||||||
... - "/etc/ansible-iot/ssl/example.com/fullchain.pem:/etc/ansible-iot/ssl/sc.eltex-co.ruexample.com/fullchain.pem" - "/etc/ansible-iot/ssl/example.com/privkey.pem:/etc/ansible-iot/ssl/sc.eltex-co.ruexample.com/privkey.pem" - "/etc/ansible-iot/ssl/options-ssl-nginx.conf:/etc/ansible-iot/ssl/options-ssl-nginx.conf" - "/etc/ansible-iot/ssl/ssl-dhparams.pem:/etc/ansible-iot/ssl/ssl-dhparams.pem" ... |
...
Блок кода | ||||||
---|---|---|---|---|---|---|
| ||||||
... {% if not without_web %} web: image: "${REGISTRY_IOT}/iot-double-web:${IOT_RELEASE}" container_name: iot-double-web${CONTAINER_NAME_SUFFIX} {% if not without_core %} depends_on: core: condition: service_started links: - core {% endif %} environment: - ENABLE_CERTBOT=${WEB_ENABLE_CERTBOT} - SERVER_NAME=${WEB_SERVER_NAME} - CERTBOT_EMAIL=${WEB_CERTBOT_EMAIL} - HTTPS_PORT=${WEB_HTTPS_PORT} - TZ=${TIMEZONE} volumes: - "${INSTALL_DIR}/web/etc/nginx/conf.d:/etc/nginx/conf.d" - "${INSTALL_DIR}/web/well-known:/usr/share/eltex-sc-web/www/.well-known" {% if web_enable_certbot %} - "${INSTALL_DIR}/web/etc/letsencrypt:/etc/letsencrypt" - "${INSTALL_DIR}/web/var/log/letsencrypt:/var/log/letsencrypt" {% endif %} - "${INSTALL_DIR}/ssl/certs/eltex-sc-web.crt:/etc/ssl/certs/eltex-sc-web.crt" - "${INSTALL_DIR}/ssl/private/eltex-sc-web.key:/etc/ssl/private/eltex-sc-web.key" - "/etc/ansible-iot/ssl/example.com/fullchain.pem:/etc/ansible-iot/ssl/sc.eltex-co.ruexample.com/fullchain.pem" - "/etc/ansible-iot/ssl/example.com/privkey.pem:/etc/ansible-iot/ssl/sc.eltex-co.ruexample.com/privkey.pem" - "/etc/ansible-iot/ssl/options-ssl-nginx.conf:/etc/ansible-iot/ssl/options-ssl-nginx.conf" - "/etc/ansible-iot/ssl/ssl-dhparams.pem:/etc/ansible-iot/ssl/ssl-dhparams.pem" {% if without_core %} - "${INSTALL_DIR}/web/etc/dnsmasq.d:/etc/dnsmasq.d" extra_hosts: - core:host-gateway {% endif %} ports: - "${WEB_HTTP_PORT}:${WEB_HTTP_PORT}" - "${WEB_HTTPS_PORT}:${WEB_HTTPS_PORT}" restart: unless-stopped {% endif %} networks: default: external: name: iot${NETWORK_NAME_SUFFIX} | ||||||
Подсказка |
Далее необходимо отредактировать содержимое конфигурационного файла Ansible templates/eltex-sc-web.j2, в частности указать путь до сертификатов/ключей SSL для web/Nginx (путь до SSL сертификатов/ключей по умолчанию закомментировать или удалить):
Блок кода | ||||||
---|---|---|---|---|---|---|
| ||||||
...
#ssl_certificate /etc/ssl/certs/eltex-sc-web.crt;
#ssl_certificate_key /etc/ssl/private/eltex-sc-web.key;
ssl_certificate /etc/ansible-iot/ssl/example.com/fullchain.pem;
ssl_certificate_key /etc/ansible-iot/ssl/example.com/privkey.pem;
include /etc/ansible-iot/ssl/options-ssl-nginx.conf;
ssl_dhparam /etc/ansible-iot/ssl/ssl-dhparams.pem;
... |
Подсказка |
---|
Необходимо заменить example.com на доменное имя Вашего сервера |
Для применения настроек необходимо выполнить перезапуск контейнеров с микросервисами:
...