trombik.x509_certificate

trombik.x509_certificate

Verwaltet X509-Geheimnisse und/oder öffentliche Schlüssel. Die Rolle setzt voraus, dass Sie bereits einen gültigen geheimen Schlüssel oder signierten öffentlichen Schlüssel haben. Die Rolle erstellt oder verwaltet kein CSR.

Anforderungen

Die Rolle verwendet die ansible-Sammlung. Siehe requirements.yml.

Rollenvariablen

Variable Beschreibung Standard
x509_certificate_dir Pfad zum Standardverzeichnis für Zertifikate und Schlüssel {{ __x509_certificate_dir }}
x509_certificate_packages Liste der Pakete, die installiert werden müssen, um Schlüssel zu verwalten, z. B. Zertifikate zu validieren {{ __x509_certificate_packages }}
x509_certificate_default_owner Standardbesitzer der Schlüssel {{ __x509_certificate_default_owner }}
x509_certificate_default_group Standardgruppe der Schlüssel {{ __x509_certificate_default_group }}
x509_certificate_additional_packages Liste zusätzlicher Pakete, die installiert werden. Diese werden vor der Verwaltung der Zertifikate und Schlüssel installiert. Nützlich, wenn der Besitzer der Dateien nicht existiert, aber später von einer anderen Rolle oder Aufgabe erstellt werden soll. Bei der Verwendung dieser Variable ist Vorsicht geboten. Wenn ein Paket von dieser Rolle installiert wird, wird die Paketinstallation nach dieser Rolle nicht ausgelöst, was unerwartete Auswirkungen haben kann. In diesem Fall erstellen Sie den Benutzer und die Gruppe selbst []
x509_certificate_validate_command Befehl zur Validierung von Zertifikat und Schlüsseln. Der Befehl muss in x509_certificate_validate_command_secret und x509_certificate_validate_command_public als Schlüssel definiert sein openssl
x509_certificate_validate_command_secret Dict-Befehl zur Validierung des geheimen Schlüssels (siehe unten) {"openssl"=>"openssl rsa -check -in %s"}
x509_certificate_validate_command_public Dict-Befehl zur Validierung des öffentlichen Schlüssels (siehe unten) {"openssl"=>"openssl x509 -noout -in %s"}
x509_certificate Schlüssel, die verwaltet werden sollen (siehe unten) []
x509_certificate_debug_log Aktiviert das Protokollieren von sensiblen Daten während des Spiels, wenn ja. Beachten Sie, dass das Protokoll den Wert von x509_certificate, einschließlich des geheimen Schlüssels, anzeigt, wenn ja nein
x509_certificate_update_ca_store_command Befehl, der ausgeführt wird, wenn der Root-CA-Zertifikatspeicher aktualisiert wird {{ __x509_certificate_update_ca_store_command }}
x509_certificate_cfssl_scheme URL-Scheme-Teil der cfssl-URL https
x509_certificate_cfssl_host Host-Teil der cfssl-URL 127.0.0.1
x509_certificate_cfssl_port Port von cfssl 8888
x509_certificate_cfssl_endpoint_base_path Pfadteil der cfssl-URL /api/v1/cfssl
x509_certificate_cfssl_retries Anzahl der Versuche beim Verbinden mit cfssl 3
x509_certificate_cfssl_delay Verzögerung in Sekunden zwischen den Versuchen beim Verbinden mit cfssl 10
x509_certificate_cfssl_uri_param Zusätzliche Parameter im Dict, die beim Verbinden mit cfssl an das ansible uri-Modul übergeben werden {}
x509_certificate_cfssl_certificate_newcert Eine Liste von Zertifikaten, die an cfssl gesendet werden sollen. Siehe unten []
x509_certificate_cfssl_info Siehe unten []
x509_certificate_commands Siehe unten []

x509_certificate_validate_command_secret

Diese Variable ist ein Dict. Der Schlüssel ist der Befehlsname und der Wert wird verwendet, um geheime Schlüsseldateien bei der Erstellung zu validieren.

x509_certificate_validate_command_public

Diese Variable ist ein Dict. Der Schlüssel ist der Befehlsname und der Wert wird verwendet, um öffentliche Zertifikatsdateien bei der Erstellung zu validieren.

x509_certificate

Diese Variable ist eine Liste von Dicts. Schlüssel und Werte werden unten erklärt.

