Playbooks to a new Lilik
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
1.2 KiB

style and variables refactoring - Coherent quotation style Single quotes for text variable (even if implicit), no quotes for variable and conditional statements, if not required. - Some useful tags added: * ssh_certs renewal of server SSH certificates and configuration of authorized CA. * tls_pub renewal of public TLS certificates (let's encrypt) and certbot configuration. * tls_int renewal of internal TLS certificates (service authorizations) and configuration of authorized internal CA. *(ToDo: deployment of Certificate Revokation Lists)* * lxc deployment of new containers (deployment of configuration file excluded, for instance change in ip address are always applied and trigger a container restart even if you skip this tag. * packages installation and upgrade of software packages (apt, opkg or tarballs) * service_password create new random password for services-only password, for routine rotation. Not meant to be skipped (some roles need to know the service password, so they do a rotation). - prepare_host - ssh_server - lxc_guest - ldap - gitlab - x509_subject_prefix - x509_ldap_suffix *Replaces:* x509_suffix in ldap.yaml - letsencrypt_email Used in roles/certbot and roles/gitlab - root_ca_cert *Replaces:* ssl_ca_cert and files/lilik_x1.crt New defaults: - ldap_domain | default: `${domain}` - server_fqdn | default: `${hostname}.dmz.${domain}` *Replaces:* fqdn_domain Removed: - fqdn_dmain - x509_suffix *Replaced by:* x509_ldap_suffix in common New defaults: - server_fqdn | default: `${hostname}.${domain}` *Replaces*: fqdn - ldap_domain | default: `${domain}` - ldap_server | default: `ldap1.dmz.${domain}` - ldap_basedn | default: `dn(${ldap_domain})` - enable_https | default: `true` New defaults: - server_fqdn | default: `${hostname}.${domain}`
5 years ago
  1. ---
  2. host_fqdn: '{{ ansible_hostname }}.dmz.{{ domain }}'
  3. ldap_domain: '{{ domain }}'
  4. ldap_organization: '{{ organization }}'
  5. ldap_check_tree: true
  6. ldap_tls_enabled: true
  7. ldap_syncrepl_is_consumer: false
  8. ldap_syncrepl_is_provider: false
  9. ldap_syncrepl_target_providers: []
  10. ldap_tls_server_ca: '{{ tls_intermediate_server_ca }}'
  11. ldap_tls_user_ca: '{{ tls_intermediate_user_ca }}'
  12. ldap_server_accounts:
  13. - 'projects.dmz.{{ domain }}'
  14. - 'login.dmz.{{ domain }}'
  15. - 'nextcloud.dmz.{{ domain }}'
  16. - 'matrix.dmz.{{ domain }}'
  17. - 'status.dmz.{{ domain }}'
  18. - 'etherpad.dmz.{{ domain }}'
  19. ldap_groups_name:
  20. - 'admin'
  21. ldap_groups_posix:
  22. stduser: 5000
  23. user_sites: 900
  24. ldap_users_admin:
  25. test_admin:
  26. password: 'pippopippo'
  27. sn: 'Test Admin User'
  28. mail: 'admin@zolfa.nl'
  29. authorizedServices:
  30. - 'icinga2'
  31. ldap_users_common:
  32. test_user:
  33. password: 'pippopippo'
  34. sn: 'Utente Pippo'
  35. mail: 'pippo@zolfa.nl'
  36. authorizedServices:
  37. - 'nextcloud'
  38. - 'matrix'
  39. - 'gitlab'
  40. - 'etherpad'
  41. - 'icinga2'
  42. ldap_basedn: 'dc={{ ldap_domain.replace(".", ",dc=") }}'
  43. ldap_x509_suffix: >-
  44. {% for k, v in x509_subj_prefix.items()|reverse %}{{k|lower}}={{v}}{{ ',' if not loop.last }}{% endfor %}
  45. ...