You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/pages/fr/index.astro
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -42,7 +42,7 @@ const cards = [
42
42
{
43
43
icon: '⚙',
44
44
title: 'IaC, CI/CD & Automatisation',
45
-
description: 'Ansible via Semaphore pour le déploiement — 13 playbooks couvrent du hardening SSH au déploiement d\'agents. CI/CD sur Forgejo Runner (Podman). Configs versionnées. Unattended upgrades partout.',
45
+
description: 'Ansible via Semaphore pour le déploiement — 12 playbooks couvrent du hardening SSH au déploiement d\'agents. CI/CD sur Forgejo Runner (Podman). Configs versionnées. Unattended upgrades partout.',
<pclass="tech-why"><strong>Pourquoi :</strong> Config dynamique en YAML rechargee a chaud — j'ajoute un service HTTPS en deposant un fichier dans <code>conf.d/</code>, sans restart. ACME natif avec step-ca.</p>
<pclass="tech-result"><spanclass="result-label">Resultat :</span> 20+ services HTTPS, certificats auto-renouveles, zero intervention manuelle</p>
174
+
<pclass="tech-result"><spanclass="result-label">Resultat :</span> 25+ services HTTPS, certificats auto-renouveles, zero intervention manuelle</p>
175
175
</div>
176
176
</div>
177
177
@@ -207,7 +207,7 @@ const monitoringSlides = [
207
207
<divclass="tech-card-body">
208
208
<pclass="tech-why"><strong>Pourquoi :</strong> OAuth2/OIDC universel — chaque service a son propre provider. Forward-auth proxy pour les services sans SSO natif. WebAuthn (YubiKey) pour le MFA.</p>
209
209
<pclass="tech-alt"><spanclass="alt-label">Ecartes :</span> Keycloak (Java lourd, 1 Go+ RAM), Authelia (moins flexible sur les flows custom)</p>
210
-
<pclass="tech-result"><spanclass="result-label">Resultat :</span> SSO sur 8 services hétérogènes, un seul login pour tout le homelab</p>
210
+
<pclass="tech-result"><spanclass="result-label">Resultat :</span> SSO sur 6 services hétérogènes, un seul login pour tout le homelab</p>
211
211
</div>
212
212
</div>
213
213
@@ -219,7 +219,7 @@ const monitoringSlides = [
219
219
<divclass="tech-card-body">
220
220
<pclass="tech-why"><strong>Pourquoi :</strong> Agentless — SSH suffit, pas de daemon a installer sur 30+ CTs. Idempotent — je relance un playbook sans risque. Semaphore ajoute une UI web pour les lancements en 1 clic.</p>
221
221
<pclass="tech-alt"><spanclass="alt-label">Ecartes :</span> Puppet/Chef (agents sur chaque hote), Terraform (provisioning, pas config management)</p>
@@ -91,7 +91,7 @@ import StatsBar from '../../components/StatsBar.astro';
91
91
</div>
92
92
<divclass="spec">
93
93
<spanclass="spec-label">Résultat</span>
94
-
<spanclass="spec-value">20+ services en HTTPS valide, cadenas vert, zéro avertissement navigateur</span>
94
+
<spanclass="spec-value">25+ services en HTTPS valide, cadenas vert, zéro avertissement navigateur</span>
95
95
</div>
96
96
</div>
97
97
</div>
@@ -106,7 +106,7 @@ import StatsBar from '../../components/StatsBar.astro';
106
106
<h2>SSO Authentik — un login pour tout</h2>
107
107
</div>
108
108
<divclass="layer-content">
109
-
<p>Authentik centralise l'authentification sur <strong>8 services</strong> via OAuth2/OIDC. Un seul couple identifiant/mot de passe, un seul point de contrôle, un seul endroit où révoquer un accès. La phase 2 supprimera les logins locaux — SSO-only + YubiKey WebAuthn.</p>
109
+
<p>Authentik centralise l'authentification sur <strong>6 services</strong> via OAuth2/OIDC. Un seul couple identifiant/mot de passe, un seul point de contrôle, un seul endroit où révoquer un accès. La phase 2 supprimera les logins locaux — SSO-only + YubiKey WebAuthn.</p>
110
110
<divclass="details-grid">
111
111
<divclass="detail">
112
112
<h4>Services intégrés</h4>
@@ -263,8 +263,8 @@ import StatsBar from '../../components/StatsBar.astro';
<pclass="tech-why"><strong>Why:</strong> Dynamic YAML config hot-reloaded — I add an HTTPS service by dropping a file in <code>conf.d/</code>, no restart needed. Native ACME with step-ca.</p>
<pclass="tech-result"><spanclass="result-label">Result:</span> 20+ HTTPS services, auto-renewed certificates, zero manual intervention</p>
174
+
<pclass="tech-result"><spanclass="result-label">Result:</span> 25+ HTTPS services, auto-renewed certificates, zero manual intervention</p>
175
175
</div>
176
176
</div>
177
177
@@ -207,7 +207,7 @@ const monitoringSlides = [
207
207
<divclass="tech-card-body">
208
208
<pclass="tech-why"><strong>Why:</strong> Universal OAuth2/OIDC — each service gets its own provider. Forward-auth proxy for services without native SSO. WebAuthn (YubiKey) for MFA.</p>
<pclass="tech-result"><spanclass="result-label">Result:</span> SSO across 8 heterogeneous services, single login for the entire homelab</p>
210
+
<pclass="tech-result"><spanclass="result-label">Result:</span> SSO across 6 heterogeneous services, single login for the entire homelab</p>
211
211
</div>
212
212
</div>
213
213
@@ -219,7 +219,7 @@ const monitoringSlides = [
219
219
<divclass="tech-card-body">
220
220
<pclass="tech-why"><strong>Why:</strong> Agentless — SSH is enough, no daemon to install on 30+ CTs. Idempotent — I rerun a playbook without risk. Semaphore adds a web UI for one-click launches.</p>
221
221
<pclass="tech-alt"><spanclass="alt-label">Rejected:</span> Puppet/Chef (agents on every host), Terraform (provisioning, not config management)</p>
222
-
<pclass="tech-result"><spanclass="result-label">Result:</span> 13 operational playbooks, Wazuh/Beszel agent deployment in 1 command</p>
222
+
<pclass="tech-result"><spanclass="result-label">Result:</span> 12 operational playbooks, Wazuh/Beszel agent deployment in 1 command</p>
@@ -91,7 +91,7 @@ import StatsBar from '../components/StatsBar.astro';
91
91
</div>
92
92
<divclass="spec">
93
93
<spanclass="spec-label">Result</span>
94
-
<spanclass="spec-value">20+ services with valid HTTPS, green padlock, zero browser warnings</span>
94
+
<spanclass="spec-value">25+ services with valid HTTPS, green padlock, zero browser warnings</span>
95
95
</div>
96
96
</div>
97
97
</div>
@@ -106,7 +106,7 @@ import StatsBar from '../components/StatsBar.astro';
106
106
<h2>SSO Authentik — one login for everything</h2>
107
107
</div>
108
108
<divclass="layer-content">
109
-
<p>Authentik centralizes authentication across <strong>8 services</strong> via OAuth2/OIDC. One set of credentials, one control point, one place to revoke access. Phase 2 will remove local logins — SSO-only + YubiKey WebAuthn.</p>
109
+
<p>Authentik centralizes authentication across <strong>6 services</strong> via OAuth2/OIDC. One set of credentials, one control point, one place to revoke access. Phase 2 will remove local logins — SSO-only + YubiKey WebAuthn.</p>
110
110
<divclass="details-grid">
111
111
<divclass="detail">
112
112
<h4>Integrated services</h4>
@@ -263,8 +263,8 @@ import StatsBar from '../components/StatsBar.astro';
0 commit comments