Aller au contenu
Alliance Boréale · moteur d'écosystèmes souverains

Votre écosystème numérique, souverain — et prouvé.

Set‑OPS est un moteur Ansible qui construit et exploite tout un écosystème interne — identité, confiance, DNS, données, courriel, observabilité, forge, collaboration, web, et les applications de vos clients — sur votre propre grappe Proxmox. À partir d'un plan déclaratif. Puis il vous relie à un site partenaire qui garde la copie de vos sauvegardes et, si vous la demandez, une relève allumée. Sans SaaS. Sans conteneur. Et exploitable sans aucune IA.

édite le plan→ make instancier→ make deployer→ make prouver
La méthode

Vous décrivez. Le moteur génère. Ansible déploie. La preuve suit.

Set‑OPS se pilote par un plan, pas par l'édition de l'inventaire. Les registres sont la source unique de vérité ; l'inventaire Ansible en est dérivé. Vous ne touchez jamais hosts.yml à la main.

01 · décrire

Un plan déclaratif

Serveurs, applications, bases, domaines, nomenclature — des registres lisibles par la machine, votre seule source de vérité.

02 · générer

Un inventaire dérivé

VMID, IP, VLAN et passerelle se dérivent d'un seul nombre, l'index que le site attribue. make instancier montre le diff avant d'appliquer.

03 · déployer

Par groupes, en couches

Chaque groupe a son playbook homonyme. L'orchestrateur déploie socle → PKI → services → apps → agents, dans l'ordre.

04 · prouver

Une preuve rejouable

make prouver rejoue les vérifications et produit un rapport horodaté. Le dépôt n'affirme jamais plus qu'il ne prouve.


Tout ce que vous pouvez faire

Dix piliers. Un écosystème complet, natif, chiffré, relié.

Tout ce qu'un hébergeur met en ligne, Set‑OPS le tient en interne — en logiciel libre, sur systemd et paquets, sans dépendance à un géant. Voici, pilier par pilier, ce que vous déployez et exploitez. Le badge Éprouvé marque ce qui tourne sur des VM réelles ; Feuille de route ce qui est planifié.

Identité & accès

Éprouvé

Une identité, un mot de passe, pour tout le parc.

OpenLDAPKeycloakoauth2-proxyOIDC · RBAC
  • Un annuaire central (OpenLDAP) source unique des identités.
  • SSO web via Keycloak, qui fédère l'annuaire — « se connecter avec votre organisation ».
  • Mets n'importe quelle app derrière le SSO avec oauth2-proxy, même sans OIDC natif.
  • RBAC : des rôles de realm pilotent les niveaux d'accès (ex. Grafana Admin/Editor/Viewer).

Confiance & PKI

Éprouvé

Votre propre autorité de certification. Tout le trafic interne, chiffré et vérifié.

step-caACMEclient_pkimTLS
  • Une AC interne (step-ca) qui émet les certificats par ACME.
  • Certificats d'hôte auto-renouvelés, avec rechargement des vrais consommateurs.
  • Zéro-confiance est-ouest : PostgreSQL en verify-full, LDAPS, métriques & logs en HTTPS, LMTP vérifié.
  • Aucune dépendance à une AC publique pour la confiance interne.

Nommage & réseau

Éprouvé

Un DNS interne cohérent, des noms publics signés, et un réseau convergé multi-tenant.

PowerDNSUnboundVLAN dérivémake devis-reseau
  • DNS autoritatif interne (PowerDNS) : les enregistrements d'exposition se dérivent du plan.
  • Résolveur local (Unbound) + plancher /etc/hosts, sans casser Internet.
  • DNS public : chaque locataire écrit et signe (DNSSEC) ses zones ; deux sites les servent à l'Internet.
  • Réseau convergé 10/8 : une zone EVPN (un VRF) par locataire, dérivée de son index ; seule la frontière route entre eux.

Données

Éprouvé

Bases relationnelles et cache, provisionnés depuis le registre.

PostgreSQLRedisTLS verify-fullbinding app→base
  • PostgreSQL provisionne ses bases & rôles depuis le registre — le secret ne quitte jamais le rôle.
  • Chiffrement obligatoire : la base refuse toute connexion non-TLS du réseau.
  • Cache réseau Redis authentifié (accès sans mot de passe refusé).
  • Liens déclaratifs : une app se relie à sa base sans group_vars codés en dur.

Courriel souverain

Éprouvé

Recevoir et envoyer, de bout en bout, sur votre infra.

PostfixDovecotrspamdDKIM · SASL
  • MTA Postfix + soumission :587 authentifiée (SASL déléguée à Dovecot).
  • Boîtes Dovecot (IMAP, Maildir), utilisateurs résolus sur l'annuaire LDAP.
  • Antispam & signature : rspamd + DKIM. Flux prouvé SMTP→LDAP→LMTP→IMAP.
  • Interne de bout en bout — aucune fuite vers un tiers.

