openssl

Ansible роль openssl

Создание сертификатов openssl.

GitHub Версия Проблемы Запросы на изменения Скачивания
github Версия Проблемы ЗапросыНаИзменения Ansible Роль

Пример Программного Сценария

Этот пример взят из molecule/default/converge.yml и проверяется на каждой операции push, pull request и при выпуске.

---
- name: Converge
  hosts: all
  become: true
  gather_facts: true

  pre_tasks:
    - name: Обновить кэш apt.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false

    - name: Проверить существует ли файл python3.11 EXTERNALLY-MANAGED
      ansible.builtin.stat:
        path: /usr/lib/python3.11/EXTERNALLY-MANAGED
      register: externally_managed_file_py311

    - name: Переименовать файл python3.11 EXTERNALLY-MANAGED, если он существует
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py311.stat.exists
      args:
        creates: /usr/lib/python3.11/EXTERNALLY-MANAGED.old

    - name: Проверить существует ли файл python3.12 EXTERNALLY-MANAGED
      ansible.builtin.stat:
        path: /usr/lib/python3.12/EXTERNALLY-MANAGED
      register: externally_managed_file_py312

    - name: Переименовать файл python3.12 EXTERNALLY-MANAGED, если он существует
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.12/EXTERNALLY-MANAGED /usr/lib/python3.12/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py312.stat.exists
      args:
        creates: /usr/lib/python3.12/EXTERNALLY-MANAGED.old

  roles:
    - role: buluma.openssl
      openssl_items:
        - name: my_openssl_key
          common_name: my.example.com

Машина должна быть подготовлена. В CI это делает файл molecule/default/prepare.yml:

---
- name: Prepare
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: buluma.bootstrap
    - role: buluma.buildtools
    - role: buluma.epel
    - role: buluma.python_pip

Смотрите также полное объяснение и пример о том, как использовать эти роли.

Переменные Роли

По умолчанию значения для переменных установлены в defaults/main.yml:

---
# файл с настройками по умолчанию для openssl

# Вы можете передать список ssl ключей/csr/crt/p12 для генерации:
# openssl_items:
#   - name: my_openssl_key
#     common_name: my.example.com

# Вы можете изменить пути для хранения каждого типа объекта (ключ, csr, crt,
# p12 и pkcs12). Это не обязательно, по умолчанию установлено в расположение,
# принятом в дистрибутивах в `vars/main.yml`.

# Этот каталог хранит чувствительные объекты. (ключ, p12 и pkcs12)
openssl_key_directory: "{{ _openssl_key_directory[ansible_os_family] | default(_openssl_key_directory['default']) }}"

# Этот каталог хранит публичные, непостоянные объекты. (csr)
openssl_csr_directory: "{{ _openssl_csr_directory[ansible_os_family] | default(_openssl_csr_directory['default']) }}"

# Этот каталог хранит публичные, постоянные объекты. (crt)
openssl_crt_directory: "{{ _openssl_crt_directory[ansible_os_family] | default(_openssl_crt_directory['default']) }}"

# Вы можете изменить владельца и группу файлов, создаваемых этой ролью.
openssl_file_owner: root
openssl_file_group: root

Требования

Состояние используемых ролей

Для подготовки системы используются следующие роли. Вы можете подготовить вашу систему другим способом.

Требование GitHub Версия
buluma.bootstrap Ansible Molecule Версия
buluma.buildtools Ansible Molecule Версия
buluma.epel Ansible Molecule Версия
buluma.python_pip Ansible Molecule Версия

Контекст

Эта роль является частью многих совместимых ролей. Ознакомьтесь с документацией этих ролей для получения дополнительной информации.

Вот обзор связанных ролей:

dependencies

Совместимость

Эта роль была протестирована на следующих образах контейнеров:

контейнер теги
Alpine все
EL 8, 9
Debian все
Fedora 38, 39, 40
opensuse все
Ubuntu focal, bionic, jammy, noble

Минимальная требуемая версия Ansible - 2.17, тесты были проведены для:

  • Предыдущей версии.
  • Текущей версии.
  • Версии разработки.

Если вы столкнетесь с проблемами, пожалуйста, зарегистрируйте их в GitHub

Изменения

История Роли

Лицензия

Apache-2.0

Информация об авторе

Shadow Walker

О проекте

Make openssl certificates.

Установить
ansible-galaxy install buluma/ansible-role-openssl
Лицензия
apache-2.0
Загрузки
580665
Владелец
DevOps Engineer