buluma.openssl

Rôle Ansible openssl

Créer des certificats openssl.

GitHub Version Problèmes Demandes de tirage Téléchargements
github Version Issues PullRequests Ansible Role

Exemple de Playbook

Cet exemple est tiré de molecule/default/converge.yml et est testé à chaque push, demande de tirage et version.

---
- name: Convergence
  hosts: all
  become: true
  gather_facts: true

  pre_tasks:
    - name: Mettre à jour le cache apt.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false

    - name: Vérifier si le fichier EXTERNALLY-MANAGED de python3.11 existe
      ansible.builtin.stat:
        path: /usr/lib/python3.11/EXTERNALLY-MANAGED
      register: externally_managed_file_py311

    - name: Renommer le fichier EXTERNALLY-MANAGED de python3.11 s'il existe
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py311.stat.exists
      args:
        creates: /usr/lib/python3.11/EXTERNALLY-MANAGED.old

    - name: Vérifier si le fichier EXTERNALLY-MANAGED de python3.12 existe
      ansible.builtin.stat:
        path: /usr/lib/python3.12/EXTERNALLY-MANAGED
      register: externally_managed_file_py312

    - name: Renommer le fichier EXTERNALLY-MANAGED de python3.12 s'il existe
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.12/EXTERNALLY-MANAGED /usr/lib/python3.12/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py312.stat.exists
      args:
        creates: /usr/lib/python3.12/EXTERNALLY-MANAGED.old

  roles:
    - role: buluma.openssl
      openssl_items:
        - name: ma_clé_openssl
          common_name: mon.exemple.com

La machine doit être préparée. Dans CI, cela se fait avec molecule/default/prepare.yml:

---
- name: Préparation
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: buluma.bootstrap
    - role: buluma.buildtools
    - role: buluma.epel
    - role: buluma.python_pip

Voir aussi une explication complète et un exemple sur l'utilisation de ces rôles.

Variables de rôle

Les valeurs par défaut des variables sont définies dans defaults/main.yml:

---
# fichier de valeurs par défaut pour openssl

# Vous pouvez passer une liste de clés/csr/crt/p12 ssl à générer :
# openssl_items:
#   - name: ma_clé_openssl
#     common_name: mon.exemple.com

# Vous pouvez changer les chemins où stocker chaque type d'objet (clé, csr, crt,
# p12 et pkcs12). Ce n'est pas nécessaire, par défaut, l'emplacement régulier de la distribution est défini dans `vars/main.yml`.

# Ce répertoire stocke des objets sensibles. (clé, p12 et pkcs12)
openssl_key_directory: "{{ _openssl_key_directory[ansible_os_family] | default(_openssl_key_directory['default']) }}"

# Ce répertoire stocke des objets publics, non persistants. (csr)
openssl_csr_directory: "{{ _openssl_csr_directory[ansible_os_family] | default(_openssl_csr_directory['default']) }}"

# Ce répertoire stocke des objets publics, persistants. (crt)
openssl_crt_directory: "{{ _openssl_crt_directory[ansible_os_family] | default(_openssl_crt_directory['default']) }}"

# Vous pouvez changer le propriétaire et le groupe des fichiers créés par ce rôle.
openssl_file_owner: root
openssl_file_group: root

Exigences

État des rôles utilisés

Les rôles suivants sont utilisés pour préparer un système. Vous pouvez préparer votre système d'une autre manière.

Exigence GitHub Version
buluma.bootstrap Ansible Molecule Version
buluma.buildtools Ansible Molecule Version
buluma.epel Ansible Molecule Version
buluma.python_pip Ansible Molecule Version

Contexte

Ce rôle fait partie de nombreux rôles compatibles. Consultez la documentation de ces rôles pour plus d'informations.

Voici un aperçu des rôles associés :

dépendances

Compatibilité

Ce rôle a été testé sur ces images de conteneurs:

conteneur tags
Alpine tous
EL 8, 9
Debian tous
Fedora 38, 39, 40
opensuse tous
Ubuntu focal, bionic, jammy, noble

La version minimale d'Ansible requise est 2.17, des tests ont été effectués sur :

  • La version précédente.
  • La version actuelle.
  • La version de développement.

Si vous trouvez des problèmes, veuillez les signaler sur GitHub

Journal des modifications

Historique du rôle

Licence

Apache-2.0

Informations sur l'auteur

Shadow Walker

À propos du projet

Make openssl certificates.

Installer
ansible-galaxy install buluma.openssl
Licence
apache-2.0
Téléchargements
582.3k
Propriétaire
DevOps Engineer