Reverse-proxy & TLS

Éprouvé

Déclare une exposition — tout le reste se dérive.

nginx edgeTLS step-caX-ForwardedWAF
  • Un champ expose produit vhost + SAN de cert + enregistrement DNS + alias plancher, auto-dérivés.
  • Terminaison TLS avec le cert step-ca (chaîne validée, plus de snakeoil).
  • L'edge sert les noms internes ; le web frontal (proxy inverse + pare-feu applicatif) sert l'Internet, certificats Let's Encrypt.
  • La frontière OPNsense traduit l'adresse publique que le site attribue à chaque locataire ; un site sans adresse fixe loue celles d'un relais hors site, par tunnel, sans traduction.

Observabilité & supervision

Éprouvé

Voir toute la flotte : métriques, journaux, tableaux de bord, impact.

PrometheusLokiGrafanaIcinga2 · BPM
  • Métriques (Prometheus scrape la flotte en HTTPS) & journaux centralisés (Loki).
  • Tableaux de bord Grafana, accès par le SSO, dashboards provisionnés.
  • Supervision active Icinga2 + IcingaDB + Icinga Web 2 (la vigie), sous SSO, avec une sonde par application cliente.
  • Impact métier (BPM) : agrège des services en processus métier, pour lire l'état de vos services et pas seulement celui des serveurs.
  • Aucun courriel d'alerte, par choix : l'état se lit dans la vigie et les consoles, qui disent quoi traiter.

Applicatif & forge

Éprouvé

Vos services internes, adossés à l'identité commune.

ForgejoSSO OIDCbranding
  • Forge Git Forgejo : dépôts, tickets, revues, wiki — branchée au SSO, comptes auto-créés depuis l'annuaire.
  • La forge du site porte le moteur, les plans et les dépôts privés de chaque locataire. Chaque site a la sienne, et c'est d'elle qu'un écosystème se reproduit.
  • Adossée à PostgreSQL (base provisionnée depuis le registre) et exposée par l'edge.
  • Identité visuelle par le mécanisme officiel (pas de fork), résistante aux mises à jour.

Collaboration

Éprouvé

Fichiers, agendas et documents partagés — sous la même identité.

NextcloudCollaboraWebDAV · CalDAVSSO OIDC
  • Fichiers et partage adossés à PostgreSQL et à l'annuaire — pas de second jeu de comptes.
  • Édition à plusieurs dans le navigateur : un document ouvert est un processus sur votre machine, pas chez un tiers.
  • Agendas et contacts synchronisés sur les appareils, par les protocoles ouverts.
  • Connexion unique — la même que pour le reste du parc.

Les applications de vos clients

Éprouvé

Un client pousse son code dans sa forge ; Set‑OPS le déploie à la version qu'il nomme, en natif.

setops-app.ymlapp_pythonapp_statiquesystemdzéro conteneur
  • Un contrat dans le dépôt de l'application : exécution, démarrage, santé, état, noms des secrets. Le plan du locataire, lui, la place.
  • Une version épinglée, étiquette ou commit, jamais une branche : la relève monte exactement ce qui tourne en production.
  • Des dépendances venues des paquets Debian ou livrées dans le dépôt, jamais tirées d'Internet au déploiement.
  • Une sonde par application, et son état sauvegardé. Le code ne se sauvegarde pas : il revient de la forge, à sa version.
  • Première application cliente en production le 7 novembre 2026, de la forge à la vigie.

Le socle & la méthode

Ce qui traverse toutes les VM.

Sous les piliers, un socle commun tient l'ensemble : durcissement, pare-feu, sauvegardes, et l'outillage qui rend le tout reproductible.

Durcissement par défaut

Chaque VM naît sécurisée.

SSH clé-onlyAppArmorauditdfail2banunattended-upgrades
  • Accès SSH par clé dès le départ (mot de passe désactivé, AuthenticationMethods publickey).
  • AppArmor, auditd, fail2ban, sysctl, journald — appliqués par le groupe socle.
  • nftables préparé dans le template, activé au bon moment sur les clones.

Pare-feu est-ouest

Moindre privilège, dérivé du registre des flux.

nftablesregistre des fluxpolicy drop
  • Qui-parle-à-qui déclaré dans un registre de flux (port, sens, pair, chiffrement, raison).
  • Règles par hôte générées : ip saddr = moindre privilège, reste refusé.
  • Appliqué deux fois : par le pare-feu de l'hyperviseur, puis par nftables sur l'hôte. Le même registre alimente aussi OPNsense en bordure.

Sauvegardes 3-2-1

L'état, pas les VM — car l'infra se reconstruit par le code.

