Set-OPS-Public/playbooks/site.yml
Daniel Allaire 3ea0c95492
Some checks are pending
verifier / verifier (push) Waiting to run
sauvegarde : l etat d un locataire quitte enfin sa propre flotte
Chezlepro rangeait ses instantanes sur une VM DE SA PROPRE FLOTTE. Raser
l ecosysteme pour le reconstruire, c etait raser le filet avec.

Le site a son depot ; les neuf detenteurs d etat y deposent ; une
restitution est sortie (annuaire LDAP lisible, hors flotte).

Isolation par compte Unix, pas par convention : home 0700, cle exclusive,
racine partagee a root en 0711 (traversable, non listable). Les deux refus
constates. Le site heberge du chiffre : il ne peut ni lire ni ouvrir, d ou
la verification deplacee chez le locataire qui detient la cle.

Quatre defauts reveles par ce deuxieme usage :
- la racine des depots ne peut etre le home de personne (StrictModes rendait
  Permission denied publickey pour un refus de CHEMIN)
- la racine nie le TLD internal, et harden-below-nxdomain etendait ce non a
  toute la zone sans jamais interroger l autoritatif : aucun locataire ne
  pouvait nommer un service du site
- le gabarit transporte des fichiers de durcissement perimes, et les machines
  du site ne recoivent jamais ssh_hardening
- MaxStartups compte les connexions non authentifiees : un depot de site en
  voit la somme de ses locataires

Constat non corrige : les machines du site ne sont pas durcies.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019f91zs9SDdwSzL2CVei6on
2026-09-01 22:16:20 -04:00

98 lines
4.3 KiB
YAML

---
# GENERE par scripts/orchestrer.py (make site) — NE PAS EDITER A LA MAIN.
# Point d'entree ordonne : deploie l'ecosysteme couche par couche, dans
# l'ordre de reconstruction. Regenerer apres tout changement de couches
# (docs/couches-deploiement.yml) ou du graphe (docs/dependances-groupes.yml).
# Ansible saute les groupes sans hote actif : le meme fichier sert toute instance.
# --- couche socle ---
- name: Couche socle — groupe serveur_debian
import_playbook: groupes/serveur_debian.yml
- name: Couche socle — groupe serveur_durci
import_playbook: groupes/serveur_durci.yml
# --- couche pki_racine ---
- name: Couche pki_racine — groupe serveur_step_ca
import_playbook: groupes/serveur_step_ca.yml
# --- couche pki_client ---
- name: Couche pki_client — groupe client_pki
import_playbook: groupes/client_pki.yml
# --- couche services ---
- name: Couche services — groupe serveur_postgresql
import_playbook: groupes/serveur_postgresql.yml
- name: Couche services — groupe serveur_openldap
import_playbook: groupes/serveur_openldap.yml
- name: Couche services — groupe serveur_powerdns
import_playbook: groupes/serveur_powerdns.yml
- name: Couche services — groupe serveur_redis
import_playbook: groupes/serveur_redis.yml
- name: Couche services — groupe serveur_prometheus
import_playbook: groupes/serveur_prometheus.yml
- name: Couche services — groupe serveur_loki
import_playbook: groupes/serveur_loki.yml
- name: Couche services — groupe serveur_nginx
import_playbook: groupes/serveur_nginx.yml
- name: Couche services — groupe serveur_rspamd
import_playbook: groupes/serveur_rspamd.yml
- name: Couche services — groupe serveur_backup
import_playbook: groupes/serveur_backup.yml
- name: Couche services — groupe serveur_artefacts
import_playbook: groupes/serveur_artefacts.yml
- name: Couche services — groupe serveur_cache_site
import_playbook: groupes/serveur_cache_site.yml
- name: Couche services — groupe serveur_forge_site
import_playbook: groupes/serveur_forge_site.yml
- name: Couche services — groupe serveur_resolveur_site
import_playbook: groupes/serveur_resolveur_site.yml
- name: Couche services — groupe serveur_backup_site
import_playbook: groupes/serveur_backup_site.yml
- name: Couche services — groupe serveur_resolveur
import_playbook: groupes/serveur_resolveur.yml
- name: Couche services — groupe serveur_dovecot
import_playbook: groupes/serveur_dovecot.yml
- name: Couche services — groupe serveur_postfix
import_playbook: groupes/serveur_postfix.yml
# --- couche apps ---
- name: Couche apps — groupe serveur_keycloak
import_playbook: groupes/serveur_keycloak.yml
- name: Couche apps — groupe serveur_oauth2_proxy
import_playbook: groupes/serveur_oauth2_proxy.yml
- name: Couche apps — groupe serveur_forgejo
import_playbook: groupes/serveur_forgejo.yml
- name: Couche apps — groupe serveur_icinga
import_playbook: groupes/serveur_icinga.yml
- name: Couche apps — groupe serveur_grafana
import_playbook: groupes/serveur_grafana.yml
- name: Couche apps — groupe serveur_collabora
import_playbook: groupes/serveur_collabora.yml
- name: Couche apps — groupe serveur_web_frontal
import_playbook: groupes/serveur_web_frontal.yml
- name: Couche apps — groupe serveur_web_dorsal
import_playbook: groupes/serveur_web_dorsal.yml
- name: Couche apps — groupe serveur_icingaweb2
import_playbook: groupes/serveur_icingaweb2.yml
- name: Couche apps — groupe serveur_nextcloud
import_playbook: groupes/serveur_nextcloud.yml
- name: Couche apps — groupe serveur_ops
import_playbook: groupes/serveur_ops.yml
- name: Couche apps — groupe serveur_ops_tenant
import_playbook: groupes/serveur_ops_tenant.yml
- name: Couche apps — groupe serveur_ops_site
import_playbook: groupes/serveur_ops_site.yml
# --- couche agents ---
- name: Couche agents — groupe client_metrique
import_playbook: groupes/client_metrique.yml
- name: Couche agents — groupe client_journal
import_playbook: groupes/client_journal.yml
- name: Couche agents — groupe client_smtp
import_playbook: groupes/client_smtp.yml
- name: Couche agents — groupe client_backup
import_playbook: groupes/client_backup.yml
- name: Couche agents — groupe client_resolveur
import_playbook: groupes/client_resolveur.yml
- name: Couche agents — groupe client_artefacts
import_playbook: groupes/client_artefacts.yml