pogosoftware.self_signed_cert

Certificado Autogenerado

Este rol de Ansible permite generar certificados autogenerados. Como resultado, generará 3 certificados pem con claves: ca, cliente y servidor. Además, también generará 2 certificados pfx para el cliente y el servidor.

Variables Generales

Directorio de certificados

self_signed_cert_dir: /etc/certs/

Este es un directorio donde se guardarán los certificados.

URL de descarga de cfssl y cfssl_json

self_signed_cert_cfssl_url: https://pkg.cfssl.org/R1.2/cfssl_linux-amd64
self_signed_cert_cfssl_json_url: https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64

Puedes especificar qué versión de cfssl y cfssl_tool deseas descargar.

Perfiles

self_signed_cert_profiles:
  - name: servidor
    expirity: 8760h
    usos:
      - firma
      - cifrado de clave
      - autenticación de servidor
      - autenticación de cliente

cfssl soporta múltiples perfiles. Cada perfil tiene un nombre único. La fecha de expiración determina cuándo expira el certificado generado con este perfil. Los usos determinan el propósito del certificado. Los valores permitidos son:

  • Usos de clave: firma, firma digital, compromiso de contenido, cifrado de clave, acuerdo de clave, cifrado de datos, firma de certificado, firma crl, cifrado solo, descifrado solo.
  • Usos de clave extendidos: cualquier, autenticación de servidor, autenticación de cliente, firma de código, protección de correo electrónico, s/mime, sistema final ipsec, túnel ipsec, usuario ipsec, sellado de tiempo, firma ocsp, microsoft sgc, netscape sgc.

Autoridad Certificadora

self_signed_cert_ca_certs:
  - name: ejemplo-ca
    cn: ejemplo.com
    key_algo: rsa
    key_size: 2048
    country: UE
    location: Internet
    organisation: Ejemplo
    organisation_unit: IT
    state: internet
    trust_ca_cert: false

La autoridad certificadora key_algo puede tener uno de los valores: ECDSA256, RSA. trust_ca_cert inyectará certificados ca en los certificados de raíz confiables.

Certificados

self_signed_cert_certs:
  - name: servidor
    profile: servidor
    ca_name: ejemplo-ca
    export_to_pfx: true
    cn: ejemplo.com
    hosts:
      - ejemplo.com
      - www.ejemplo.com
    key_algo: rsa
    key_size: 2048
    country: UE
    location: Internet
    organisation: Ejemplo
    organisation_unit: IT
    state: internet

Ejemplo de Playbook

- hosts: localhost
  become: yes
  roles:
    - self-signed-cert
  vars:
    self_signed_cert_cfssl_url: https://github.com/cloudflare/cfssl/releases/download/v1.4.1/cfssl_1.4.1_linux_amd64
    self_signed_cert_cfssl_json_url: https://github.com/cloudflare/cfssl/releases/download/v1.4.1/cfssljson_1.4.1_linux_amd64

    self_signed_cert_dir: /etc/certs/

    self_signed_cert_profiles:
      - name: servidor
        expirity: 8760h
        usos:
          - firma
          - cifrado de clave
          - autenticación de servidor
          - autenticación de cliente
      - name: cliente
        expirity: 8760h
        usos:
          - firma
          - cifrado de clave
          - autenticación de cliente

    self_signed_cert_ca_certs:
      - name: ejemplo-ca
        cn: ejemplo.com
        key_algo: rsa
        key_size: 2048
        country: UE
        location: Internet
        organisation: Ejemplo
        organisation_unit: IT
        state: internet
        trust_ca_cert: false

    self_signed_cert_certs:
      - name: servidor
        profile: servidor
        ca_name: ejemplo-ca
        export_to_pfx: true
        cn: ejemplo.com
        hosts:
          - ejemplo.com
          - www.ejemplo.com
        key_algo: rsa
        key_size: 2048
        country: UE
        location: Internet
        organisation: Ejemplo
        organisation_unit: IT
        state: internet
      - name: cliente
        profile: cliente
        ca_name: ejemplo-ca
        export_to_pfx: true
        cn: ejemplo.com
        hosts:
          - ejemplo.com
          - www.ejemplo.com
        key_algo: rsa
        key_size: 2048
        country: UE
        location: Internet
        organisation: Ejemplo
        organisation_unit: IT
        state: internet
Acerca del proyecto

This ansible role allows generating a self-signed certificates.

Instalar
ansible-galaxy install pogosoftware.self_signed_cert
Licencia
mit
Descargas
514
Propietario