resticchiffréjobs déclaratifsTier 0
  • Sauvegardes restic hors-nœud, chiffrées, avec rétention automatique.
  • Jobs déclaratifs par nœud (dumps PG, LDIF, Maildir, dépôts Git, clés d'AC).
  • Restauration prouvée, jusqu'au Tier 0 (les clés de l'autorité de certification), et rejouée chaque semaine.
  • Copie croisée : chaque nuit, le site partenaire tire le dépôt entier, en lecture seule, et garde 30 jours de générations. Il ne voit que du chiffré.

Le plan & les consoles

Une source unique, éditable en ligne de commande ou à l'écran.

registresconsoleskit sysadminorchestrateur
  • Une console par rôle, derrière le SSO (entretien, mainteneur, hébergeur), avec ses procédures pas à pas ; en local, make inventaire-ui.
  • Une fiche par objet : machine, service, application, base, domaine, zone.
  • Le kit du sysadmin : tunnels, clés et racines remis sur un support chiffré, puis vérifiés sur son poste. Aucune voûte n'y voyage.
  • Liens et orchestrateur : les relations service→service vivent dans le plan, et un point d'entrée ordonné déploie par couches.

La console de l'opérateur

De la grappe nue à l'écosystème vivant.

Tout passe par make et un plan. Un modèle générique socle — DNS, AC/PKI, edge TLS, courriel — est prêt à instancier, renseigner, déployer. Puis vous vivez dans le plan.

  • Golden template Debian 13 construit une fois, cloné pour chaque VM.
  • Clone Proxmox + cloud-init pour l'identité initiale, puis conformité par groupes.
  • Reconstruction from-zero en une commande — crée les VM manquantes puis déploie tout.
  • Multi-tenant portable : une instance par écosystème, prouvée par reconstruction.

Cycle de vie

Du template nu à la flotte, et retour à zéro.

socle

Goldeniser

Une VM Debian 13 minimale devient le golden template : socle, durcissement, cloud-init, qemu-guest-agent.

clone

Cloner & identifier

Clone via l'API Proxmox ; cloud-init donne hostname, clé, IP, DNS. VMID/IP/VLAN lus dans le plan.

conformité

Converger

Les playbooks de groupes appliquent l'état voulu, relançables sans effet de bord. La flotte converge.

from-zero

Reconstruire

Tout supprimer, puis make reconstruire : l'écosystème renaît du code, et son état revient de la sauvegarde.


Un terrain, des maisons

Héberger quelqu'un d'autre sans jamais tenir ses clés.

Un écosystème peut en héberger d'autres. Le site porte le terrain — le réseau, les hyperviseurs, le dépôt de sauvegarde, la source des paquets. Chaque locataire y dérive son propre adressage, ses propres zones et ses propres machines. Et la frontière entre les deux n'est pas une politique : c'est une clé qui n'existe pas d'un côté.

Matérialiser n'est pas configurer

Éprouvé

La ligne exacte entre héberger et exploiter.

  • L'hébergeur peut créer les machines d'un locataire : c'est son matériel.
  • Il ne peut pas les configurer : le locataire a sa propre autorité de certification, et l'hébergeur n'a pas ce secret.
  • Une voûte, une clé. Celle d'un locataire n'ouvre ni son site, ni son voisin.

Naître sans Internet

Éprouvé

Le site fournit tout ce qu'il faut pour venir au monde.

  • Le code — la forge du site sert le moteur et les plans.
  • Les paquets — un cache local, et un dépôt pour les binaires qui ne viennent pas de Debian.
  • Le gabarit, le DNS d'amorçage, le dépôt de sauvegarde.
  • Un écosystème neuf se lève sans une seule requête vers l'extérieur.

L'amorçage sans secret

Éprouvé

Poser la première machine de quelqu'un d'autre.

  • Le site dépose le premier runner d'un locataire — système, moteur, génome.
  • Il n'y met aucun secret du locataire : la voûte arrive après, par la main de son propriétaire.
  • C'est le geste qui rend un hébergement tenable — et vérifiable.

Renaître du code

Éprouvé

L'infrastructure est reconstructible ; c'est l'état qu'on sauvegarde.

  • Un écosystème entier a été rasé puis refait depuis zéro, sans reprise manuelle.
  • Un second écosystème a été monté de bout en bout sur le même moteur — et a révélé six défauts qu'un seul rendait invisibles.
  • Les machines se refont ; les clés, l'annuaire, les bases et le courriel se restaurent.
2sites partenaires, chacun hébergeur de locataires
2locataires en production, un sur chaque site
2relèves allumées, chacune chez l'autre site
0secret du locataire détenu par son hébergeur

Partenariat & relève

Si votre site tombe, un autre prend le relais.

