trellis_ca_certificates

Trellis CA сертификаты

Роль Trellis Ansible для добавления пользовательских CA сертификатов в доверенное хранилище OpenSSL. Идеально подходит для использования с управляемыми базами данных Digital Ocean, которые требуют соединений SSL/TLS для MySQL.

Требования

Установка

Добавить в требования

# trellis/galaxy.yml
- name: trellis-ca-certificates
  src: craigpearson.trellis_ca_certificates

Включить в плейбукProvision

Чтобы добавить эту функциональность на своих стендах/производственных серверах, включите эту роль в trellis/server.yml

# trellis/server.yml
...
- name: Сервер WordPress - Установка LEMP стека с PHP 7.3 и MariaDB MySQL
  hosts: web:&{{ env }}
  become: yes
  roles:
    - { role: common, tags: [common] }
    ...
    - { role: sshd, tags: [sshd] }
    - { role: trellis-ca-certificates, tags: [ca-certificates] } # Рекомендуемая точка включения
    - { role: mariadb, tags: [mariadb] }

Если вам требуется эта функциональность на вашем сервере разработки, вы также должны добавить это в trellis/dev.yml

Установить сертификаты для включения

В производственной среде мы добавим в trellis/group_vars/production/main.yml

# trellis/group_vars/production/main.yml
trellis_ca_certificates_trusted:
  # Локальный источник:    trellis/certs/production/example-certificate.crt
  # Удаленная цель:       /usr/local/share/ca-certificates/database.crt
  - name: database
    src: example-certificate.crt

Включить .crt файлы

По умолчанию эта роль ищет ваши сертификаты в trellis/certs, например:

trellis/
├── bin/
├── certs/                            # → Папка с исходными сертификатами
│   ├── development/                  # → Сертификаты для разработки
│   ├── staging/                      # → Сертификаты для стенда
│   └── production/                   # → Сертификаты для продакшн
│       └── example-certificate.crt
└── deploy-hooks/

Теперь все, что осталось сделать - это настроить

Переменные роли

Настроить пользовательские сертификаты

Единственная переменная, необходимая для конфигурации, это список доверенных источников сертификатов. Это должно быть размещено в trellis/group_vars/{{ env }}/main.yml, где {{ env }} это development, staging, или production.

Примечание: Ваш исходный сертификат переименовывается и помещается в место назначения, указанное в name, пример:

# Это пример возможных значений, по умолчанию это []
trellis_ca_certificates_trusted:
  # Локальный источник:    trellis/certs/{{ env }}/example-certificate.crt
  # Удаленная цель:       /usr/local/share/ca-certificates/database.crt
  - name: database
    src: example-certificate.crt
  # Локальный источник:    trellis/certs/{{ env }}/db-master.crt
  # Удаленная цель:       /usr/local/share/ca-certificates/database/master.crt
  - name: database/master
    src: db-master.crt
  # Локальный источник:    trellis/certs/{{ env }}/db-slave.crt
  # Удаленная цель:       /usr/local/share/ca-certificates/database/slave.crt
  - name: database/slave
    src: db-slave.crt

Директория источника

Чтобы сохранить ваши файлы сертификатов в папке, отличной от trellis/certs/{{ env }}:

# По умолчанию trellis/certs/env - где env это development, staging или production
trellis_ca_certificates_local_dir: custom-local-directory/{{ env }}

Директория назначения на удаленном сервере

Если только вы не настроили ваш удаленный OpenSSL для поиска сертификатов в другой директории, вам не нужно менять это

# По умолчанию доверенное хранилище OpenSSL на Ubuntu 18.04
trellis_ca_certificates_remote_dir: /usr/local/share/ca-certificates
О проекте

Trellis role which allows you to add custom CA Certificates to the OpenSSL's trusted store.

Установить
ansible-galaxy install craigpearson/trellis-ca-certificates
Лицензия
gpl-3.0
Загрузки
3126
Владелец
Just another WordPress developer