robertdebock.vault
Rol de Ansible Vault
Instala Hashicorp Vault, ya sea como paquete o binario.
GitHub | GitLab | Descargas | Versión |
---|---|---|---|
Ejemplo de Playbook
Este ejemplo se toma de molecule/default/converge.yml
y se prueba en cada push, solicitud de extracción y lanzamiento.
---
- name: Converge
hosts: all
become: true
gather_facts: true
roles:
- role: robertdebock.vault
vault_hardening_disable_swap: false
La máquina necesita ser preparada. En CI, esto se hace usando molecule/default/prepare.yml
:
---
- name: Prepare
hosts: all
become: true
gather_facts: false
roles:
- role: robertdebock.bootstrap
- role: robertdebock.core_dependencies
- role: robertdebock.hashicorp
También consulta una explicación completa y ejemplo sobre cómo usar estos roles.
Variables del Rol
Los valores predeterminados para las variables están establecidos en defaults/main.yml
:
---
# archivo de valores predeterminados para vault
# Selecciona el tipo de Vault a instalar. Puede ser "oss", "ent" o "hsm".
# `oss` significa Código Abierto.
# `ent` significa Empresarial.
# `hsm` significa Empresarial con soporte para HSM.
vault_type: oss
# Establece la versión del paquete a instalar.
vault_version: "1.15.6"
# Para instalaciones de paquetes, se requiere un "release". Por ejemplo, el paquete se llamaría `vault-1.12.2-1`.
vault_package_release: "1"
# Selecciona la forma de instalar Vault. Puede ser "package" o "binary".
vault_installation_method: "package"
# Cuando `vault_installation_method` está establecido en "binary", establece la ruta donde descargar temporalmente Vault.
vault_download_path: "/tmp/vault-{{ vault_version }}"
# Cuando `vault_installation_method` está establecido en "binary", establece la ruta (base) donde instalar Vault. Puede ser "" o "/opt" por ejemplo.
vault_path: ""
# Cuando `vault_installation_method` está establecido en "binary", establece el usuario bajo el cual Vault se ejecutará. El usuario "root" no está permitido.
vault_user: vault
# Cuando `vault_installation_method` está establecido en "binary", establece el grupo bajo el cual Vault se ejecutará. El grupo "root" no está permitido.
vault_group: vault
# Cuando `vault_installation_method` está establecido en "binary", establece el shell para el vault_user.
vault_user_shell: /bin/false
# Dónde almacenar datos. Son datos de Raft y material TLS.
vault_data_directory: /opt/vault
# Consejos de endurecimiento para deshabilitar el intercambio de memoria.
vault_hardening_disable_swap: true
# Consejos de endurecimiento para deshabilitar los "core dumps".
vault_hardening_disable_core_dumps: true
# Consejos de endurecimiento para deshabilitar el historial de comandos de shell.
vault_hardening_disable_shell_command_history: true
# Consejos de endurecimiento para configurar SELinux / AppArmor.
vault_hardening_configure_selinux_apparmor: true
# Puedes colocar variables que Vault escucha en esta lista.
# Por ejemplo:
# vault_environment_settings:
# - name: VAULT_API_ADDR
# value: "http://127.0.0.1:8200"
# - name: VAULT_CLUSTER_ADDR
# value: "http://127.0.0.1:8201"
# - name: HTTP_PROXY
# value: "http://proxy.example.com:8080"
# - name: HTTPS_PROXY
# value: "https://proxy.example.com:8080"
# - name: NO_PROXY
# value: "*.example.com,1.2.3.4:80,1.2.3.4/8"
vault_environment_settings: []
Requisitos
- Paquetes pip listados en requirements.txt.
Estado de los roles utilizados
Los siguientes roles se utilizan para preparar un sistema. Puedes preparar tu sistema de otra manera.
Requerimiento | GitHub | GitLab |
---|---|---|
robertdebock.bootstrap | ||
robertdebock.core_dependencies | ||
robertdebock.hashicorp |
Contexto
Este rol es parte de muchos roles compatibles. Consulta la documentación de estos roles para más información.
Aquí hay un resumen de los roles relacionados:
Compatibilidad
Este rol ha sido probado en estas imágenes de contenedor:
contenedor | etiquetas |
---|---|
Amazon | Candidato |
Debian | todas |
EL | 9 |
Fedora | 38, 39 |
Ubuntu | todas |
La versión mínima requerida de Ansible es 2.12, se han realizado pruebas en:
- La versión anterior.
- La versión actual.
- La versión de desarrollo.
Si encuentras problemas, regístralos en GitHub.
Licencia
Información del Autor
Por favor, considera patrocinarme.
Install Hashicorp Vault, either a package or a binary.
ansible-galaxy install robertdebock.vault