Chaque nom de tunnel ressemble à une ligne d’inventaire tant que vous ne demandez pas à qui il appartient. Un nom vous dit que quelque chose est connecté en ce moment ; il ne vous dit pas à qui appartient le service, ce que les utilisateurs sont autorisés à atteindre, ni si la configuration qui a produit le tunnel est celle que vous avez approuvée. À l’échelle du parc, ces trois questions constituent l’inventaire, et le tunnel n’est que la plus récente observation.

Un service, trois registres

Le service prévu est ce à quoi le locataire a droit : des identités, des préfixes, des ressources et un état de cycle de vie. La configuration déployée est la politique générée qui devrait le réaliser. La session observée est une preuve d’exécution que quelque chose s’est connecté. Les traiter comme une seule table comprime trois sortes différentes de vérité dans une ligne erronée de trois façons à la fois.

RecordAnswersGoes stale when
Intended serviceWho may reach whatA contract changes and nobody edits the record
Deployed configurationWhat the gateway was toldA device is edited by hand
Observed sessionWhat is running nowTelemetry stops or a session ends

Le test pratique est une question à laquelle chaque registre peut répondre seul. Demandez à qui appartient ce préfixe et le registre du service prévu répond. Demandez quelle politique la passerelle détient et le registre déployé répond. Demandez si quelqu’un l’a utilisé cette semaine et le registre des sessions répond. La colonne qui ne peut pas répondre à sa propre question est celle qu’il faut corriger d’abord.

Enregistrez le locataire, pas l’interface

Donnez à chaque service un identifiant qui survit à une reconnexion. Une interface de tunnel temporaire ou un numéro de session changent pour des raisons sans rapport avec le client, et un inventaire fondé sur l’un d’eux gagne une nouvelle ligne à chaque fois qu’un lien vacille. Fondez-le plutôt sur le locataire et le service, puis rattachez les observations à cette clé.

Le registre a besoin du locataire et de l’exploitant responsables, de l’identité de pair ou d’utilisateur acceptée, d’une référence à l’authentifiant plutôt que d’une copie, des préfixes protégés, du contexte de routage, des ressources autorisées et de l’état de cycle de vie prévu. Le matériel d’authentification appartient au magasin de secrets pris en charge ; un inventaire qui porte des clés privées est devenu une seconde copie du parc, moins bien protégée.

La configuration générée a un propriétaire et une version

L’automatisation rend cela plus facile et le dissimule mieux. Un générateur qui s’exécute avec succès prouve que le modèle a été rendu, pas que chaque appareil correspond à la sortie. Quelqu’un finira par modifier une passerelle à la main pendant un incident, et cette modification est la chose la plus précieuse à capturer, car c’est la seule qu’aucune exécution ultérieure ne reproduira.

Enregistrez quelle révision a produit la politique déployée, et conservez les modifications directes comme un écart à réconcilier au lieu de les écraser en silence. La réconciliation est le produit ici : le succès du générateur et l’état réel de l’appareil sont deux faits qu’il faut comparer, et non supposer égaux.

Les sessions sont des preuves, pas une autorisation

Là où le déploiement utilise la comptabilité RADIUS, la RFC 2866 fournit des champs concrets avec lesquels travailler. Acct-Status-Type distingue un début d’un arrêt, et les enregistrements d’une même session partagent un Acct-Session-Id. Ces champs vous permettent de reconstituer quand une session a commencé et fini sans faire confiance au résumé d’un tableau de bord.

Un identifiant de comptabilité est une preuve d’exécution. Il ne définit pas quel locataire possède un sous-réseau et il n’accorde d’accès à rien. Corrélez-le avec la passerelle et l’identité du service, puis gardez l’heure de collecte à côté de l’observation. Un rapport manquant peut être une panne de télémétrie plutôt qu’une absence d’usage, et un ancien enregistrement ne prouve pas que l’accès reste actif maintenant.

Le retrait utilise la même jointure

Retirer un service signifie retirer l’accès prévu, les authentifiants et les sessions actives, dans cet ordre, via les propriétaires de chacun. Vérifiez ensuite que la configuration obsolète a disparu des appareils et que ses chemins autorisés ne se résolvent plus. Un client parti au trimestre dernier ne devrait pas encore figurer dans une liste de préfixes parce que le nom du tunnel a été supprimé mais pas la route.

Rien de tout cela n’exige un équipement par fonction ni un produit d’automatisation particulier. L’exigence opérationnelle est plus étroite et plus difficile : un client, son accès prévu, la politique déployée et les preuves d’exécution actuelles doivent être joignables sans dépendre de la mémoire d’un nom de tunnel. Construisez d’abord les trois registres, puis choisissez les outils qui les maintiennent.

Articles similaires