caermeglaeddyv.ansible_role_cfssl

Rôle Ansible : CFSSL

Ce rôle est utilisé pour générer des profils et des certificats cfssl.

Pour l'instant, il fait le suivant :

  • génère une autorité de certification (CA) cfssl et des certificats de serveur.

Exigences

Ce ne sont pas des exigences strictes et il se peut qu'il ne fonctionne pas avec d'autres versions que celles testées. De toute façon, n'hésitez pas à tester vous-même, à suggérer l'ajout de nouvelles fonctionnalités et à contribuer.

Le rôle a été testé avec :

  • Ansible version >= 2.8.6

cfssl et cfssljson doivent être installés sur l’hôte local si la variable cfssl_create est définie sur True (par défaut).

Variables de rôle

Les variables et leurs descriptions sont copiées depuis defaults/main.yml


# Variable commune à la plupart des projets, utilisée dans
# les fichiers de configuration ou les noms de fichiers/répertoires.
# Par défaut, utilisée comme référence pour la variable cfssl_project_dir :
cfssl_project_name: test

# Variable commune à la plupart des projets, utilisée comme
# répertoire de travail du projet sur l’hôte local pour le rôle.
# Actuellement utilisée pour stocker les certificats créés :
cfssl_project_dir: "{{ cfssl_project_name }}"

# Nom commun pour la CA racine :
cfssl_ca_cn: "cfssl racine ca"

# Algorithme de clé pour la CA racine :
cfssl_ca_key_algo: "rsa"

# Taille de la clé pour la CA racine :
cfssl_ca_key_size: 4096

# Noms distingués pour la CA racine :
cfssl_ca_names:
- c: "Neverland"
  l: "Rivia"
  o: "Witchers"
  ou: "Caer Morhen"

# Durée de validité du certificat serveur en heures :
cfssl_server_expiry: "17520h"

# Types d'utilisation des certificats :
cfssl_server_usages:
- signature numérique
- chiffrement de clé
- authentification du serveur

# Nom commun pour le certificat serveur :
cfssl_server_cn: "serveur"

# Algorithme de clé pour le certificat serveur :
cfssl_server_key_algo: "rsa"

# Taille de la clé pour le certificat serveur :
cfssl_server_key_size: 2048

# Noms distingués pour le certificat serveur :
cfssl_server_names:
- c: "Neverland"
  l: "Rivia"
  o: "Witchers"
  ou: "Caer Morhen"

# Noms d'hôtes, noms DNS et/ou adresses IP pour lesquelles
# le certificat serveur sera signé. Si vos noms d'hôtes
# et les adresses IP de votre serveur sont différents de ceux de l'inventaire,
# fournissez-les manuellement en utilisant cette variable :
cfssl_server_hosts: []

# Préfixe qui sera ajouté à chaque nom de fichier généré :
cfssl_prefix: test

Dépendances

cfssl et cfssljson doivent être installés sur l’hôte local si la variable cfssl_create est définie sur True (par défaut).

Exemple de Playbook

---
- hosts: localhost
  gather_facts: false
  become: no
  tasks:
  - name: Vérifier la version d'ansible >=2.8.6
    assert:
      msg: Ansible doit être v2.8.6 ou supérieur
      that:
      - ansible_version.string is version("2.8.6", ">=")
    tags:
    - check
  vars:
    ansible_connection: local

- hosts: all
  become: yes
  tasks:
  - import_role:
      name: cfssl

Des exemples plus détaillés (inventaires, playbooks, etc.) de ce rôle et d'autres se trouvent ici.

Il est fortement recommandé de commencer vos tests de déploiement à partir de là, surtout si vous utilisez Google Cloud Platform ou VMware vCenter comme infrastructure, car ce dépôt contient des exemples de Packer et de Terraform pour créer des templates et déployer des machines sur ces plateformes.

Licence

Apache 2.0

Informations sur l'auteur

Copyright 2020 caermeglaeddyv

À propos du projet

Linux / Kubernetes Administrator

Installer
ansible-galaxy install caermeglaeddyv.ansible_role_cfssl
Licence
apache-2.0
Téléchargements
148
Propriétaire