40 lines
411 KiB
XML
40 lines
411 KiB
XML
|
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 1917 1440" font-family="-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif">
|
||
|
|
<defs><linearGradient id="au" x1="0" y1="1" x2="1" y2="0"><stop offset="0" stop-color="#4fe3c1"/><stop offset="0.5" stop-color="#56c2ff"/><stop offset="1" stop-color="#a98bff"/></linearGradient><filter id="om" x="-40%" y="-40%" width="180%" height="180%"><feDropShadow dx="0" dy="1" stdDeviation="2" flood-color="#000" flood-opacity="0.55"/></filter></defs>
|
||
|
|
<rect x="0" y="0" width="1917" height="1440" fill="#070a19"/>
|
||
|
|
<image x="0" y="0" width="1917" height="1199" xlink:href="data:image/png;base64,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
|
||
|
|
<rect x="0" y="1199" width="1917" height="8" fill="url(#au)" opacity="0.9"/>
|
||
|
|
<g filter="url(#om)"><circle cx="1610" cy="25" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="1610" cy="25" r="17" fill="url(#au)"/><text x="1610" y="25" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">1</text></g>
|
||
|
|
<g filter="url(#om)"><circle cx="381" cy="105" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="381" cy="105" r="17" fill="url(#au)"/><text x="381" y="105" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">2</text></g>
|
||
|
|
<g filter="url(#om)"><circle cx="250" cy="132" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="250" cy="132" r="17" fill="url(#au)"/><text x="250" y="132" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">3</text></g>
|
||
|
|
<g filter="url(#om)"><circle cx="298" cy="201" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="298" cy="201" r="17" fill="url(#au)"/><text x="298" y="201" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">4</text></g>
|
||
|
|
<g filter="url(#om)"><circle cx="478" cy="201" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="478" cy="201" r="17" fill="url(#au)"/><text x="478" y="201" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">5</text></g>
|
||
|
|
<g filter="url(#om)"><circle cx="817" cy="205" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="817" cy="205" r="17" fill="url(#au)"/><text x="817" y="205" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">6</text></g>
|
||
|
|
<g filter="url(#om)"><circle cx="1000" cy="210" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="1000" cy="210" r="17" fill="url(#au)"/><text x="1000" y="210" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">7</text></g>
|
||
|
|
<g filter="url(#om)"><circle cx="1210" cy="165" r="21" fill="#0a0d24" stroke="#fff" stroke-width="2.5"/><circle cx="1210" cy="165" r="17" fill="url(#au)"/><text x="1210" y="165" text-anchor="middle" dominant-baseline="central" font-size="22" font-weight="800" fill="#04121a">8</text></g>
|
||
|
|
<text x="40" y="1244" font-size="24" font-weight="800" fill="#e9ecff">Vue Flux — repères</text>
|
||
|
|
<text x="332" y="1244" font-size="15" fill="#99a1c9">la matrice d'audit : source de nftables ET justification de chaque flux.</text>
|
||
|
|
<circle cx="53" cy="1278" r="13" fill="url(#au)"/>
|
||
|
|
<text x="53" y="1278" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">1</text>
|
||
|
|
<text x="76" y="1283" font-size="15.5" fill="#c9d0f0">Instance PROD active — compteurs dérivés de l'inventaire.</text>
|
||
|
|
<circle cx="1000" cy="1278" r="13" fill="url(#au)"/>
|
||
|
|
<text x="1000" y="1278" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">2</text>
|
||
|
|
<text x="1023" y="1283" font-size="15.5" fill="#c9d0f0">Onglets : les registres du plan et les vues dérivées (Flux est une vue).</text>
|
||
|
|
<circle cx="53" cy="1322" r="13" fill="url(#au)"/>
|
||
|
|
<text x="53" y="1322" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">3</text>
|
||
|
|
<text x="76" y="1327" font-size="15.5" fill="#c9d0f0">Matrice d'audit des flux (63) : la source de nftables ET l'audit, en un tableau.</text>
|
||
|
|
<circle cx="1000" cy="1322" r="13" fill="url(#au)"/>
|
||
|
|
<text x="1000" y="1322" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">4</text>
|
||
|
|
<text x="1023" y="1327" font-size="15.5" fill="#c9d0f0">Sens : ingress = le rôle écoute · egress = il se connecte.</text>
|
||
|
|
<circle cx="53" cy="1366" r="13" fill="url(#au)"/>
|
||
|
|
<text x="53" y="1366" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">5</text>
|
||
|
|
<text x="76" y="1371" font-size="15.5" fill="#c9d0f0">Pair : l'autre bout du flux — un rôle, localhost, externe, ou la flotte.</text>
|
||
|
|
<circle cx="1000" cy="1366" r="13" fill="url(#au)"/>
|
||
|
|
<text x="1000" y="1366" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">6</text>
|
||
|
|
<text x="1023" y="1371" font-size="15.5" fill="#c9d0f0">Chiffrement : ssh · tls · tls-requis (pair vérifié) · starttls · tls-cible (roadmap) · clair.</text>
|
||
|
|
<circle cx="53" cy="1410" r="13" fill="url(#au)"/>
|
||
|
|
<text x="53" y="1410" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">7</text>
|
||
|
|
<text x="76" y="1415" font-size="15.5" fill="#c9d0f0">Raison : pourquoi ce flux existe — la justification lisible de chaque règle.</text>
|
||
|
|
<circle cx="1000" cy="1410" r="13" fill="url(#au)"/>
|
||
|
|
<text x="1000" y="1410" text-anchor="middle" dominant-baseline="central" font-size="15" font-weight="800" fill="#04121a">8</text>
|
||
|
|
<text x="1023" y="1415" font-size="15.5" fill="#c9d0f0">Vue en lecture seule : éditer les meta/flux.yml des rôles, puis make flux.</text>
|
||
|
|
</svg>
|