honzamach.certified

.. _section-role-certified:

Rôle certifié

  • Page Ansible Galaxy <https://galaxy.ansible.com/honzamach/certified>__
  • Dépôt GitHub <https://github.com/honzamach/ansible-role-certified>__
  • Page Travis CI <https://travis-ci.org/honzamach/ansible-role-certified>__

L'objectif principal de ce rôle est la gestion des certificats de serveur. Il s'occupe des tâches suivantes :

  • Gestion d'un dépôt de certificats de serveur personnalisés, en gérant les changements de certificats.
  • Gestion du dépôt de certificats CA par défaut.
  • Gestion du dépôt de clés de certificats CA par défaut.
  • Gestion du dépôt de certificats CA de confiance.

Table des matières :

  • :ref:section-role-certified-installation
  • :ref:section-role-certified-dependencies
  • :ref:section-role-certified-usage
  • :ref:section-role-certified-variables
  • :ref:section-role-certified-files
  • :ref:section-role-certified-author

Ce rôle fait partie du paquet MSMS <https://github.com/honzamach/msms>__. Certaines fonctionnalités communes sont documentées dans son :ref:manuel <section-manual>.

.. _section-role-certified-installation:

Installation

Pour installer le rôle honzamach.certified <https://galaxy.ansible.com/honzamach/certified>__ depuis Ansible Galaxy <https://galaxy.ansible.com/>__, veuillez utiliser une variation de la commande suivante ::

ansible-galaxy install honzamach.certified

Pour installer le rôle directement depuis GitHub <https://github.com>__ en clonant le dépôt ansible-role-certified <https://github.com/honzamach/ansible-role-certified>__, veuillez utiliser une variation de la commande suivante ::

git clone https://github.com/honzamach/ansible-role-certified.git honzamach.certified

Actuellement, l'avantage de l'utilisation du clonage direct de Git est la possibilité de mettre à jour facilement le rôle lorsque de nouvelles versions sortent.

.. _section-role-certified-dependencies:

Dépendances

Ce rôle ne dépend d'aucun autre rôle.

Les rôles suivants dépendent de ce rôle :

  • :ref:alchemist <section-role-alchemist>
  • :ref:griffin <section-role-griffin> [SOFT]
  • :ref:griffin_watchee <section-role-griffin-watchee> [SOFT]
  • :ref:logged <section-role-logged>
  • :ref:logserver <section-role-logserver>
  • :ref:postgresql <section-role-postgresql> [SOFT]

.. _section-role-certified-usage:

Utilisation

Exemple de contenu du fichier d'inventaire inventory ::

[servers]
votre-serveur

[servers_certified]
votre-serveur

Exemple de contenu du fichier playbook de rôle role_playbook.yml ::

- hosts: servers_certified
  remote_user: root
  roles:
    - role: honzamach.certified
  tags:
    - role-certified

Exemple d'utilisation ::

# Exécuter tout :
ansible-playbook --ask-vault-pass --inventory inventory role_playbook.yml

Il est recommandé de suivre ces principes de configuration :

  • Créez/modifiez le fichier inventory/group_vars/all/vars.yml et définissez des valeurs par défaut sensées pour tous vos serveurs gérés ::

      # Ceci est obligatoire pour que le mécanisme de dépendance douce fonctionne.
      hm_certified__cert_host_dir: /etc/ssl/servercert
      hm_certified__cert_ca_dir: /etc/ssl/certs
      hm_certified__cert_key_dir: /etc/ssl/private
      hm_certified__trustedcert_ca_dir: /etc/ssl/trusted_ca
    
  • Utilisez les fichiers inventory/host_vars/[votre-serveur]/vars.yml pour personnaliser les paramètres pour des serveurs particuliers. Veuillez voir la section :ref:section-role-certified-variables pour toutes les options disponibles.

  • Utilisez le répertoire inventory/group_files/servers/honzamach.certified/ca_certs pour fournir des certificats d'autorité de certification supplémentaires à télécharger sur tous les serveurs. Ceux-ci se retrouveront dans les répertoires :envvar:hm_certified__cert_ca_dir et :envvar:hm_certified__trustedcert_ca_dir.

  • Utilisez le répertoire inventory/host_files/[votre-serveur]/honzamach.certified/host_certs pour fournir des certificats spécifiques à un serveur particulier. Ceux-ci se retrouveront dans le répertoire :envvar:hm_certified__cert_host_dir. N'oubliez pas de chiffrer au moins les clés de certificats avec :ref:ansible-vault <section-overview-vault>.

.. _section-role-certified-variables:

Variables de configuration

Variables internes au rôle

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. envvar:: hm_certified__cert_host_dir

Chemin vers le répertoire des certificats de l'hôte. Ce répertoire contiendra le certificat
personnalisé du serveur. Pour que le mécanisme de dépendance douce fonctionne, cela doit être défini de manière globale,
sinon cette variable sera indéfinie.

* *Type:* ``string``
* *Par défaut:* ``/etc/ssl/servercert``

.. envvar:: hm_certified__cert_ca_dir

Chemin vers le dépôt de certificats CA.

* *Type:* ``string``
* *Par défaut:* ``/etc/ssl/certs``

.. envvar:: hm_certified__cert_key_dir

Chemin vers le dépôt des clés de certificats privées.

* *Type:* ``string``
* *Par défaut:* ``/etc/ssl/private``

.. envvar:: hm_certified__trustedcert_ca_dir

Chemin vers le dépôt de certificats CA de confiance. Ces certificats peuvent être tous ceux
que vous utilisez et en qui vous avez confiance dans votre organisation, même des certificats auto-signés pour certaines
applications internes personnalisées. Un exemple d'utilisation est un paramètre de configuration
`ca_dir() <https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.25/administration-guide/ca_dir>`__
du démon syslog-ng <https://www.syslog-ng.com/>`, que vous ne pointez typiquement pas vers le répertoire général
``/etc/ssl/certs``, mais vers un répertoire contenant un sous-ensemble d'autorités de certification utilisées par vos serveurs de log.

* *Type:* ``string``
* *Par défaut:* ``/etc/ssl/trusted_ca``

.. _section-role-certified-files:

Fichiers gérés

Ce rôle télécharge des certificats vers des répertoires distants selon la configuration :ref:variables <section-role-certified-variables>. Par défaut, ces répertoires sont les suivants :

  • /etc/ssl/servercert [COPIER]
  • /etc/ssl/certs [COPIER]
  • /etc/ssl/trusted_ca [COPIER]

.. _section-role-certified-author:

Auteur et licence

| Droit d'auteur : (C) depuis 2019 Honza Mach honza.mach.ml@gmail.com | Auteur : Honza Mach honza.mach.ml@gmail.com | L'utilisation de ce rôle est régie par la licence MIT, voir le fichier LICENSE. |

À propos du projet

Ansible role for managing certificates on all target servers.

Installer
ansible-galaxy install honzamach.certified
Licence
mit
Téléchargements
122
Propriétaire