robertdebock.ca
Ansible Rolle ca
Installiere und konfiguriere eine Zertifizierungsstelle auf deinem System.
| 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
- pip-Pakete, die in requirements.txt aufgeführt sind.
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 | ||
| robertdebock.buildtools | ||
| robertdebock.epel | ||
| robertdebock.httpd | ||
| robertdebock.openssl | ||
| robertdebock.python_pip |
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:

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
Autoreninformationen
Bitte ziehe in Betracht, mich zu unterstützen.
Install and configure a certificate authority on your system.
ansible-galaxy install robertdebock.ca