Schlüssel Wert Pflicht?
name Beschreibender Name der Schlüssel ja
state einer von present oder absent. Die Rolle erstellt den Schlüssel, wenn present, und entfernt den Schlüssel, wenn absent ja
public ein Dict, das ein öffentliches Zertifikat darstellt nein
secret ein Dict, das einen geheimen Schlüssel darstellt nein

public und secret in x509_certificate

public und secret müssen ein Dict enthalten. Das Dict wird unten erklärt.

Schlüssel Wert Pflicht?
path Pfad zur Datei. Wenn nicht definiert, wird die Datei im x509_certificate_dir unter $name.pem erstellt nein
owner Besitzer der Datei (Standard ist x509_certificate_default_owner) nein
group Gruppe der Datei (Standard ist x509_certificate_default_group) nein
mode Berechtigung der Datei (Standard ist 0444, wenn die Datei ein öffentliches Zertifikat ist, 0400, wenn die Datei ein geheimer Schlüssel ist) nein
key der Inhalt des Schlüssels nein
notify Ein String oder eine Liste von Namen von Handlern, die benachrichtigt werden sollen nein

x509_certificate_commands

Diese Variable ist eine Liste von Dicts. Jedes Listenelement ist eine Art Mischung aus ansible.builtin.command und ansible.builtin.file. Das Element wird zuerst an ansible.builtin.command übergeben, das erwartet wird, um eine Datei zu erstellen, und die Datei wird mit dem angegebenen owner, group und mode angepasst.

Die Variable ist für die beliebige Umwandlung von Dateiformaten gedacht, wie z. B. einen geheimen Schlüssel im PKCS#1 in einen anderen geheimen Schlüssel im PKCS#8, der von einigen Anwendungen wie Java verwendet wird.

Die Befehle werden am Ende der Aufgaben ausgeführt.

Der Vorgang ist nicht atomar.

Akzeptierte Schlüssel sind:

Name Beschreibung Pflicht?
cmd Ein auszuführender Befehl Ja
creates Pfad zur Datei, die der Befehl erstellen soll Ja
owner Name des Dateibesitzers Nein
group Name der Dateigruppe Nein
mode Dateiberechtigung Nein
notify Ein String oder eine Liste von Namen von Handlern, die benachrichtigt werden sollen Nein

x509_certificate_cfssl_certificate_newcert

Da diese Variable sehr experimentell ist, wird sie absichtlich noch nicht dokumentiert.

Siehe ein Beispiel in tests/serverspec/cfssl.yml.

x509_certificate_cfssl_info

Ruft die info-API auf und ruft ein Root-CA-Zertifikat vom cfssl-Server ab.

Diese Variable ist eine Liste von Dicts. Die Schlüssel im Dict sind:

Schlüssel Beschreibung Pflicht?
path Pfad zu einer Datei, in der das Zertifikat aufbewahrt wird. ja
body Ein Dict von Körperparametern, die in der Anfrage gesendet werden ja
notify Eine Liste von Handlers, die benachrichtigt werden sollen, wenn die Zertifikatdatei geändert wird. Standard ist der Handler Update root CA store (siehe unten) nein

x509_certificate_update_ca_store_command

Dieser Befehl wird im Update root CA store-Handler mit ansible.builtin.command aufgerufen.

Update root CA store-Handler

Benachrichtigen Sie den Update root CA store-Handler, wenn Sie ein CA-Zertifikat zum Root-CA-Zertifikatspeicher des Systems hinzufügen.

Dieser Handler funktioniert derzeit noch nicht unter OpenBSD.

Einbinden von trombik.x509_certificate

Sie können die Rolle aus Ihren Aufgaben oder Rollen einbinden. Verwenden Sie vars, um spezifische Rollenvariablen zu definieren.

- name: Rolle trombik.x509_certificate einbinden
  include_role:
    name: trombik.x509_certificate
  vars:
    x509_certificate: "{{ meine_variable }}"
    x509_certificate_debug_log: ja

Wenn Sie jedoch eine einzelne Variable übergeben möchten, die die Rollenvariablen enthält, müssen Sie Ihre Variable an eine spezielle Brückenrollenvariable, x509_certificate_vars, übergeben.

- name: Rolle trombik.x509_certificate einbinden
  include_role:
    name: trombik.x509_certificate
  vars:
    x509_certificate_vars: "{{ meine_variable }}"

Das folgende Beispiel funktioniert NICHT:

