honzamach.certified

.. _section-role-certified:

Rola certyfikowana

  • Strona Ansible Galaxy <https://galaxy.ansible.com/honzamach/certified>__
  • Repozytorium GitHub <https://github.com/honzamach/ansible-role-certified>__
  • Strona Travis CI <https://travis-ci.org/honzamach/ansible-role-certified>__

Głównym celem tej roli jest zarządzanie certyfikatami serwerów. Zajmuje się następującymi zadaniami:

  • Zarządzanie niestandardowym repozytorium certyfikatów serwerowych oraz zmianami certyfikatów.
  • Zarządzanie domyślnym repozytorium certyfikatów CA.
  • Zarządzanie domyślnym repozytorium kluczy certyfikatów CA.
  • Zarządzanie zaufanym repozytorium certyfikatów CA.

Spis treści:

  • :ref:section-role-certified-installation
  • :ref:section-role-certified-dependencies
  • :ref:section-role-certified-usage
  • :ref:section-role-certified-variables
  • :ref:section-role-certified-files
  • :ref:section-role-certified-author

Ta rola jest częścią pakietu MSMS <https://github.com/honzamach/msms>__. Niektóre wspólne funkcje są udokumentowane w jego :ref:podręczniku <section-manual>.

.. _section-role-certified-installation:

Instalacja

Aby zainstalować rolę honzamach.certified <https://galaxy.ansible.com/honzamach/certified>__ z Ansible Galaxy <https://galaxy.ansible.com/>__, użyj następującego polecenia::

ansible-galaxy install honzamach.certified

Aby zainstalować rolę bezpośrednio z GitHub <https://github.com>__ przez sklonowanie repozytorium ansible-role-certified <https://github.com/honzamach/ansible-role-certified>__, użyj następującego polecenia::

git clone https://github.com/honzamach/ansible-role-certified.git honzamach.certified

Obecnie zaletą używania klonowania z Git jest możliwość łatwego aktualizowania roli, gdy nowa wersja zostanie wydana.

.. _section-role-certified-dependencies:

Zależności

Ta rola nie ma żadnych zależności.

Następujące role są zależne od tej roli:

  • :ref:alchemist <section-role-alchemist>
  • :ref:griffin <section-role-griffin> [SOFT]
  • :ref:griffin_watchee <section-role-griffin-watchee> [SOFT]
  • :ref:logged <section-role-logged>
  • :ref:logserver <section-role-logserver>
  • :ref:postgresql <section-role-postgresql> [SOFT]

.. _section-role-certified-usage:

Użytkowanie

Przykładowa zawartość pliku inwentarza inventory::

[serwery]
twój-serwer

[serwery_certified]
twój-serwer

Przykładowa zawartość pliku playbooka roli role_playbook.yml::

- hosts: serwery_certified
  remote_user: root
  roles:
    - role: honzamach.certified
  tags:
    - rola-certifikowana

Przykładowe użycie::

# Uruchom wszystko:
ansible-playbook --ask-vault-pass --inventory inventory role_playbook.yml

Zaleca się przestrzeganie następujących zasad konfiguracyjnych:

  • Utwórz/edytuj plik inventory/group_vars/all/vars.yml i zdefiniuj rozsądne domyślne wartości dla wszystkich zarządzanych serwerów::

      # To jest obowiązkowe, aby mechanizm miękkiej zależności działał.
      hm_certified__cert_host_dir: /etc/ssl/servercert
      hm_certified__cert_ca_dir: /etc/ssl/certs
      hm_certified__cert_key_dir: /etc/ssl/private
      hm_certified__trustedcert_ca_dir: /etc/ssl/trusted_ca
    
  • Użyj plików inventory/host_vars/[twój-serwer]/vars.yml aby dostosować ustawienia dla konkretnych serwerów. Zapoznaj się z sekcją :ref:section-role-certified-variables w celu uzyskania wszystkich dostępnych opcji.

  • Użyj katalogu inventory/group_files/servers/honzamach.certified/ca_certs aby dostarczyć dodatkowe certyfikaty władz certyfikacyjnych, które mają zostać przesłane do wszystkich serwerów. Ostatecznie trafią one zarówno do katalogu :envvar:hm_certified__cert_ca_dir, jak i :envvar:hm_certified__trustedcert_ca_dir.

  • Użyj katalogu inventory/host_files/[twój-serwer]/honzamach.certified/host_certs aby dostarczyć certyfikaty specyficzne dla danego serwera. Ostatecznie trafią one do katalogu :envvar:hm_certified__cert_host_dir. Nie zapomnij zaszyfrować przynajmniej kluczy certyfikatów za pomocą :ref:ansible-vault <section-overview-vault>.

.. _section-role-certified-variables:

Zmienne konfiguracyjne

Zmienne wewnętrzne roli

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. envvar:: hm_certified__cert_host_dir

Ścieżka do katalogu certyfikatów hosta. Ten katalog będzie zawierał niestandardowy certyfikat serwera. Dla poprawnego działania miękkiego mechanizmu zależności należy go zdefiniować globalnie, w przeciwnym razie ta zmienna będzie niezdefiniowana.

* *Typ danych:* ``string``
* *Domyślna wartość:* ``/etc/ssl/servercert``

.. envvar:: hm_certified__cert_ca_dir

Ścieżka do repozytorium certyfikatów CA.

* *Typ danych:* ``string``
* *Domyślna wartość:* ``/etc/ssl/certs``

.. envvar:: hm_certified__cert_key_dir

Ścieżka do repozytorium kluczy certyfikatów prywatnych.

* *Typ danych:* ``string``
* *Domyślna wartość:* ``/etc/ssl/private``

.. envvar:: hm_certified__trustedcert_ca_dir

Ścieżka do repozytorium zaufanych certyfikatów CA. Te certyfikaty mogą być wszystkim, co używasz i ufasz w swojej organizacji, nawet certyfikaty własnoręcznie podpisane dla niektórych niestandardowych aplikacji wewnętrznych. Przykładem zastosowania jest ustawienie konfiguracyjne
`ca_dir() <https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.25/administration-guide/ca_dir>`__
demona syslog-ng <https://www.syslog-ng.com/>, do którego zwykle nie wskazujesz ogólnego katalogu ``/etc/ssl/certs``, ale do katalogu zawierającego
podzbiór władz certyfikacyjnych używanych przez twoje serwery logujące.

* *Typ danych:* ``string``
* *Domyślna wartość:* ``/etc/ssl/trusted_ca``

.. _section-role-certified-files:

Zarządzane pliki

Ta rola przesyła certyfikaty do zdalnych katalogów zgodnie z konfiguracją :ref:zmiennych <section-role-certified-variables>. Domyślnie te katalogi to:

  • /etc/ssl/servercert [KOPIUJ]
  • /etc/ssl/certs [KOPIUJ]
  • /etc/ssl/trusted_ca [KOPIUJ]

.. _section-role-certified-author:

Autor i licencja

| Copyright: (C) od 2019 Honza Mach honza.mach.ml@gmail.com | Autor: Honza Mach honza.mach.ml@gmail.com | Użycie tej roli reguluje licencja MIT, zobacz plik LICENSE. |

O projekcie

Ansible role for managing certificates on all target servers.

Zainstaluj
ansible-galaxy install honzamach.certified
Licencja
mit
Pobrania
122
Właściciel