Commit graph

720 commits

Author SHA1 Message Date
e84b155a5f pool d adresses publiques : le site attribue a chaque locataire la sienne
Declare dans opnsense.yml du site, rendu par le contrat (ip_publique), valide (une par
locataire, jamais celle du site), compare aux alias du WAN par frontiere-plan.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 15:24:09 -04:00
712a7da1fd frontiere : les flux admin traduits chez les tenants ; edge retire de l Internet
Le devis OPNsense ne rendait le chemin du poste chez un tenant qu au travers des flux
externe ; il traduit desormais les flux admin (gestion, VPN). Applique : 4 retraits
(WAN -> edges), 18 ajouts, 0 ecart. sonde_tcp : une fermeture propre apres la requete
est une reponse de la destination ; la mesure de la frontiere est conforme.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 15:05:23 -04:00
81cdb84f66 journal : pare-feu Proxmox et nftables des edges poses ; route du poste vers le site
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 14:09:29 -04:00
2695013b32 proxmox-fw : les types ICMP au vocabulaire de Proxmox (fragmentation-needed)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 14:05:22 -04:00
e68f315625 wiki publie : temoin a jour
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 13:58:11 -04:00
1493059271 edge ferme a l Internet ; le pare-feu Proxmox recoit les flux externe
L edge n expose qu a sa zone d administration (plus de pair externe) ; le public passera
par le web frontal. Le devis Proxmox recoit les flux externe depuis +t<i>-internet (RFC 1918
exclus en nomatch) et depuis l admin quand le poste en est client.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 13:58:01 -04:00
1bd211d62b resolution_interne : entre machines du site, chaque nom mene a son service
L edge expose les interfaces web aux personnes ; les VM du site vont directement au
service. Declare par domaine (service | edge, defaut edge) ; plancher, zone et certificat
du service suivent. Pose au site : 35 planchers sur 35 conformes ; locataires inchanges.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 13:25:37 -04:00
efb1b3d334 wiki publie : temoin a jour
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 12:34:49 -04:00
eee6851c3b sonde plancher ; une exposition sans port n est plus attribuee a l edge
La zone publie l empreinte de ce que le plancher doit porter ; chaque machine la compare
a son /etc/hosts. Au site, elle a revele que sauvegarde, pki et dns.genese.internal
pointaient vers l edge (regression de mon deploiement du matin) : la derivation ne donne
plus a l edge ce qui n a pas de port. Zone du site corrigee, SFTP des locataires verifie.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 12:34:47 -04:00
ba2020d486 powerdns : une zone plus recente que sa version servie est rechargee ; zones le voit
PowerDNS servait chez les deux locataires une zone anterieure a son fichier (console
absente) : le handler de rechargement avait ete abandonne. Reconciliation a chaque
passage (bind-reload-now) et controle dans la sonde zones. Plancher /etc/hosts rejoue
sur les deux locataires ; console se resout depuis les edges.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 05:29:45 -04:00
fbd4094d3f wiki publie : temoin a jour
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 00:30:45 -04:00
2bbe12299f sonde passerelle : le trajet d un visiteur jusqu a la page de connexion
Apres /ping, /oauth2/start doit renvoyer vers l emetteur configure pour ce client, et
l IdP, joint depuis la passerelle, doit servir sa page de connexion. Le secret du client
n est pas teste (journal du realm). Port derive de l ecoute ; archive oauth2-proxy
plus retransferee a chaque deploiement. Fin de la revue des sondes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 00:30:43 -04:00
5404c947d8 wiki publie : temoin a jour
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 23:55:59 -04:00
1653319ef1 sonde vigie : elle eprouve ce que la vigie lit, pas seulement qu elle repond
Apres check_http, la sonde lit la configuration deployee d Icinga Web 2 et eprouve
chaque ressource utilisee avec ses identifiants : base du moteur (hotes), annuaire ou
base des comptes, Redis. Au vert sur les trois ; quatre mises en defaut critiques.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 23:55:58 -04:00
8ac7909d49 wiki publie : temoin a 4e07b52
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 22:03:37 -04:00
4e07b52291 sonde vigie : la sonde d Icinga Web 2 ne s appelle plus console
Le vocabulaire des plans dit vigie pour Icinga Web 2 et console pour la console
d exploitation Set-OPS (sonde console-ops). Renommee et posee sur les trois
supervisions ; client_sante a retire l orphelin console.sh ; vigie au vert partout.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 22:01:21 -04:00
ca1f1557c4 wiki : fiches des roles regenerees
Rattrape les sondes declarees aujourd hui (disque, fabric, genome-a-jour, tableaux,
filtrage) et les flux de la PR fusionnee (serveur_dns_public, console-ops, icingaweb2).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 20:17:46 -04:00
9e6f33d1cf sonde identite : Keycloak doit atteindre l annuaire ; l archive Keycloak ne voyage plus pour rien
La sonde demande a Keycloak de s authentifier aupres de LDAP avec la federation
enregistree (testLDAPConnection, secret masque). Eprouvee sur les deux locataires ;
mise en defaut par parametre. Le repere d archive deja posee est le marqueur de
construction de la version, pas /tmp : changed=0 au redeploiement.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 20:17:46 -04:00
6b6a56ab3f sondes filtrage et edge : elles verifient le service rendu ; l edge refuse les noms inconnus
filtrage soumet GTUBE ; edge interroge chaque exposition en local. Sans serveur
par defaut, un nom inconnu recevait Keycloak : 000-defaut.conf (444, rejet TLS).
Garde test_sondes_syntaxe : chaque gabarit de sonde se rend en bash valide.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 19:40:26 -04:00
b938897e17 sonde tableaux : la sante de chaque source de donnees de Grafana
Elle etait verte pendant que les tableaux etaient vides. Eprouvee avec une
source recreant le defaut du jour, puis retiree.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:51:53 -04:00
8f699eb3ce grafana : l URL de Loki suit son TLS ; les tableaux des locataires se remplissent
Loki servait en HTTPS, Grafana lui parlait en clair : la variable host restait
vide et aucun panneau ne s affichait. URL derivee de serveur_loki_tls_actif.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:40:41 -04:00
cf08e51c38 wireguard : pairs de Technolibre appliques ; un renommage se fait sur place
Le meme appareil renomme garde sa cle : creer puis retirer echouait (cle en
double) et laissait le tunnel sans pair dans la configuration. rapprocher le
reconnait a la cle et modifie le pair existant.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:33:04 -04:00
3063bd4bf3 sonde genome-a-jour eprouvee ; libelle ; journal
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:28:32 -04:00
5c638675cb sonde genome-a-jour : la forge du site porte-t-elle ce que le poste a publie ?
Filet sous make publier : compare la forge du site a eregion (repere seulement,
depots lisibles sans identifiant), tolere l ecart d une publication en cours.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:23:16 -04:00
91dc90f22b publier : eregion et la forge du site en un seul geste, verifie
La forge du site fait autorite et n etait nourrie que par un geste a part,
genome-pousser, qu on oublie. make publier pousse, porte, et verifie ; il refuse
si eregion porte des commits absents du poste.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:20:06 -04:00
974fabc40a restauration : premier passage sur 19 noeuds ; journal
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:11:45 -04:00
b1c4775afe sauvegardes : un controle hebdomadaire de restauration, rapporte a Icinga
restic check en relisant 10 pourcent des donnees, puis restauration reelle du
dernier instantane avec --verify et comptage des fichiers. Service restauration,
fraicheur de 8 jours, filtre du compte d API complete.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:04:28 -04:00
bcf62bafe7 sonde fabric en service ; journal
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 17:01:08 -04:00
6edb8ac7d2 sonde fabric : detail lisible
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 16:57:57 -04:00
79fcff3274 sonde fabric : le pare-feu, le SDN, la frontiere et les acces disent-ils le plan ?
Un minuteur horaire sur le runner du site joue les plans de lecture et
consigne l ecart ; la sonde lit le constat, et signale un constat perime.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 16:56:17 -04:00
a401481ae9 administration : la frontiere garde l intrant, l est-ouest y ajoute le tunnel
Ajouter le tunnel a admin_de l avait fait classer WAN par le devis de la
frontiere : une regle SSH sur le WAN qui ne correspondrait jamais.
admin_avec_tunnel pour Proxmox et l epreuve ; admin_de redevient l intrant.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 16:54:32 -04:00
22fffdbb6f sonde disque : declaree et posee par client_sante, P64 conforme
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 16:51:38 -04:00
40b38467e8 sonde disque : espace et inodes de chaque systeme de fichiers, sur tout noeud
Seuls le cache apt et les depots de sauvegarde etaient surveilles. Declaree par
serveur_debian, posee par client_sante (pas par common_packages, qui ferait un
upgrade full de la flotte pour deposer un script). Seuils 80/90 pourcent.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 16:23:40 -04:00
5e7534d87f pare-feu proxmox : la procedure d activation prouvee entre au depot
eprouver_parefeu.py, make proxmox-fw-eprouver et proxmox-fw-activer-vm :
matrice du devis, flux observes, avant/apres, Icinga ; sans objet derive de
ce qui ecoute, VMID du bon locataire.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 16:09:22 -04:00
d243773b45 pare-feu proxmox : les 26 VM des locataires filtrees, plan conforme
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:58:39 -04:00
aac2d35e06 devis courriel et identite : ils nomment le compte du service qu ils verifient
Depuis le 13 septembre, resoudre_annuaire exige un compte par consommateur ;
ces deux devis retombaient sur inconnu et echouaient avant toute connexion.
courriel-plan et identite-plan : CONFORME.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:54:01 -04:00
67fd3ab6b7 administration : nftables et Proxmox admettent les memes sources
Le devis Proxmox ne lisait que nftables_admin_ssh ; nftables y ajoutait le
tunnel du locataire. Filtre par Proxmox, Technolibre refusait le SSH de son
propre tunnel. Une derivation, tunnel_admin_de, pour les deux.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:39:37 -04:00
8804d67dbf pare-feu proxmox : Technolibre entierement filtre, VM par VM
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:36:41 -04:00
d673f97ac9 pare-feu proxmox : deuxieme lot de Technolibre, flux observes et matrice 100/100
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:10:08 -04:00
58432fa6e1 pare-feu proxmox : quatre VM de Technolibre filtrees, matrice 19/19 et controle negatif
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:06:36 -04:00
35831608d0 pare-feu proxmox : un flux ICMP devient une regle, au lieu d etre saute
Le type ICMP (echo-request) etait range parmi les ports derives et le flux
saute : le ping de supervision n avait pas de regle, et web-frontal-01 passe
en REJECT est devenu mort pour Icinga. icmp_type dans le devis, icmp-type
vers l API.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:01:04 -04:00
4ce296f3d5 pare-feu proxmox : un flux ICMP devient une regle, au lieu d etre saute
Le type ICMP (echo-request) etait range parmi les ports derives et le flux
saute : le ping de supervision n avait pas de regle, et web-frontal-01 passe
en REJECT est devenu mort pour Icinga. icmp_type dans le devis, icmp-type
vers l API.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 13:29:38 -04:00
3676e69cd9 pare-feu proxmox : poser les objets, puis activer VM par VM
--objets-seulement et --vm <vmid> : aucune des 26 VM des locataires n avait son
pare-feu actif ; tout activer d un coup ouvrait 26 pannes possibles a la fois.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 13:26:18 -04:00
4f5a0b5696 pare-feu proxmox : poser les objets, puis activer VM par VM
--objets-seulement et --vm <vmid> : aucune des 26 VM des locataires n avait son
pare-feu actif ; tout activer d un coup ouvrait 26 pannes possibles a la fois.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 13:25:29 -04:00
0156596f01 P02 : une table du plan ne se coupe plus a son premier commentaire
_fusion_table traversait mal les commentaires interieurs a une entree :
chezlepro.ca (DNSSEC) etait coupee et ses enregistrements pris pour des entrees.
make verifier : CONFORME, 83 OK, 0 echec.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 13:17:52 -04:00
ffc171a2cb cache d artefacts : l amont suit artefacts_amorcage, plus une adresse morte
serveur_artefacts_amont portait 10.0.33.21, l adresse du cache du site avant
son index. Inerte aujourd hui (aucun hote ne porte serveur_artefacts ; apt passe
par artefacts_amorcage), mais un piege le jour d une emancipation. Derive.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 13:04:52 -04:00
5f52dcb2b7 wireguard : rotation des cles de daniel-portable, sans afficher de privee
cle-appareil et config --cle/--vers ecrivent les secrets en 0600 ;
--portee restreint appliquer au tunnel vise. Nouvelles cles en service,
anciennes retirees, Technolibre intact.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 12:57:15 -04:00
4855cda294 voutes : elles sortent du poste, dans leur propre archive, relues
exporter_voutes.py et make voutes-exporter : les six voutes (gitignorees, sur
aucune forge) sont sur la cle USB, a cote des cles ; restauration eprouvee.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 12:53:14 -04:00
2bd761b85f exportateur postgresql : la promesse dit ce que fait Prometheus
Vide, le secret ne pose pas l exportateur, mais Prometheus derive quand meme sa
cible : la collecte rougit, et c est voulu. La phrase promettait l inverse.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 12:48:29 -04:00
415189ceff journal : les journaux de la frontiere sont couverts, contrairement a ce qu il disait
L affirmation venait d un diff, qui ne montre que ce qui change. Mesure : la
sonde site-mon-01!journaux-frontiere est verte, 748 lignes en 10 min.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 12:43:10 -04:00