- name: Rolle trombik.x509_certificate einbinden
  include_role:
    name: trombik.x509_certificate
  vars: "{{ meine_variable }}"

Siehe Issue 19084 für die Einzelheiten.

Debian

Variable Standard
__x509_certificate_dir /etc/ssl
__x509_certificate_packages ["openssl"]
__x509_certificate_default_owner root
__x509_certificate_default_group root

FreeBSD

Variable Standard
__x509_certificate_dir /usr/local/etc/ssl
__x509_certificate_packages []
__x509_certificate_default_owner root
__x509_certificate_default_group wheel
__x509_certificate_update_ca_store_command /usr/sbin/certctl rehash

OpenBSD

Variable Standard
__x509_certificate_dir /etc/ssl
__x509_certificate_packages []
__x509_certificate_default_owner root
__x509_certificate_default_group wheel
__x509_certificate_update_ca_store_command echo

RedHat

Variable Standard
__x509_certificate_dir /etc/ssl
__x509_certificate_packages ["openssl"]
__x509_certificate_default_owner root
__x509_certificate_default_group root
__x509_certificate_update_ca_store_command update-ca-trust

Abhängigkeiten

Keine

Beispiel-Playbook

---
- hosts: localhost
  pre_tasks:
    - name: Installiere rsyslog auf Fedora
      ansible.builtin.yum:
        name: rsyslog
        state: installed
      when:
        - ansible_distribution == 'Fedora'
    - name: Aktiviere rsyslog
      ansible.builtin.service:
        name: rsyslog
        enabled: ja
      when:
        - ansible_distribution == 'Fedora'
    - name: Starte rsyslog
      ansible.builtin.service:
        name: rsyslog
        state: started
      when:
        - ansible_distribution == 'Fedora'
  roles:
    - ansible-role-x509_certificate
  handlers:
    # XXX wird nur für Tests verwendet
    - name: Foo neu starten
      command: "logger foo wird benachrichtigt"
    - name: Bar neu starten
      command: "logger bar wird benachrichtigt"
    - name: Buz neu starten
      command: "logger buz wird benachrichtigt"
    - name: Foobar neu starten
      command: "logger foobar wird benachrichtigt"
  vars:
    os_project_some_user:
      FreeBSD: www
      Debian: www-data
      RedHat: ftp
      OpenBSD: www
    project_some_user: "{{ os_project_some_user[ansible_os_family] }}"
    os_project_some_group:
      FreeBSD: www
      Debian: www-data
      RedHat: ftp
      OpenBSD: www
    project_some_group: "{{ os_project_some_group[ansible_os_family] }}"

    os_project_quagga_cert_dir:
      FreeBSD: /usr/local/etc/quagga/certs
      OpenBSD: /etc/quagga/certs
      Debian: /etc/quagga/certs
      RedHat: /etc/quagga/certs
    project_quagga_cert_dir: "{{ os_project_quagga_cert_dir[ansible_os_family] }}"
    os_project_quagga_user:
      FreeBSD: quagga
      Debian: quagga
      RedHat: quagga
      OpenBSD: _quagga
    project_quagga_user: "{{ os_project_quagga_user[ansible_os_family] }}"
    os_project_quagga_group:
      FreeBSD: quagga
      Debian: quagga
      RedHat: quagga
      OpenBSD: _quagga
    project_quagga_group: "{{ os_project_quagga_group[ansible_os_family] }}"

    # XXX SETZEN Sie diese Variable niemals auf `ja`, es sei denn, Sie wissen, was Sie tun.
    x509_certificate_debug_log: ja

    x509_certificate_additional_packages:
      - quagga
    x509_certificate:
      - name: foo
        state: present
        public:
          notify:
            - Foo neu starten
            - Buz neu starten
          key: |
            -----BEGIN CERTIFICATE-----
            MIIDOjCCAiICCQDaGChPypIR9jANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJB
            VTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0
            cyBQdHkgTHRkMRgwFgYDVQQDDA9mb28uZXhhbXBsZS5vcmcwHhcNMTcwNzE4MDUx
            OTAxWhcNMTcwODE3MDUxOTAxWjBfMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29t
            ZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMRgwFgYD
            VQQDDA9mb28uZXhhbXBsZS5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
            AoIBAQDZ9nd1isoGGeH4OFbQ6mpzlldo428LqEYSH4G7fhzLMKdYsIqkMRVl1J3s
            lXtsMQUUP3dcpnwFwKGzUvuImLHx8McycJKwOp96+5XD4QAoTKtbl59ZRFb3zIjk
            Owd94Wp1lWvptz+vFTZ1Hr+pEYZUFBkrvGtV9BoGRn87OrX/3JI9eThEpksr6bFz
            QvcGPrGXWShDJV/hTkWxwRicMMVZVSG6niPusYz2wucSsitPXIrqXPEBKL1J8Ipl
            8dirQLsH02ZZKcxGctEjlVgnpt6EI+VL6fs5P6A45oJqWmfym+uKztXBXCx+aP7b
            YUHwn+HV4qzZQld80PSTk6SS3hMXAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAKgf
            x3K9GHDK99vsWN8Ej10kwhMlBWBGuM0wkhY0fbxJ0gW3sflK8z42xMc2dhizoYsY
            sLfN0aylpN/omocl+XcYugLHnW2q8QdsavWYKXqUN0neIMr/V6d1zXqxbn/VKdGr
            CD4rJwewBattCIL4+S2z+PKr9oCrxjN4i3nujPhKv/yijhrtV+USw1VwuFqsYaqx
            iScC13F0nGIJiUVs9bbBwBKn1c6GWUHHiFCZY9VJ15SzilWAY/TULsRsHR53L+FY
            mGfQZBL1nwloDMJcgBFKKbG01tdmrpTTP3dTNL4u25+Ns4nrnorc9+Y/wtPYZ9fs
            7IVZsbStnhJrawX31DQ=
            -----END CERTIFICATE-----
      - name: bar
        state: present
        public:
          path: /usr/local/etc/ssl/bar/bar.pub
          owner: "{{ project_some_user }}"
          group: "{{ project_some_group }}"
          mode: "0644"
          key: |
            -----BEGIN CERTIFICATE-----
            MIIDOjCCAiICCQDaGChPypIR9jANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJB
            VTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0
            cyBQdHkgTHRkMRgwFgYDVQQDDA9mb28uZXhhbXBsZS5vcmcwHhcNMTcwNzE4MDUx
            OTAxWhcNMTcwODE3MDUxOTAxWjBfMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29t
            ZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMRgwFgYD
            VQQDDA9mb28uZXhhbXBsZS5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
            AoIBAQDZ9nd1isoGGeH4OFbQ6mpzlldo428LqEYSH4G7fhzLMKdYsIqkMRVl1J3s
            lXtsMQUUP3dcpnwFwKGzUvuImLHx8McycJKwOp96+5XD4QAoTKtbl59ZRFb3zIjk
            Owd94Wp1lWvptz+vFTZ1Hr+pEYZUFBkrvGtV9BoGRn87OrX/3JI9eThEpksr6bFz
            QvcGPrGXWShDJV/hTkWxwRicMMVZVSG6niPusYz2wucSsitPXIrqXPEBKL1J8Ipl
            8dirQLsH02ZZKcxGctEjlVgnpt6EI+VL6fs5P6A45oJqWmfym+uKztXBXCx+aP7b
            YUHwn+HV4qzZQld80PSTk6SS3hMXAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAKgf
            x3K9GHDK99vsWN8Ej10kwhMlBWBGuM0wkhY0fbxJ0gW3sflK8z42xMc2dhizoYsY
            sLfN0aylpN/omocl+XcYugLHnW2q8QdsavWYKXqUN0neIMr/V6d1zXqxbn/VKdGr
            CD4rJwewBattCIL4+S2z+PKr9oCrxjN4i3nujPhKv/yijhrtV+USw1VwuFqsYaqx
            iScC13F0nGIJiUVs9bbBwBKn1c6GWUHHiFCZY9VJ15SzilWAY/TULsRsHR53L+FY
            mGfQZBL1nwloDMJcgBFKKbG01tdmrpTTP3dTNL4u25+Ns4nrnorc9+Y/wtPYZ9fs
            7IVZsbStnhJrawX31DQ=
            -----END CERTIFICATE-----
        secret:
          path: /usr/local/etc/ssl/bar/bar.key
          owner: "{{ project_some_user }}"
          group: "{{ project_some_group }}"
          notify: Bar neu starten
          key: |
            -----BEGIN RSA PRIVATE KEY-----
            MIIEowIBAAKCAQEA2fZ3dYrKBhnh+DhW0Opqc5ZXaONvC6hGEh+Bu34cyzCnWLCK
            pDEVZdSd7JV7bDEFFD93XKZ8BcChs1L7iJix8fDHMnCSsDqfevuVw+EAKEyrW5ef
            WURW98yI5DsHfeFqdZVr6bc/rxU2dR6/qRGGVBQZK7xrVfQaBkZ/Ozq1/9ySPXk4
            RKZLK+mxc0L3Bj6xl1koQyVf4U5FscEYnDDFWVUhup4j7rGM9sLnErIrT1yK6lzx
            ASi9SfCKZfHYq0C7B9NmWSnMRnLRI5VYJ6behCPlS+n7OT+gOOaCalpn8pvris7V
            wVwsfmj+22FB8J/h1eKs2UJXfND0k5Okkt4TFwIDAQABAoIBAHmXVOztj+X3amfe
            hg/ltZzlsb2BouEN7okNqoG9yLJRYgnH8o/GEfnMsozYlxG0BvFUtnGpLmbHH226
            TTfWdu5RM86fnjVRfsZMsy+ixUO2AaIG444Y4as7HuKzS2qd5ZXS1XB8GbrCSq7r
            iF/4tscQrzoG0poQorP9f9y60+z3R45OX3QMVZxP4ZzxXAulHGnECERjLHM5QzTX
            ALV9PHkTRNd1tm9FSJWWGNO5j4CGxFsPL1kdMyvrC7TkYiIiCQ/dd2CIfQyWwyKc
            8cHBKnzon0ugr0xlf2B0C7RTXrGAcuBC0yyaLuQTFkocUofgDIFghItH8O8xvvAG
            j8HYOwECgYEA9uMLtm2C8SiWFuafrF/pPWvhkBtEHA2g22M29CANrVv1jCEVMti/
            7r53fd328/nVxtashnSFz7a3l3s9d9pTR/rk/rNpVS2i7JGvCXXE3DeoD6Zf4utD
            MLEs2bI0KabdamIywc77CkVj9WUKd53tlcdcn7AsHwESU4Zjk08ie0kCgYEA4gIa
            R+a9jmKEk9l5Gn7jroxDJdI0gEfuA7It5hshEDcSvjF+Fs5+1tVgfBI1Mx4/0Eaj
            6E57Ln3WFKPJKuG0HwLNanZcqLFgiC/7ANbyKxfONPVrqC2TClImBhkQ74BLafZg
            yY8/N/g/5RIMpYvQ9snBRsah9G2cBfuPTHjku18CgYBHylPQk12dJJEoTZ2msSkQ
            jDtF/Te79JaO1PXY3S08+N2ZBtG0PGTrVoVGm3HBFif8rtXyLxXuBZKzQMnp/Rl0
            d9d43NDHTQLwSZidZpp88s4y5s1BHeom0Y5aK0CR0AzYb3+U7cv/+5eKdvwpNkos
            4JDleoQJ6/TZRt3TqxI6yQKBgA8sdPc+1psooh4LC8Zrnn2pjRiM9FloeuJkpBA+
            4glkqS17xSti0cE6si+iSVAVR9OD6p0+J6cHa8gW9vqaDK3IUmJDcBUjU4fRMNjt
            lXSvNHj5wTCZXrXirgraw/hQdL+4eucNZwEq+Z83hwHWUUFAammGDHmMol0Edqp7
            s1+hAoGBAKCGZpDqBHZ0gGLresidH5resn2DOvbnW1l6b3wgSDQnY8HZtTfAC9jH
            DZERGGX2hN9r7xahxZwnIguKQzBr6CTYBSWGvGYCHJKSLKn9Yb6OAJEN1epmXdlx
            kPF7nY8Cs8V8LYiuuDp9UMLRc90AmF87rqUrY5YP2zw6iNNvUBKs
            -----END RSA PRIVATE KEY-----
      - name: quagga
        state: present
        public:
          path: "{{ project_quagga_cert_dir }}/quagga.pem"
          owner: "{{ project_quagga_user }}"
          group: "{{ project_quagga_group }}"
          key: |
            -----BEGIN CERTIFICATE-----
            MIIDOjCCAiICCQDaGChPypIR9jANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJB
            VTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0
            cyBQdHkgTHRkMRgwFgYDVQQDDA9mb28uZXhhbXBsZS5vcmcwHhcNMTcwNzE4MDUx
            OTAxWhcNMTcwODE3MDUxOTAxWjBfMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29t
            ZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMRgwFgYD
            VQQDDA9mb28uZXhhbXBsZS5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
            AoIBAQDZ9nd1isoGGeH4OFbQ6mpzlldo428LqEYSH4G7fhzLMKdYsIqkMRVl1J3s
            lXtsMQUUP3dcpnwFwKGzUvuImLHx8McycJKwOp96+5XD4QAoTKtbl59ZRFb3zIjk
            Owd94Wp1lWvptz+vFTZ1Hr+pEYZUFBkrvGtV9BoGRn87OrX/3JI9eThEpksr6bFz
            QvcGPrGXWShDJV/hTkWxwRicMMVZVSG6niPusYz2wucSsitPXIrqXPEBKL1J8Ipl
            8dirQLsH02ZZKcxGctEjlVgnpt6EI+VL6fs5P6A45oJqWmfym+uKztXBXCx+aP7b
            YUHwn+HV4qzZQld80PSTk6SS3hMXAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAKgf
            x3K9GHDK99vsWN8Ej10kwhMlBWBGuM0wkhY0fbxJ0gW3sflK8z42xMc2dhizoYsY
            sLfN0aylpN/omocl+XcYugLHnW2q8QdsavWYKXqUN0neIMr/V6d1zXqxbn/VKdGr
            CD4rJwewBattCIL4+S2z+PKr9oCrxjN4i3nujPhKv/yijhrtV+USw1VwuFqsYaqx
            iScC13F0nGIJiUVs9bbBwBKn1c6GWUHHiFCZY9VJ15SzilWAY/TULsRsHR53L+FY
            mGfQZBL1nwloDMJcgBFKKbG01tdmrpTTP3dTNL4u25+Ns4nrnorc9+Y/wtPYZ9fs
            7IVZsbStnhJrawX31DQ=
            -----END CERTIFICATE-----
        secret:
          path: "{{ project_quagga_cert_dir }}/quagga.key"
          owner: "{{ project_quagga_user }}"
          group: "{{ project_quagga_group }}"
          mode: "0440"
          key: |
            -----BEGIN RSA PRIVATE KEY-----
            MIIEowIBAAKCAQEA2fZ3dYrKBhnh+DhW0Opqc5ZXaONvC6hGEh+Bu34cyzCnWLCK
            pDEVZdSd7JV7bDEFFD93XKZ8BcChs1L7iJix8fDHMnCSsDqfevuVw+EAKEyrW5ef
            WURW98yI5DsHfeFqdZVr6bc/rxU2dR6/qRGGVBQZK7xrVfQaBkZ/Ozq1/9ySPXk4
            RKZLK+mxc0L3Bj6xl1koQyVf4U5FscEYnDDFWVUhup4j7rGM9sLnErIrT1yK6lzx
            ASi9SfCKZfHYq0C7B9NmWSnMRnLRI5VYJ6behCPlS+n7OT+gOOaCalpn8pvris7V
            wVwsfmj+22FB8J/h1eKs2UJXfND0k5Okkt4TFwIDAQABAoIBAHmXVOztj+X3amfe
            hg/ltZzlsb2BouEN7okNqoG9yLJRYgnH8o/GEfnMsozYlxG0BvFUtnGpLmbHH226
            TTfWdu5RM86fnjVRfsZMsy+ixUO2AaIG444Y4as7HuKzS2qd5ZXS1XB8GbrCSq7r
            iF/4tscQrzoG0poQorP9f9y60+z3R45OX3QMVZxP4ZzxXAulHGnECERjLHM5QzTX
            ALV9PHkTRNd1tm9FSJWWGNO5j4CGxFsPL1kdMyvrC7TkYiIiCQ/dd2CIfQyWwyKc
            8cHBKnzon0ugr0xlf2B0C7RTXrGAcuBC0yyaLuQTFkocUofgDIFghItH8O8xvvAG
            j8HYOwECgYEA9uMLtm2C8SiWFuafrF/pPWvhkBtEHA2g22M29CANrVv1jCEVMti/
            7r53fd328/nVxtashnSFz7a3l3s9d9pTR/rk/rNpVS2i7JGvCXXE3DeoD6Zf4utD
            MLEs2bI0KabdamIywc77CkVj9WUKd53tlcdcn7AsHwESU4Zjk08ie0kCgYEA4gIa
            R+a9jmKEk9l5Gn7jroxDJdI0gEfuA7It5hshEDcSvjF+Fs5+1tVgfBI1Mx4/0Eaj
            6E57Ln3WFKPJKuG0HwLNanZcqLFgiC/7ANbyKxfONPVrqC2TClImBhkQ74BLafZg
            yY8/N/g/5RIMpYvQ9snBRsah9G2cBfuPTHjku18CgYBHylPQk12dJJEoTZ2msSkQ
            jDtF/Te79JaO1PXY3S08+N2ZBtG0PGTrVoVGm3HBFif8rtXyLxXuBZKzQMnp/Rl0
            d9d43NDHTQLwSZidZpp88s4y5s1BHeom0Y5aK0CR0AzYb3+U7cv/+5eKdvwpNkos
            4JDleoQJ6/TZRt3TqxI6yQKBgA8sdPc+1psooh4LC8Zrnn2pjRiM9FloeuJkpBA+
            4glkqS17xSti0cE6si+iSVAVR9OD6p0+J6cHa8gW9vqaDK3IUmJDcBUjU4fRMNjt
            lXSvNHj5wTCZXrXirgraw/hQdL+4eucNZwEq+Z83hwHWUUFAammGDHmMol0Edqp7
            s1+hAoGBAKCGZpDqBHZ0gGLresidH5resn2DOvbnW1l6b3wgSDQnY8HZtTfAC9jH
            DZERGGX2hN9r7xahxZwnIguKQzBr6CTYBSWGvGYCHJKSLKn9Yb6OAJEN1epmXdlx
            kPF7nY8Cs8V8LYiuuDp9UMLRc90AmF87rqUrY5YP2zw6iNNvUBKs
            -----END RSA PRIVATE KEY-----

    x509_certificate_commands:
      # XXX libressl funktioniert nicht mit `-out -`, und das Argument von -inform muss
      # in Kleinbuchstaben geschrieben sein.
      - cmd: "openssl pkcs8 -inform pem -outform pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -in {{ project_quagga_cert_dir }}/quagga.key -out {{ project_quagga_cert_dir }}/pkcs8.key"
        creates: "{{ project_quagga_cert_dir }}/pkcs8.key"
        owner: "{{ project_quagga_user }}"
        group: "{{ project_quagga_group }}"
        mode: "0440"
        notify: Foobar neu starten

