honzamach.certified
Роль сертифицированная
Страница Ansible Galaxy <https://galaxy.ansible.com/honzamach/certified>__Репозиторий GitHub <https://github.com/honzamach/ansible-role-certified>__Страница Travis CI <https://travis-ci.org/honzamach/ansible-role-certified>__
Основная цель данной роли - управление сертификатами серверов. Она выполняет следующие задачи:
- Управление пользовательским репозиторием сертификатов сервера и обработка изменений сертификатов.
- Управление репозиторием сертификатов CA по умолчанию.
- Управление репозиторием ключей сертификатов CA по умолчанию.
- Управление репозиторием доверенных сертификатов CA.
Содержание:
- :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
Эта роль является частью пакета MSMS <https://github.com/honzamach/msms>__.
Некоторые общие функции описаны в его :ref:руководстве <section-manual>.
.. _section-role-certified-installation:
Установка
Чтобы установить роль honzamach.certified <https://galaxy.ansible.com/honzamach/certified>__
из Ansible Galaxy <https://galaxy.ansible.com/>__, выполните следующую команду::
ansible-galaxy install honzamach.certified
Чтобы установить роль напрямую из GitHub <https://github.com>, клонируйте
репозиторий ansible-role-certified <https://github.com/honzamach/ansible-role-certified>,
выполнив следующую команду::
git clone https://github.com/honzamach/ansible-role-certified.git honzamach.certified
В настоящее время преимущество использования прямого клонирования Git в том, что это позволяет легко обновлять роль при выходе новой версии.
.. _section-role-certified-dependencies:
Зависимости
Эта роль не зависит от других ролей.
Следующие роли зависят от этой роли:
- :ref:
alchemist <section-role-alchemist> - :ref:
griffin <section-role-griffin>[НЕЖЕСТКАЯ] - :ref:
griffin_watchee <section-role-griffin-watchee>[НЕЖЕСТКАЯ] - :ref:
logged <section-role-logged> - :ref:
logserver <section-role-logserver> - :ref:
postgresql <section-role-postgresql>[НЕЖЕСТКАЯ]
.. _section-role-certified-usage:
Использование
Пример содержимого файла инвентаризации inventory::
[servers]
ваш-сервер
[servers_certified]
ваш-сервер
Пример содержимого файла плейбука роли role_playbook.yml::
- hosts: servers_certified
remote_user: root
roles:
- role: honzamach.certified
tags:
- role-certified
Пример использования::
# Запустить все:
ansible-playbook --ask-vault-pass --inventory inventory role_playbook.yml
Рекомендуется следовать этим принципам конфигурации:
Создайте или отредактируйте файл
inventory/group_vars/all/vars.ymlи определите разумные значения по умолчанию для всех ваших управляемых серверов::# Это обязательно для работы механизма мягкой зависимости. 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Используйте файлы
inventory/host_vars/[ваш-сервер]/vars.ymlдля настройки параметров для конкретных серверов. Смотрите раздел :ref:section-role-certified-variablesдля всех доступных опций.Используйте директорию
inventory/group_files/servers/honzamach.certified/ca_certsдля предоставления дополнительных сертификатов удостоверяющих центров, которые должны быть загружены на все серверы. Они окажутся в директориях :envvar:hm_certified__cert_ca_dirи :envvar:hm_certified__trustedcert_ca_dir.Используйте директорию
inventory/host_files/[ваш-сервер]/honzamach.certified/host_certsдля предоставления сертификатов, специфичных для определенного сервера. Они окажутся в :envvar:hm_certified__cert_host_dir. Пожалуйста, не забудьте зашифровать как минимум ключи сертификатов с помощью :ref:ansible-vault <section-overview-vault>.
.. _section-role-certified-variables:
Переменные конфигурации
Внутренние переменные роли
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. envvar:: hm_certified__cert_host_dir
Путь к директории сертификатов хоста. Эта директория будет содержать пользовательский
сертификат сервера. Для работы механизма мягкой зависимости это должно быть определено глобально,
в противном случае эта переменная будет неопределена.
* *Тип данных:* ``string``
* *По умолчанию:* ``/etc/ssl/servercert``
.. envvar:: hm_certified__cert_ca_dir
Путь к репозиторию сертификатов CA.
* *Тип данных:* ``string``
* *По умолчанию:* ``/etc/ssl/certs``
.. envvar:: hm_certified__cert_key_dir
Путь к репозиторию приватных ключей сертификатов.
* *Тип данных:* ``string``
* *По умолчанию:* ``/etc/ssl/private``
.. envvar:: hm_certified__trustedcert_ca_dir
Путь к репозиторию доверенных сертификатов CA. Эти сертификаты могут быть любыми,
которые вы используете и которым доверяете в вашей организации, даже самоподписанные сертификаты для некоторых
пользовательских внутренних приложений. Одним из примеров является настройка конфигурации
`ca_dir() <https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.25/administration-guide/ca_dir>`__
демона syslog-ng <https://www.syslog-ng.com/>, на который вы обычно не
указываете на общую директорию ``/etc/ssl/certs``, а на директорию, содержащую
подмножество удостоверяющих центров, используемых вашими серверами журналов.
* *Тип данных:* ``string``
* *По умолчанию:* ``/etc/ssl/trusted_ca``
.. _section-role-certified-files:
Управляемые файлы
Эта роль загружает сертификаты в удаленные директории в соответствии с конфигурацией
:ref:переменные <section-role-certified-variables>. По умолчанию эти директории
состоят из следующих:
/etc/ssl/servercert[КОПИРОВАТЬ]/etc/ssl/certs[КОПИРОВАТЬ]/etc/ssl/trusted_ca[КОПИРОВАТЬ]
.. _section-role-certified-author:
Автор и лицензия
| Авторские права: (C) с 2019 года Honza Mach honza.mach.ml@gmail.com | Автор: Honza Mach honza.mach.ml@gmail.com | Использование этой роли регулируется лицензией MIT, см. файл LICENSE. |
ansible-galaxy install honzamach.certified