robertdebock.ca

Ansible Rolle ca

Installiere und konfiguriere eine Zertifizierungsstelle auf deinem System.

GitHub GitLab Downloads Version
github gitlab downloads Version

Beispiel Playbook

Dieses Beispiel stammt aus molecule/default/converge.yml und wird bei jedem Push, Pull-Request und Release getestet.

---
- name: Konvergenz
  hosts: all
  become: true
  gather_facts: true

  roles:
    - role: robertdebock.ca

Die Maschine muss vorbereitet werden. In CI erfolgt dies mit molecule/default/prepare.yml:

---
- name: Vorbereitung
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: robertdebock.bootstrap
    - role: robertdebock.buildtools
    - role: robertdebock.epel
    - role: robertdebock.python_pip
    - role: robertdebock.openssl
      openssl_items:
        - name: apache-httpd
          common_name: "{{ ansible_fqdn }}"
    - role: robertdebock.httpd

Siehe auch eine vollständige Erklärung und Beispiel wie man diese Rollen verwendet.

Rollenvariablen

Die Standardwerte für die Variablen sind in defaults/main.yml festgelegt:

---
# Standarddatei für ca

# Setze ca_init: 'yes' um CA zu erstellen
ca_init: true

# ca_own_root: 'yes', wenn du deine eigene Root-CA haben möchtest.
# Andernfalls setze ca_certificate_path manuell
ca_own_root: true

# Ein Passwort für den CA-Schlüssel.
ca_passphrase: SuP3rS3creT

# Der gemeinsame Name für die CA.
ca_common_name: beispiel.com

# Weitere Details zur CA.
ca_country_name: NL
ca_email_address: [email protected]
ca_organization_name: Sehr klein
ca_organizational_unit_name: Noch kleiner
ca_state_or_province_name: Utrecht
ca_locality_name: Utrecht

# Es gibt zwei Formate zur Anforderung eines Schlüssels und Zertifikats:
# 1. Mit Details: (Beinhaltet `name:`)
# ca_requests:
#   - name: certificate1.beispiel.com
#     passphrase: S3creT
#
# 2. Ohne Details: (Beinhaltet kein `name:`)
# ca_requests:
#   - "{{ ansible_fqdn }}"

# Du kannst auch diese Formate mischen:
# ca_requests:
#   - name: certificate1.beispiel.com
#     passphrase: S3creT
#   - "{{ ansible_fqdn }}"

# Wo die Zertifikate veröffentlicht werden sollen, normalerweise ein Webserver-Verzeichnis.
# Wenn nicht angegeben, werden keine Zertifikate veröffentlicht.
# {{ httpd_data_directory }} wird von der Rolle robertdebock.httpd übernommen.
ca_publication_location: "{{ httpd_data_directory | default('/tmp') }}/pub"

# Wo müssen die Zertifikate gespeichert werden? Standardmäßig werden die
# bevorzugten Verzeichnisse der Distribution verwendet (siehe `vars/main.yml`, unter `_ca_openssl_path`.
# Wenn du ein CA-Zertifikat woanders benötigst, verwende einfach so etwas wie:
# ca_openssl_path: /mein/bevorzugter/pfad
ca_openssl_path: "{{ _ca_openssl_path[ansible_os_family] | default(_ca_openssl_path['default']) }}"

Anforderungen

Status der verwendeten Rollen

Die folgenden Rollen werden verwendet, um ein System vorzubereiten. Du kannst dein System auch anders vorbereiten.

Anforderung GitHub GitLab
robertdebock.bootstrap Build Status GitHub Build Status GitLab
robertdebock.buildtools Build Status GitHub Build Status GitLab
robertdebock.epel Build Status GitHub Build Status GitLab
robertdebock.httpd Build Status GitHub Build Status GitLab
robertdebock.openssl Build Status GitHub Build Status GitLab
robertdebock.python_pip Build Status GitHub Build Status GitLab

Kontext

Diese Rolle ist Teil vieler kompatibler Rollen. Sieh dir die Dokumentation dieser Rollen für weitere Informationen an.

Hier ist eine Übersicht der verwandten Rollen: dependencies

Kompatibilität

Diese Rolle wurde auf diesen Container-Images getestet:

Container Tags
EL 9
Debian alle
Fedora alle
Ubuntu jammy, focal

Die minimale benötigte Ansible-Version ist 2.12, Tests wurden durchgeführt für:

  • die vorherige Version.
  • die aktuelle Version.
  • die Entwicklungsversion.

Wenn du Probleme findest, registriere sie bitte auf GitHub.

Lizenz

Apache-2.0.

Autoreninformationen

robertdebock

Bitte ziehe in Betracht, mich zu unterstützen.

Über das Projekt

Install and configure a certificate authority on your system.

Installieren
ansible-galaxy install robertdebock.ca
GitHub Repository
Lizenz
apache-2.0
Downloads
33.9k
Besitzer
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.