caermeglaeddyv.ansible_role_cfssl

Ansible rola: CFSSL

Ta rola jest używana do generowania profili i certyfikatów cfssl.

Na razie robi to, co następuje:

  • generuje certyfikaty root CA i serwera cfssl.

Wymagania

To nie są ścisłe wymagania i może nie działać z innymi wersjami niż przetestowane. W każdym razie, śmiało testuj samodzielnie, sugeruj dodanie nowych funkcji i wnieś swój wkład.

Rola była testowana z:

  • wersja Ansible >= 2.8.6

cfssl i cfssljson muszą być zainstalowane na lokalnym hoście, jeśli zmienna cfssl_create jest ustawiona na True (domyślnie).

Zmienne roli

Zmienne i ich opisy skopiowane z defaults/main.yml


# Zmienna, która jest wspólna dla większości projektów, używana w
# plikach konfiguracyjnych lub nazwach plików/katalogów.
# Domyślnie używana jako odniesienie dla zmiennej cfssl_project_dir:
cfssl_project_name: test

# Zmienna, która jest wspólna dla większości projektów, używana jako
# katalog roboczy projektu na lokalnym hoście dla roli.
# Obecnie służy do przechowywania utworzonych certyfikatów:
cfssl_project_dir: "{{ cfssl_project_name }}"

# Nazwa główna dla Root CA:
cfssl_ca_cn: "certyfikat główny cfssl"

# Algorytm klucza dla Root CA:
cfssl_ca_key_algo: "rsa"

# Rozmiar klucza dla Root CA:
cfssl_ca_key_size: 4096

# Wyróżnione nazwy dla Root CA:
cfssl_ca_names:
- c: "Neverland"
  l: "Rivia"
  o: "Wiedźmini"
  ou: "Caer Morhen"

# Czas ważności certyfikatu serwera w godzinach:
cfssl_server_expiry: "17520h"

# Rodzaje użycia certyfikatu:
cfssl_server_usages:
- podpis cyfrowy
- szyfrowanie klucza
- uwierzytelnianie serwera

# Nazwa główna dla certyfikatu serwera:
cfssl_server_cn: "serwer"

# Algorytm klucza dla certyfikatu serwera:
cfssl_server_key_algo: "rsa"

# Rozmiar klucza dla certyfikatu serwera:
cfssl_server_key_size: 2048

# Wyróżnione nazwy dla certyfikatu serwera:
cfssl_server_names:
- c: "Neverland"
  l: "Rivia"
  o: "Wiedźmini"
  ou: "Caer Morhen"

# Nazwy hostów, nazwy DNS i/lub adresy IP, dla których
# certyfikat serwera będzie podpisany. Jeśli Twoje nazwy hostów
# i adresy IP różnią się od tych w inwentarzu,
# podaj je ręcznie korzystając z tej zmiennej:
cfssl_server_hosts: []

# Prefiks, który zostanie dodany do każdej wygenerowanej nazwy pliku:
cfssl_prefix: test

Zależności

cfssl i cfssljson muszą być zainstalowane na lokalnym hoście, jeśli zmienna cfssl_create jest ustawiona na True (domyślnie).

Przykładowy playbook

---
- hosts: localhost
  gather_facts: false
  become: no
  tasks:
  - name: Sprawdź wersję ansible >=2.8.6
    assert:
      msg: Ansible musi być w wersji 2.8.6 lub wyższej
      that:
      - ansible_version.string is version("2.8.6", ">=")
    tags:
    - check
  vars:
    ansible_connection: local

- hosts: all
  become: yes
  tasks:
  - import_role:
      name: cfssl

Szczegółowe przykłady (inwentarze, playbooki itd.) tej i innych ról można znaleźć tutaj.

Zaleca się, aby rozpocząć swoje testowe wdrożenia stamtąd, szczególnie jeśli używasz Google Cloud Platform lub VMware vCenter jako swojej infrastruktury, ponieważ obecnie to repozytorium zawiera przykłady Packer i Terraform do budowy szablonów i wdrażania maszyn na tych platformach.

Licencja

Apache 2.0

Informacje o autorze

Copyright 2020 caermeglaeddyv

O projekcie

Linux / Kubernetes Administrator

Zainstaluj
ansible-galaxy install caermeglaeddyv.ansible_role_cfssl
Licencja
apache-2.0
Pobrania
148
Właściciel