Lizenz

Copyright (c) 2017 Tomoyuki Sakurai <y@trombik.org>

Die Erlaubnis zur Nutzung, Vervielfältigung, Modifikation und Verteilung dieser Software für jeden
Zweck, mit oder ohne Gebühr, wird hiermit erteilt, vorausgesetzt, dass der oben genannte
Copyright-Hinweis und dieser Erlaubnishinweis in allen Kopien erscheinen.

DIE SOFTWARE WIRD "WIE BESEHEN" BEREITGESTELLT, UND DER AUTOR LEHNT ALLE GARANTIEN
IN BEZUG AUF DIESEN WAGEN, EINSCHLIESSLICH ALLER STILLSCHWEIGENDEN GARANTIEN DER
MARKTGÄNGIGKEIT UND EIGNUNG FÜR EINEN BESTIMMTEN ZWECK, AB. IN KEINEM FALL HAFTET DER AUTOR FÜR
IRGENDEINE SPEZIELLE, DIREKTE, INDIREKTE ODER FOLGESCHÄDEN ODER IRGENDEINE SCHÄDEN,
DIE AUS DEM VERLUST DER NUTZUNG, DER DATEN ODER DES GEWINNS ENTSTEHEN, UNABHÄNGIG DAVON,
OB IN EINER KLAGE AUS VERTRAG, FAHRLÄSSIGKEIT ODER ANDEREN UNERLAUBTEN HANDLUNGEN, DIE AUS ODER IM
ZUSAMMENHANG MIT DER NUTZUNG ODER LEISTUNG DIESER SOFTWARE ENTSTEHEN.

Autoreninformation

Tomoyuki Sakurai y@trombik.org

Dieses README wurde von qansible erstellt.

Über das Projekt

Manages X509 public and secret keys

Installieren
ansible-galaxy install trombik.x509_certificate
GitHub Repository
Lizenz
isc
Downloads
5.7k
Besitzer
PGP finger print: 03EB 3D97 5E04 9B0C AB21 93A2 D693 42A9 EFBC 3577 Makerspace and Coliving in Siem Reap, Cambodia: http://info.mkrsgh.org/