Deux sites qui ne se connaissent pas n'ont en commun que Set‑OPS. Ils deviennent partenaires par une fiche publique, vérifiée de vive voix par son empreinte, et aucun ne lit jamais le dépôt de l'autre. Le partenariat porte le socle commun. La relève, chaque locataire la demande s'il la veut.

Le partenariat, déclaré

Éprouvé

Une entrée au plan du site, d'où tout le reste dérive.

WireGuardDNS secondaireresticmake partenaire-etat
  • Un lien chiffré entre les deux frontières, qui porte l'administration, le DNS et la copie des sauvegardes.
  • Un second serveur de noms public chez le partenaire : zones signées, transfert authentifié.
  • La copie croisée des sauvegardes, pour tous les locataires, relève demandée ou non.
  • Aucune confiance d'autorité entre les sites : un partenaire compromis ne vaut pour aucun de vos noms.

La relève, à la demande

Éprouvé

Une flotte complète qui tourne déjà chez le partenaire.

relève alluméeindex de relèvemake rafraichir-releve
  • Optionnelle : elle n'existe que si le responsable du locataire la demande.
  • Allumée, sous son propre index, à côté de la production du site qui l'accueille.
  • Remise à jour chaque semaine depuis la copie croisée : promotion, restauration, témoins comparés à la production.
  • Discrète tant qu'elle est relève : elle ne sauvegarde pas et n'alerte pas.

Déménager change deux faits

Éprouvé

Le plan d'un locataire ne nomme ni son site, ni ses adresses.

fiche du sitemake promouvoirmake demenager
  • Ce que le site donne (index, adresses, nœud, adresse publique) vient de la fiche qu'il présente.
  • Changer de site, c'est changer d'hébergeur, puis restaurer. Au dépôt du locataire, deux lignes changent.
  • Fait en novembre 2026 : un locataire est rentré sur son propre site. Dernière sauvegarde, promotion, restauration, et ses dix jeux d'état sans écart.

Une personne décide

La mesure instruit ; la bascule reste un geste humain.

make sites-comparermake dns-bascule-devisSPF
  • Aucune bascule automatique : une relève prend le relais quand quelqu'un le décide.
  • Le courriel est annoncé d'avance : le SPF de vos domaines couvre déjà l'adresse de la relève.
  • La bascule des noms publics se lit nom par nom avant d'être faite.
  • Les deux sites répondent aux mêmes questions, côte à côte : plans, pare-feu, règles posées, fabric supervisée.

Preuve & souveraineté

Il ne fait pas que le dire. Il le prouve.

Un outil d'exploitation réelle, pas une démonstration. Chaque affirmation publique est tracée vers une commande de preuve rejouable — ou corrigée.

Vérifier

make verifier enchaîne lint, tests, cohérence, syntaxe et les preuves. Un dépôt qui se tient droit.

Prouver

make prouver produit un rapport horodaté et rejouable — 102 preuves reliées au registre des affirmations. Une pièce justificative.

Valider

make valider : recette fonctionnelle sur la flotte vivante — cibles UP, vhosts HTTPS, courriel livré, sauvegardes restaurées.

100 %logiciel libre (AGPLv3) — rien n'est verrouillé
0dépendance SaaS · zéro conteneur propriétaire
0IA requise — la doc, make et le GUI suffisent
natifsystemd + paquets — pas de PaaS, pas de magie

Feuille de route

Ce qui arrive — annoncé, pas surestimé.

Fidèle au principe : on ne présente jamais comme prêt ce qui ne l'est pas. Deux cases de la version précédente en sont sorties : la relève par la copie croisée a été exercée, et un locataire a quitté son hébergeur pour son propre site, en emportant tout. Voici ce qui reste devant.

Bascule publique

Les noms publics, basculés pour de vrai

Les relèves tournent, et le déménagement s'est fait sans écart. Reste à faire désigner les serveurs de noms des deux sites par les registraires : un geste du responsable de chaque locataire, préparé nom par nom. D'ici là, une relève reste un exercice.

Partenariat

La convention, signée

Le partenariat s'écrit en deux textes : la convention entre les deux sites, et la demande de relève de chaque locataire. Les deux sont rédigés et attendent leurs signatures.

Applications

D'autres environnements d'exécution

Python et sites statiques aujourd'hui. Node et les binaires s'ajouteront au premier besoin d'un client, sur le même socle commun : utilisateur, systemd, nginx local, sonde, sauvegarde.

Certification

Label Souverain · Résilient · Exemplaire

Trois niveaux accumulatifs pour attester la qualité d'un écosystème — garde-fou social inclus. La méthode d'attestation reste à trancher.

Reprenez la souveraineté de votre infrastructure.

Un plan, votre grappe Proxmox, et tout un écosystème numérique — libre, chiffré, prouvé. Sous le ciel de l'Alliance Boréale.