honzamach.certified

.. _section-role-certified:

Rol certificado

  • Página de Ansible Galaxy <https://galaxy.ansible.com/honzamach/certified>__
  • Repositorio de GitHub <https://github.com/honzamach/ansible-role-certified>__
  • Página de Travis CI <https://travis-ci.org/honzamach/ansible-role-certified>__

El propósito principal de esta rol es la gestión de certificados de servidor. Se encarga de las siguientes tareas:

  • Gestión de un repositorio de certificados de servidor personalizado, manejando cambios en los certificados.
  • Gestión de un repositorio de certificados CA predeterminado.
  • Gestión de un repositorio de claves de certificados CA predeterminadas.
  • Gestión de un repositorio de certificados CA de confianza.

Tabla de Contenidos:

  • :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

Este rol es parte del paquete MSMS <https://github.com/honzamach/msms>__. Algunas características comunes están documentadas en su :ref:manual <section-manual>.

.. _section-role-certified-installation:

Instalación

Para instalar el rol honzamach.certified <https://galaxy.ansible.com/honzamach/certified>__ desde Ansible Galaxy <https://galaxy.ansible.com/>__, utilice una variación del siguiente comando::

ansible-galaxy install honzamach.certified

Para instalar el rol directamente desde GitHub <https://github.com>__ clonando el repositorio ansible-role-certified <https://github.com/honzamach/ansible-role-certified>__, utilice una variación del siguiente comando::

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

Actualmente, la ventaja de usar la clonación directa de Git es la capacidad de actualizar fácilmente el rol cuando se publique una nueva versión.

.. _section-role-certified-dependencies:

Dependencias

Este rol no depende de ningún otro rol.

Los siguientes roles dependen de este rol:

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

.. _section-role-certified-usage:

Uso

Contenido de ejemplo del archivo de inventario inventory::

[servers]
tu-servidor

[servers_certified]
tu-servidor

Contenido de ejemplo del archivo de la hoja de roles role_playbook.yml::

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

Uso de ejemplo::

# Ejecutar todo:
ansible-playbook --ask-vault-pass --inventory inventory role_playbook.yml

Se recomienda seguir estos principios de configuración:

  • Crear/editar el archivo inventory/group_vars/all/vars.yml y definir algunos valores predeterminados para todos tus servidores gestionados::

      # Esto es obligatorio para que el mecanismo de dependencia suave funcione.
      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
    
  • Usar los archivos inventory/host_vars/[tu-servidor]/vars.yml para personalizar la configuración para servidores particulares. Consulta la sección :ref:section-role-certified-variables para todas las opciones disponibles.

  • Usar el directorio inventory/group_files/servers/honzamach.certified/ca_certs para proporcionar certificados de autoridad de certificación adicionales que se cargarán en todos los servidores. Estos terminarán en los directorios :envvar:hm_certified__cert_ca_dir y :envvar:hm_certified__trustedcert_ca_dir.

  • Usar el directorio inventory/host_files/[tu-servidor]/honzamach.certified/host_certs para proporcionar certificados específicos para un servidor particular. Estos terminarán en el directorio :envvar:hm_certified__cert_host_dir. No olvides cifrar al menos las claves de los certificados con :ref:ansible-vault <section-overview-vault>.

.. _section-role-certified-variables:

Variables de configuración

Variables internas del rol

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

.. envvar:: hm_certified__cert_host_dir

Ruta al directorio de certificados del host. Este directorio contendrá el certificado de servidor personalizado.
Para que el mecanismo de dependencia suave funcione, esto debe definirse globalmente,
de lo contrario esta variable estará indefinida.

* *Tipo de dato:* ``string``
* *Predeterminado:* ``/etc/ssl/servercert``

.. envvar:: hm_certified__cert_ca_dir

Ruta al repositorio de certificados CA.

* *Tipo de dato:* ``string``
* *Predeterminado:* ``/etc/ssl/certs``

.. envvar:: hm_certified__cert_key_dir

Ruta al repositorio de claves privadas de certificados.

* *Tipo de dato:* ``string``
* *Predeterminado:* ``/etc/ssl/private``

.. envvar:: hm_certified__trustedcert_ca_dir

Ruta al repositorio de certificados CA de confianza. Estos certificados pueden ser cualquier cosa
que uses y confíes en tu organización, incluso certificados autofirmados para alguna
aplicación interna personalizada. Un ejemplo de uso es la configuración `ca_dir() <https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.25/administration-guide/ca_dir>`__
del demonio syslog-ng <https://www.syslog-ng.com/>, que típicamente no
señala al directorio general ``/etc/ssl/certs``, sino a un directorio que contiene
un subconjunto de autoridades de certificación utilizadas por tus servidores de logs.

* *Tipo de dato:* ``string``
* *Predeterminado:* ``/etc/ssl/trusted_ca``

.. _section-role-certified-files:

Archivos gestionados

Este rol sube certificados a directorios remotos de acuerdo a la configuración :ref:variables <section-role-certified-variables>. Por defecto, estos directorios son:

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

.. _section-role-certified-author:

Autor y licencia

| Copyright: (C) desde 2019 Honza Mach honza.mach.ml@gmail.com | Autor: Honza Mach honza.mach.ml@gmail.com | El uso de este rol está gobernado por la licencia MIT, consulta el archivo LICENSE. |

Acerca del proyecto

Ansible role for managing certificates on all target servers.

Instalar
ansible-galaxy install honzamach.certified
Licencia
mit
Descargas
122
Propietario