linux-system-roles.nbde_server
nbde_server
Rol de Ansible para configurar servidores de cifrado de disco ligados a la red (por ejemplo, tang).
Este rol actualmente soporta tang
como proveedor y puede configurar servidores tang.
Distribuciones Soportadas
- RHEL-7+, CentOS-7+
- Fedora
Requisitos
Ver abajo
Requisitos de Colección
El rol requiere colecciones adicionales que se especifican en meta/collection-requirements.yml
. Estas no se instalan automáticamente. Debes instalarlas así:
ansible-galaxy install -vv -r meta/collection-requirements.yml`
Variables del Rol
Estas son las variables que se pueden pasar al rol:
Variable | Por Defecto | Descripción |
---|---|---|
nbde_server_provider |
tang |
identifica el proveedor para el rol nbde_server . Actualmente soportamos tang como proveedor nbde_server , lo que significa que el rol puede aprovisionar/implementar servidores tang. |
nbde_server_service_state |
started |
indica el estado que debe tener el nbde_server. Puede ser started (por defecto) o stopped . started significa que el servidor está aceptando conexiones, mientras que stopped significa que no las acepta. |
nbde_server_rotate_keys |
false |
indica si deberíamos rotar las claves existentes, si hay alguna, y luego crear nuevas claves. El comportamiento por defecto (false ) es crear nuevas claves, si no hay, y no tocar las claves, si existen. Si se establece en true , se rotarán las claves existentes y se crearán nuevas. |
nbde_server_fetch_keys |
false |
indica si debemos obtener claves en el nodo de control, en cuyo caso se colocarán en nbde_server_keys_dir . Debes establecer nbde_server_keys_dir para usar nbde_server_fetch_keys . |
nbde_server_deploy_keys |
false |
indica si debemos desplegar las claves ubicadas en el directorio nbde_server_keys_dir a los hosts remotos. Debes establecer nbde_server_keys_dir para usar nbde_server_deploy_keys . |
nbde_server_keys_dir |
especifica un directorio en el nodo de control que contiene claves para desplegar en los hosts remotos. Las claves ubicadas en el directorio de primer nivel se desplegarán a cada host remoto, mientras que las claves ubicadas en subdirectorios nombrados según los hosts remotos (según el inventario) se desplegarán solo a esos hosts específicos. nbde_server_keys_dir debe ser una ruta absoluta. Necesitas establecer esto para usar nbde_server_fetch_keys y/o nbde_server_deploy_keys . |
|
nbde_server_manage_firewall |
false |
maneja el puerto y la zona del servidor nbde usando el rol firewall si se establece en true . |
nbde_server_manage_selinux |
false |
maneja el puerto del servidor nbde usando el rol selinux si se establece en true . |
nbde_server_port |
80 |
número de puerto en el cual tangd escuchará. Debes establecer nbde_server_manage_selinux: true si deseas que el rol gestione las etiquetas SELinux para el puerto. Debes establecer nbde_server_manage_firewall: true si deseas que el rol gestione el firewall para el puerto. |
nbde_server_firewall_zone |
public |
cambia la zona por defecto donde se debe abrir el puerto. Debes establecer nbde_server_manage_firewall: true para cambiar la zona por defecto. |
nbde_server_fetch_keys y nbde_server_deploy_keys
Para usar cualquiera de estas opciones, necesitas especificar nbde_server_keys_dir
, un directorio, con una ruta absoluta.
El comportamiento de usar estas variables se describe a continuación:
Cuando nbde_server_fetch_keys
está establecido en true
El rol obtendrá claves de los hosts de la siguiente manera:
- si
nbde_server_deploy_keys
no está establecido, se obtendrán las claves de cada host y se colocarán en directorios nombrados según el host, dentro denbde_server_keys_dir
. - si
nbde_server_deploy_keys
está establecido, solo se obtendrán las claves del primer host en el inventario, y se colocarán en el directorio de primer nivel denbde_server_keys_dir
.
Cuando nbde_server_deploy_keys
está establecido en true
El rol desplegará las claves disponibles en nbde_server_keys_dir
, de la siguiente manera:
- las claves ubicadas en el directorio de primer nivel de
nbde_server_keys_dir
se desplegarán a cada host. - las claves ubicadas dentro de subdirectorios nombrados según los hosts en el inventario, dentro de
nbde_server_keys_dir
, se desplegarán a ese host específico.
Ejemplos de Playbooks
Ejemplo 1: despliega el servidor NBDE a cada host en el inventario
---
- name: Gestionar servidores nbde
hosts: all
roles:
- linux-system-roles.nbde_server
Ejemplo 2: obtener claves de instalaciones del servidor NBDE
Obtén las claves de cada instalación del servidor NBDE desde /root/nbde_server/keys
.
---
- name: Gestionar claves nbde desde /root/nbde_server/keys
hosts: all
vars:
nbde_server_fetch_keys: true
nbde_server_keys_dir: /root/nbde_server/keys
roles:
- linux-system-roles.nbde_server
Después de esto, puedes hacer una copia de seguridad de tus claves, que se colocarán en /root/nbde_server/keys
, dentro de subdirectorios nombrados según el host al que pertenecen.
Ejemplo 3: volver a desplegar claves desde una copia de seguridad tomada con el Ejemplo 2
Para redeplegar claves, deben colocarse en subdirectorios nombrados según el host al que se van a desplegar. Con /root/nbde_server/keys
después del Ejemplo 2, usa el siguiente playbook para redeplegar las mismas claves a los mismos hosts:
---
- name: Gestionar nbde y redeplegar claves respaldadas
hosts: all
vars:
nbde_server_deploy_keys: true
nbde_server_keys_dir: /root/nbde_server/keys
roles:
- linux-system-roles.nbde_server
Ejemplo 4: despliega un servidor NBDE y usa las mismas claves en cada host
NOTA Esto no es recomendado, pero está soportado.
---
- name: Gestionar nbde con las mismas claves en cada host
hosts: all
vars:
nbde_server_fetch_keys: true
nbde_server_deploy_keys: true
nbde_server_keys_dir: /root/nbde_server/keys
roles:
- linux-system-roles.nbde_server
Ejemplo 5: despliega el servidor NBDE con un puerto y zona personalizados
---
- name: Gestionar nbde con puerto y zona personalizados
hosts: all
vars:
nbde_server_manage_firewall: true
nbde_server_manage_selinux: true
nbde_server_port: 7500
nbde_server_firewall_zone: dmz
roles:
- linux-system-roles.nbde_server
rpm-ostree
Ver README-ostree.md
Licencia
MIT
Ansible role for configuring Network-Bound Disk Encryption servers (e.g. tang)
ansible-galaxy install linux-system-roles.nbde_server