craigpearson.trellis_ca_certificates

Certificats CA de Trellis

Rôle Ansible de Trellis pour ajouter des certificats CA personnalisés au magasin de confiance d'OpenSSL. Parfait pour une utilisation avec Les bases de données gérées de Digital Ocean qui nécessitent des connexions SSL/TLS pour MySQL.

Exigences

Installation

Ajouter aux exigences

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

Inclure dans le playbook de provisionnement

Pour ajouter cette fonctionnalité sur vos serveurs de staging/production, incluez ce rôle dans trellis/server.yml

# trellis/server.yml
...
- name: Serveur WordPress - Installer la pile LEMP avec PHP 7.3 et MariaDB MySQL
  hosts: web:&{{ env }}
  become: yes
  roles:
    - { role: common, tags: [common] }
    ...
    - { role: sshd, tags: [sshd] }
    - { role: trellis-ca-certificates, tags: [ca-certificates] } # Inclusion recommandée
    - { role: mariadb, tags: [mariadb] }

Si vous avez besoin de cette fonctionnalité sur votre serveur de développement, vous devez également l'ajouter à trellis/dev.yml

Définir les certificats à inclure

En production, nous ajouterions dans trellis/group_vars/production/main.yml

# trellis/group_vars/production/main.yml
trellis_ca_certificates_trusted:
  # Source locale:          trellis/certs/production/example-certificate.crt
  # Destination distante:   /usr/local/share/ca-certificates/database.crt
  - name: database
    src: example-certificate.crt

Inclure les fichiers .crt

Par défaut, ce rôle recherche vos certificats dans trellis/certs, exemple :

trellis/
├── bin/
├── certs/                            # → Dossier source des certificats
│   ├── development/                  # → Certificats de développement
│   ├── staging/                      # → Certificats de staging
│   └── production/                   # → Certificats de production
│       └── example-certificate.crt
└── deploy-hooks/

Il ne vous reste plus qu'à procéder au provisionnement.

Variables du Rôle

Configurer des certificats personnalisés

La seule variable requise pour la configuration est la liste des sources de certificats de confiance. Cela doit être placé dans trellis/group_vars/{{ env }}/main.yml{{ env }} est développement, staging ou production.

Note : Votre certificat source est renommé et placé à destination comme spécifié dans name, exemple :

# Ceci est un exemple de valeurs possibles, cette valeur par défaut est []
trellis_ca_certificates_trusted:
  # Source locale:          trellis/certs/{{ env }}/example-certificate.crt
  # Destination distante:   /usr/local/share/ca-certificates/database.crt
  - name: database
    src: example-certificate.crt
  # Source locale:          trellis/certs/{{ env }}/db-master.crt
  # Destination distante:   /usr/local/share/ca-certificates/database/master.crt
  - name: database/master
  - src: db-master.crt
  # Source locale:          trellis/certs/{{ env }}/db-slave.crt
  # Destination distante:   /usr/local/share/ca-certificates/database/slave.crt
  - name: database/slave
  - src: db-slave.crt

Dossier source

Pour stocker vos fichiers de certificats dans un dossier autre que trellis/certs/{{ env }} :

# Par défaut, c'est trellis/certs/env - où env est développement, staging ou production
trellis_ca_certificates_local_dir: custom-local-directory/{{ env }}

Dossier de destination distante

À moins que vous n'ayez configuré votre OpenSSL distant pour chercher des certificats dans un autre dossier, vous ne devriez pas avoir besoin de changer cela.

# Par défaut, c'est le magasin de confiance d'OpenSSL sur Ubuntu 18.04
trellis_ca_certificates_remote_dir: /usr/local/share/ca-certificates
À propos du projet

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

Installer
ansible-galaxy install craigpearson.trellis_ca_certificates
Licence
gpl-3.0
Téléchargements
3.3k
Propriétaire
Just another WordPress developer