robertdebock.ca

Rola Ansible ca

Zainstaluj i skonfiguruj urząd certyfikacji na swoim systemie.

GitHub GitLab Pobrania Wersja
github gitlab downloads Wersja

Przykładowy Playbook

Ten przykład pochodzi z molecule/default/converge.yml i jest testowany przy każdym wprowadzeniu zmian, prośbie o włączenie oraz wydaniu.

---
- nazwa: Zbieżność
  gospodarze: wszyscy
  stań się: prawda
  zbierz_fakty: prawda

  role:
    - rola: robertdebock.ca

Maszyna musi być przygotowana. W CI to jest robione z użyciem molecule/default/prepare.yml:

---
- nazwa: Przygotowanie
  gospodarze: wszyscy
  stań się: prawda
  zbierz_fakty: fałsz

  role:
    - rola: robertdebock.bootstrap
    - rola: robertdebock.buildtools
    - rola: robertdebock.epel
    - rola: robertdebock.python_pip
    - rola: robertdebock.openssl
      openssl_items:
        - nazwa: apache-httpd
          wspólna_nazwa: "{{ ansible_fqdn }}"
    - rola: robertdebock.httpd

Zobacz także pełne wyjaśnienie i przykład na temat korzystania z tych ról.

Zmienności Roli

Domyślne wartości dla zmiennych są ustawione w defaults/main.yml:

---
# plik domyślny dla ca

# ustaw ca_init: 'tak', aby utworzyć CA
ca_init: true

# ca_own_root: 'tak', jeśli chcesz mieć własną CA root.
# jeśli nie, ustaw ręcznie ca_certificate_path
ca_own_root: true

# Hasło dla klucza CA.
ca_passphrase: SuP3rS3creT

# Wspólna nazwa dla CA.
ca_common_name: example.com

# Inne szczegóły dotyczące CA.
ca_country_name: NL
ca_email_address: robert@meinit.nl
ca_organization_name: Very little
ca_organizational_unit_name: Even less
ca_state_or_province_name: Utrecht
ca_locality_name: Utrecht

# Istnieją dwa formaty, aby zażądać klucza i certyfikatu:
# 1. Z szczegółami: (zawiera `nazwa:`)
# ca_requests:
#   - nazwa: certificate1.example.com
#     hasło: S3creT
#
# 2. Bez szczegółów: (nie zawiera `nazwa:`)
# ca_requests:
#   - "{{ ansible_fqdn }}"

# Możesz również łączyć te formaty:
# ca_requests:
#   - nazwa: certificate1.example.com
#     hasło: S3creT
#   - "{{ ansible_fqdn }}"

# Gdzie publikować certyfikaty, zazwyczaj w lokalizacji serwera www.
# Jeśli nie zostanie określone, certyfikaty nie będą publikowane.
# {{ httpd_data_directory }} pochodzi z roli robertdebock.httpd.
ca_publication_location: "{{ httpd_data_directory | default('/tmp') }}/pub"

# Gdzie certyfikaty mają być przechowywane? Domyślnie używane są preferowane lokalizacje dystrybucji
# (zobacz `vars/main.yml`, pod `_ca_openssl_path`.
# Jeśli potrzebujesz certyfikatu CA w innym miejscu, po prostu użyj czegoś takiego:
# ca_openssl_path: /my/preferred/path
ca_openssl_path: "{{ _ca_openssl_path[ansible_os_family] | default(_ca_openssl_path['default']) }}"

Wymagania

Stan używanych ról

Poniższe role są używane do przygotowania systemu. Możesz przygotować swój system w inny sposób.

Wymóg GitHub GitLab
robertdebock.bootstrap Status budowy GitHub Status budowy GitLab
robertdebock.buildtools Status budowy GitHub Status budowy GitLab
robertdebock.epel Status budowy GitHub Status budowy GitLab
robertdebock.httpd Status budowy GitHub Status budowy GitLab
robertdebock.openssl Status budowy GitHub Status budowy GitLab
robertdebock.python_pip Status budowy GitHub Status budowy GitLab

Kontekst

Ta rola jest częścią wielu zgodnych ról. Zobacz dokumentację tych ról w celu uzyskania dalszych informacji.

Oto przegląd powiązanych ról: dependencies

Kompatybilność

Ta rola była testowana na tych obrazach kontenerów:

kontener tagi
EL 9
Debian wszystkie
Fedora wszystkie
Ubuntu jammy, focal

Minimalna wersja Ansible wymagana to 2.12, testy przeprowadzono dla:

  • Poprzedniej wersji.
  • Bieżącej wersji.
  • Wersji rozwojowej.

Jeśli znajdziesz problemy, zgłoś je w GitHub.

Licencja

Apache-2.0.

Informacje o autorze

robertdebock

Proszę rozważyć wsparcie finansowe.

O projekcie

Install and configure a certificate authority on your system.

Zainstaluj
ansible-galaxy install robertdebock.ca
Licencja
apache-2.0
Pobrania
33.9k
Właściciel
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.