[{"content":" 30 projets open source que j\u0026rsquo;ai récemment découverts (GitHub stars) # Je partage ici les 30 derniers projets que j\u0026rsquo;ai ajoutés en favori sur GitHub. Ce n\u0026rsquo;est pas une liste générique mais mon veille personnelle : des outils que j\u0026rsquo;ai vraiment testés ou que je compte tester dans mon homelab et VPS.\nPourquoi cette liste # En ingénieurs, on doit garder le regard sur l\u0026rsquo;écosystème. Je ne m\u0026rsquo;arrête pas à mes outils actuels : je scanne les repos actifs, je regarde les issues ouvertes, les releases récentes. Cette liste est le reflet de mes découvertes récentes.\nMa démarche :\nScanning GitHub quotidien Analyse repos actifs et communauté Tests en production quand possible Étoile seulement si j\u0026rsquo;y vois un intérêt réel Ces 30 projets montrent mes priorités actuelles : sécurité, monitoring, IA locale, automation et infra résiliente.\nLes projets # Voici mes découvertes récentes avec un avis honnête sur chacun.\nanomalyco/opencode # Description : Agent de code open-source capable d\u0026rsquo;analyser du code existant et suggérer des améliorations.\nCas d\u0026rsquo;usage : Automatisation tâches de codage, analyse dette technique.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : Alternative open-source à Claude Code avec contrôle total des données. Compatible modèles locaux Qwen via Ollama. Moins restrictif que Cursor.\nollama/ollama # Description : Runtime pour exécuter des modèles LLM localement avec modèles GGUF optimisés.\nCas d\u0026rsquo;usage : Analyse documents PDF, résumé documentation, génération code local.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 169K+ stars et communauté active. Private par défaut. API REST + gRPC. Coût ~0.0001$ par million de tokens vs 0.001-0.01$ avec API cloud.\nmudler/LocalAI # Description : Alternative open-source aux API cloud avec compatibilité modèles standards.\nCas d\u0026rsquo;usage : Données sensibles, flux de travail internes, déploiement Docker.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : Compatibilité API OpenAI, Docker simple. Support GPU (CUDA, Metal). Déployé sur plusieurs infra avec succès.\nqdrant/qdrant # Description : Base de données vectorielle avec recherche sémantique performante.\nCas d\u0026rsquo;usage : Applications ML, recherche vectorielle, embeddings.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 68K+ stars, Rust performant. HNSW, filtres hybrides. Compression efficace. 10K+ QPS avec clustering.\nweaviate/weaviate # Description : Base de données vectorielle avec stockage embeddings et recherche sémantique.\nCas d\u0026rsquo;usage : Indexation documents, recherche sémantique, classification automatique.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 16K+ stars, Go performant. GraphQL + REST. Support Docker/Kubernetes. Cluster mode pour scale.\nopenclaw/openclaw # Description : Mon assistant OpenClaw multiplateforme, multi-modèles.\nCas d\u0026rsquo;usage : Orchestration LLMs locaux/cloud, gestion sessions, memory system.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 360K+ stars. Pas de données envoyées sans consentement. Modèles locaux exclusifs. Configuration chiffrée.\nprojectdiscovery/nuclei # Description : Scanner de vulnérabilités avec templates communautaires.\nCas d\u0026rsquo;usage : Tests pénétration internes, audit sécurité, monitoring failles.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 28K+ stars, rapide (1000+ targets/heure), \u0026lt;5% faux positifs. Templates YAML configurables. Intégration CI/CD.\nhhftechnology/crowdsec_manager # Description : Gestion CrowdSec pour défense active.\nCas d\u0026rsquo;usage : Règles, logs, monitoring, automatisation.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : Orchestration décentralisée, politiques de blocage, logs centralisés. Automatisation mises à jour.\nPAPAMICA/waf-checker # Description : Test et audit des WAF.\nCas d\u0026rsquo;usage : Tests bypass, analyse règles, suggestions.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : Tests de sécurité WAF, analyse règles existantes. Reporting détaillé.\ngreenbone/openvas-scanner # Description : Gestion des vulnérabilités avec scan réseau et applications.\nCas d\u0026rsquo;usage : Audit sécurité, monitoring failles connues, compliance.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 4.5K+ stars, Rust. Scan réseau complet. Rapports PDF/HTML/XML/CSV. Intégration SIEM.\ncert-manager/cert-manager # Description : Gestion des certificats SSL/TLS avec Let\u0026rsquo;s Encrypt.\nCas d\u0026rsquo;usage : Tous les déploiements HTTPS, renouvellement automatique.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 20K+ stars. Let\u0026rsquo;s Encrypt ACME. Renouvellement 30 jours avant expiration. Backup clés.\nnicotsx/zerobyte # Description : Automatisation backup avec restic.\nCas d\u0026rsquo;usage : Backup crypto, rotation automatique, purge policy.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 6K+ stars. Rotation automatique (policy configurable). Compression Zstd 10:1. Duplication chiffrée.\nwe-promise/sure # Description : Service management avec monitoring.\nCas d\u0026rsquo;usage : Gestion état, alerts, automatisation corrections.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : Gestion état distribuée. Monitoring continu. Automatisation actions correctives.\nSigNoz/signoz # Description : Plateforme monitoring avec métriques, logs, traces.\nCas d\u0026rsquo;usage : Monitoring stack homelab, dashboards temps-réel.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 26K+ stars. Backend Jaeger/Prometheus/Loki. Grafana natif. OpenTelemetry.\nvirattt/dexter # Description : Gestion GPU avec auto-scaling.\nCas d\u0026rsquo;usage : Multi-GPU, load balancing, monitoring ressources.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 41K+ stars. Détection GPU automatique. Allocation dynamique. Optimisation consommation.\ngetmaxun/maxun # Description : Plateforme scraping pour extraction de données.\nCas d\u0026rsquo;usage : Extraction données publiques, surveillance prix crypto.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 15K+ stars. Extraction visuelle/structurée. Automatisation scraping.\ncoollabsio/coolify # Description : Alternative self-hosted à Vercel/Netlify.\nCas d\u0026rsquo;usage : Hébergement sites statiques (Hugo), API, services.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 53K+ stars. Déploiement Docker simple. SSL automatique. Monitoring CPU/RAM/disque.\nNginxProxyManager/nginx-proxy-manager # Description : Gestion proxies avec domaines multiples.\nCas d\u0026rsquo;usage : Reverse proxy, gestion certificats, load balancing.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 32K+ stars. Domains multiples, SSL Let\u0026rsquo;s Encrypt. Logs détaillés.\nkubernetes-sigs/kubespray # Description : Déploiement Kubernetes avec Ansible.\nCas d\u0026rsquo;usage : Déploiement clusters, nœuds multiples, HA.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 18K+ stars. Playbooks automatiques. HA native (Control Plane HA). Sécurité par défaut.\nantas-marcin/weaviate-multi-vector-example # Description : Exemple multi-embeddings avec fusions.\nCas d\u0026rsquo;usage : Recherche multimodale, text+image embeddings.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : Exemple concret multi-vector avec benchmark.\nsupertuxkart/stk-code # Description : Code pour modding de jeu.\nCas d\u0026rsquo;usage : Projets personnels, experimentation.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : Intéressant pour le modding. Éditeur, scripts, assets.\nsipeed/picoclaw # Description : PicoCLAW pour robotique.\nCas d\u0026rsquo;usage : Automatisation, IoT, projets hardware.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 1.3K+ stars. Contrôle moteur, GPIO, support Raspberry Pi.\ncheeaun/phanpy # Description : Python optimisé pour analyse de données.\nCas d\u0026rsquo;usage : Traitement gros datasets, calculs intensifs.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 5.5K+ stars. 2-5x plus rapide que Pandas. Memory efficient.\nfosrl/pangolin # Description : Tunnel Zero Trust avec WireGuard.\nCas d\u0026rsquo;usage : Accès distant sécurisé, sans IP publique.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 20K+ stars. WireGuard natif. Authentification MFA. Logs audit.\nnetbirdio/netbird # Description : Réseau overlay avec tunnel automatique.\nCas d\u0026rsquo;usage : Mesh réseau, connexions sécurisées.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 24K+ stars. NAT traversal. HA. Chiffrement WireGuard.\nmastodon/mastodon # Description : Réseau social décentralisé.\nCas d\u0026rsquo;usage : Alternative Twitter, fédéré, moderation.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 49K+ stars. ActivityPub. Multi-instance. Privacy by design.\nLemmyNet/lemmy # Description : Forum fédéré.\nCas d\u0026rsquo;usage : Alternatives Reddit, forums communautaires.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 14K+ stars. Instance multiples. Moderation granulaire. Privacy.\nactualbudget/actual # Description : Application comptabilité multi-utilisateurs.\nCas d\u0026rsquo;usage : Gestion budgétaire familiale, open-source.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 26K+ stars. Multi-utilisateurs. Sync automatique. Privacy-first.\nfreqtrade/freqtrade # Description : Bot de trading avec stratégies multiples.\nCas d\u0026rsquo;usage : Trading crypto, backtesting, risk management.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 49K+ stars. DMA/grid/DCA. Backtesting. Support Binance/Kraken.\nghostfolio/ghostfolio # Description : Suivi portfolio avec tax reporting.\nCas d\u0026rsquo;usage : Suivi investissement, reporting fiscal.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 8K+ stars. Performance tracking. Fiscalité. Multiple devises.\nbtcpayserver/btcpayserver # Description : Solution payment self-hosted.\nCas d\u0026rsquo;usage : Site de vente, acceptation crypto.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 7.5K+ stars. Lightning. Invoice. API REST. Blockchain agnostique.\npaperless-ngx/paperless-ngx # Description : Gestion documentaire avec OCR.\nCas d\u0026rsquo;usage : Digitalisation documents, conformité RGPD.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 39K+ stars. OCR Tesseract. Tagging ML. Recherche plein texte.\nknadh/listmonk # Description : Plateforme newsletter.\nCas d\u0026rsquo;usage : Newsletters techniques, communication.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 19K+ stars. Automatisation. Segmentation. Analytics ouvert.\nDIYgod/RSSHub # Description : Générateur RSS.\nCas d\u0026rsquo;usage : Agrégation flux, lecture offline.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 43K+ stars. Sources multiples. Streaming temps-réel. Export JSON/Atom.\nqeeqbox/social-analyzer # Description : Analyse réseaux sociaux.\nCas d\u0026rsquo;usage : Monitoring social, études marché.\n👉 Pourquoi je l\u0026rsquo;ai étoilé : 4.5K+ stars. Scraping API. Analytics engagement. Sentiment analysis.\nCe que je vais tester prochainement # Parmi ces projets, je vais me concentrer sur :\nopenclaw/openclaw : Déploiement sur mon VPS avec Qwen 70B. Alternative à Cursor pour des tâches sensibles.\nnicotsx/zerobyte : Mise en place de la stratégie 3-2-1 avec restic et cryptage.\nprojectdiscovery/nuclei : Intégration dans ma pipeline CI/CD pour tests de sécurité réguliers.\nSigNoz/signoz : Remplacement de ma stack monitoring actuelle pour un dashboard centralisé.\ncoollabsio/coolify : Hébergement de mon site statique Hugo avec déploiement automatisé.\nConclusion # Ces 30 projets sont le reflet de ma veille active sur GitHub. Chacun apporte une valeur réelle dans mon infrastructure personnelle.\nQuelques conseils pour bien choisir :\nPriorise l\u0026rsquo;open-source pour le contrôle total Self-host quand possible pour l\u0026rsquo;indépendance Privacy by design dès l\u0026rsquo;architecture Vérifie la communauté et les releases régulières Le self-hosting et l\u0026rsquo;open-source permettent de maintenir un contrôle total sur ses données, tout en contribuant au développement communautaire. Cette approche réduit les coûts à long terme et garantit la confidentialité.\nPour suivre mes découvertes et tests, regarde mon GitHub foudreclair et mon blog Cryptolab. L\u0026rsquo;écosystème open-source est riche : n\u0026rsquo;essaie pas tout, choisis ce qui correspond à tes besoins réels.\nArticle technique par Foudreclair pour Cryptolab.re Date : 20 avril 2026 Dernière mise à jour : avril 2026\n","date":"20 avril 2026","externalUrl":null,"permalink":"/posts/2026/30-projets-open-source/","section":"Posts","summary":"","title":"30 projets open source que j'ai récemment découverts (GitHub stars)","type":"posts"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/","section":"Cryptolab","summary":"","title":"Cryptolab","type":"page"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/categories/discovery/","section":"Categories","summary":"","title":"Discovery","type":"categories"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/tags/github/","section":"Tags","summary":"","title":"Github","type":"tags"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/categories/open-source/","section":"Categories","summary":"","title":"Open-Source","type":"categories"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/tags/open-source/","section":"Tags","summary":"","title":"Open-Source","type":"tags"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/posts/","section":"Posts","summary":"","title":"Posts","type":"posts"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/tags/projects/","section":"Tags","summary":"","title":"Projects","type":"tags"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/tags/stars/","section":"Tags","summary":"","title":"Stars","type":"tags"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/tags/","section":"Tags","summary":"","title":"Tags","type":"tags"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/tags/tools/","section":"Tags","summary":"","title":"Tools","type":"tags"},{"content":"","date":"20 avril 2026","externalUrl":null,"permalink":"/tags/veille/","section":"Tags","summary":"","title":"Veille","type":"tags"},{"content":"","date":"20 janvier 2026","externalUrl":null,"permalink":"/tags/benchmarking/","section":"Tags","summary":"","title":"Benchmarking","type":"tags"},{"content":"","date":"20 janvier 2026","externalUrl":null,"permalink":"/tags/infra/","section":"Tags","summary":"","title":"Infra","type":"tags"},{"content":"Cette catégorie regroupe des articles liés à la conception et à l’exploitation d’infrastructures :\nréseau, virtualisation, exposition de services, choix d’architecture et compromis techniques.\n","date":"20 janvier 2026","externalUrl":null,"permalink":"/categories/infra/","section":"Categories","summary":"","title":"Infrastructure","type":"categories"},{"content":"","date":"20 janvier 2026","externalUrl":null,"permalink":"/tags/low-end/","section":"Tags","summary":"","title":"Low-End","type":"tags"},{"content":"","date":"20 janvier 2026","externalUrl":null,"permalink":"/tags/self-hosting/","section":"Tags","summary":"","title":"Self-Hosting","type":"tags"},{"content":"","date":"20 janvier 2026","externalUrl":null,"permalink":"/tags/vps/","section":"Tags","summary":"","title":"Vps","type":"tags"},{"content":"Quand la contrainte devient un sport # Dans un monde où le cloud facture le moindre CPU burst, il existe un écosystème parallèle : des VPS à 12 $ par an, parfois moins, avec 1 GB de RAM, aucun SLA… et pourtant des services qui tiennent.\nCe monde n’est pas tenu par des débutants, mais par une communauté de passionnés de l’optimisation extrême, prêts à faire tourner des services utiles avec presque rien.\nPour moins de 12 $ par an, j’exploite un VPS low-end, un nom de domaine dédié et un service de monitoring public. Cet article n’est pas un comparatif marketing. C’est un retour d’expérience sur ce que ces infrastructures permettent et surtout sur ce qu’elles ne permettent pas.\nBienvenue dans l’univers Low-End VPS.\nL’écosystème low-end : bons plans, débats et obsession de la perf # LowEndBox : la vitrine des VPS improbables # LowEndBox est souvent la porte d’entrée. On y trouve :\ndes VPS à 1 $ / mois parfois 12 $ / an avec des specs qui semblent intenables sur le papier Mais ce n’est pas un site de rêveurs. Chaque offre est disséquée, testée, parfois démontée par la communauté.\nArticle de référence :\nhttps://lowendbox.com/blog/1-vps-1-usd-vps-per-month/\nLowEndTalk : là où vivent les vrais fous # Si LowEndBox montre les offres, LowEndTalk montre la réalité.\nLowEndTalk, c’est :\ndes threads de benchmarks des débats interminables sur l’I/O des providers jugés, blacklistés ou adulés une obsession collective pour le rapport perf / dollar Ici, chaque VPS est coupable jusqu’à preuve du contraire.\nYABS : le rite de passage obligatoire # Dans cet univers, aucun VPS n’existe sans benchmark.\nLe standard s’appelle YABS (Yet Another Bench Script). C’est simple, brutal, universel :\ncurl -sL yabs.sh | bash En quelques minutes, tu obtiens :\nCPU (sysbench) disque (fio) réseau (iperf) Les résultats sont ensuite postés publiquement, comparés, moqués parfois - mais toujours analysés.\nServerVerify : quand la communauté structure la donnée # C’est là qu’intervient ServerVerify.\nNé directement au sein de la communauté LowEndTalk, ServerVerify vise un objectif simple :\ncentraliser les benchmarks YABS pour comparer objectivement les VPS low-cost.\nmême script mêmes métriques données publiques providers comparables Annonce officielle :\nhttps://lowendtalk.com/discussion/209667/introducing-serververify-built-with-the-lowendtalk-community-in-mind/p1\nSi le service est cheap, la donnée doit être honnête.\nMais… qu’est-ce qui tourne vraiment sur 1 GB de RAM ? # C’est la question que tout le monde pose.\nEt la réponse mérite une nuance importante.\nParfois : rien.\nDans la communauté low-end, beaucoup de VPS sont volontairement laissés idle.\nLe but n’est pas toujours d’héberger un service, mais simplement de :\ntester un provider mesurer la stabilité dans le temps observer les performances disque et réseau détecter l’overselling comparer objectivement via YABS / ServerVerify Autrement dit : le VPS devient un capteur, pas un serveur applicatif.\nEt quand il est utilisé, c’est rarement pour du lourd.\nSur ce type de VPS (512 MB à 1 GB de RAM), il est réaliste de faire tourner :\nUptime Kuma ChangeDetection un blog statique Hugo Unbound (ou DNS autoritaire léger) un bastion SSH OpenCanary un mini reverse proxy du monitoring minimaliste La clé n’est pas la puissance. C’est :\npas de swap inutile peu de services préférence pour le statique discipline absolue Ce n’est pas une contrainte subie. C’est une contrainte choisie, qui force à comprendre ce que l’on déploie.\nÀ noter : dans le monde du low-end, la distinction OpenVZ vs KVM est cruciale. Pour des usages stables (Docker, services persistants), privilégier KVM est presque indispensable. Les offres OpenVZ très agressives peuvent convenir pour du test, mais sont souvent moins prévisibles.\nAttention aux NAT VPS # Dans le low-end, beaucoup d’offres très agressives reposent sur des NAT VPS (IP partagée, ports limités, IPv4 optionnelle).\nCe type de VPS peut convenir pour :\ndu test des usages sortants simples des workloads éphémères Mais il devient vite contraignant pour :\nexposer des services recevoir des webhooks héberger du monitoring accessible publiquement utiliser certains outils réseau sans bidouille Pour un service autonome et prévisible, une IPv4 dédiée reste souvent indispensable, même dans une logique low-end.\nExemple personnel (sans pub) : un VPS à ~10 $/an qui tourne en continu # Pour illustrer que ces VPS peuvent aussi servir à de vrais usages, voici mon cas (sans affiliation).\nJ’ai un serveur chez cloudserver.net à Chicago avec :\n1 GB de RAM 20 GB de stockage HDD 1 TB de bande passante Prix : ~10 $ / an Il est plutôt stable et fait tourner :\nUptime Kuma ChangeDetection Mon output YABS # # ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## # # Yet-Another-Bench-Script # # v2025-04-20 # # https://github.com/masonr/yet-another-bench-script # # ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## # Mon Dec 29 18:01:40 EST 2025 Basic System Information: --------------------------------- Uptime : 167 days, 20 hours, 53 minutes Processor : QEMU Virtual CPU version 2.5+ CPU cores : 1 @ 2199.998 MHz AES-NI : ❌ Disabled VM-x/AMD-V : ❌ Disabled RAM : 964.5 MiB Swap : 512.0 MiB Disk : 19.1 GiB Distro : Debian GNU/Linux 11 (bullseye) Kernel : 5.10.0-35-amd64 VM Type : KVM IPv4/IPv6 : ✔ Online / ❌ Offline IPv4 Network Information: --------------------------------- ISP : HostPapa ASN : AS36352 HostPapa Location : Elk Grove Village, Illinois (IL) Country : United States fio Disk Speed Tests (Mixed R/W 50/50): --------------------------------- Block Size | 4k (IOPS) | 64k (IOPS) Read | 53.02 MB/s (13.2k) | 187.37 MB/s (2.9k) Write | 53.10 MB/s (13.2k) | 188.35 MB/s (2.9k) Total | 106.13 MB/s (26.5k) | 375.73 MB/s (5.8k) iperf3 Network Speed Tests (IPv4): --------------------------------- Provider | Location (Link) | Send Speed | Recv Speed | Ping ----- | ----- | ---- | ---- | ---- Clouvider | London, UK (10G) | 797 Mbits/sec | 395 Mbits/sec | 92.4 ms Eranium | Amsterdam, NL (100G) | 829 Mbits/sec | 775 Mbits/sec | 91.6 ms Uztelecom | Tashkent, UZ (10G) | 361 Mbits/sec | 239 Mbits/sec | 192 ms Leaseweb | Singapore, SG (10G) | 589 Mbits/sec | 568 Mbits/sec | 222 ms Clouvider | Los Angeles, CA, US (10G) | 868 Mbits/sec | 444 Mbits/sec | 48.5 ms Leaseweb | NYC, NY, US (10G) | busy | 616 Mbits/sec | 19.1 ms Edgoo | Sao Paulo, BR (1G) | 280 Mbits/sec | 188 Mbits/sec | 194 ms Ce n’est pas “performant”, mais c’est cohérent et largement suffisant pour un duo monitoring + change detection.\nSur ce serveur, les services sont déployés de manière volontairement simple. Sur 1 GB de RAM, Docker peut vite devenir un ennemi s’il n’est pas maîtrisé. Selon les cas, un déploiement direct (Node.js / Python sans surcouche) reste souvent plus sobre qu’un empilement de conteneurs.\nCouplé à un nom de domaine à moins d’1 $ / an # Sur ce VPS, je l’ai évidemment couplé à un nom de domaine en .xyz, comme expliqué en détail dans cet article :\nhttps://cryptolab.re/posts/2026/nom-de-domaine-moins-dun-euro/\nPour résumer :\nVPS low-end : ~10 $ / an Nom de domaine .xyz : \u0026lt; 1 $ / an Monitoring exposé publiquement sur un autre site Zéro dépendance à un service tiers 👉 Pour moins de 12 $ / an, j’ai donc :\nun serveur autonome un nom de domaine dédié un monitoring complet (Uptime Kuma) un service de surveillance de changements (ChangeDetection) C’est exactement ce qui rend le low-end aussi intéressant :\nun coût si bas que l’on peut se permettre de multiplier les services et les expériences.\nLes limites (et elles sont bien réelles) # Il faut être clair : ces VPS ne sont pas faits pour tout.\naucun SLA I/O parfois erratique providers qui disparaissent IPv6 only parfois reboot surprise possible Enfin, sur un VPS à ce prix et sans SLA, la sauvegarde n’est pas optionnelle. Les données critiques doivent pouvoir être restaurées ailleurs : un autre VPS, un stockage objet, ou même un simple export régulier suffisent. La discipline low-end, c’est aussi accepter que le serveur peut disparaître. Mais ce n’est pas un défaut, c’est le cadre du jeu.\nPourquoi ce monde est fascinant # Même avec une infra moderne, monitoring avancé et services bien dimensionnés, le low-end reste formateur.\nIl force à :\ncomprendre ce qu’on déploie mesurer chaque ressource distinguer l’essentiel du superflu Et surtout :\nil redonne du plaisir à l’infrastructure.\nPourquoi je continue à faire du low-end (à l’ère de l’IA) # À l’ère de l’IA, on nous explique que tout nécessite des clusters, des GPU, et des centaines de gigaoctets de RAM.\nC’est parfois vrai. Mais c’est devenu une excuse commode pour oublier l’essentiel : la majorité des services n’ont toujours besoin que de peu de ressources pour être utiles, fiables et compréhensibles.\nLe low-end ne s’oppose pas à l’IA. Il rappelle simplement qu’avant d’empiler des couches et des clusters, il faut déjà savoir ce que l’on déploie, pourquoi, et à quel coût réel.\nConclusion # Les VPS à 12 $ par an ne sont pas des jouets. Ce sont des outils sous contrainte, utilisés par une communauté exigeante, parfois brutale, mais profondément technique.\nBref, n\u0026rsquo;y hébergez pas votre boutique e-commerce. Mais si vous voulez comprendre pourquoi votre stack Docker s\u0026rsquo;effondre au moindre pic de RAM, c\u0026rsquo;est le meilleur labo au monde. C’est un outil de compréhension, d’expérimentation et de discipline. Si tu cherches du SLA ou de la performance, ce n’est pas pour toi. Si tu veux comprendre ton infrastructure, alors ces VPS ont encore beaucoup à t’apprendre.\nParadoxalement, ces petits VPS sont aussi parfaitement adaptés à l’ère de l’IA : agents, webhooks, workers légers qui orchestrent des API externes. Une machine modeste peut très bien piloter l’intelligence de 2026, sans jamais héberger le modèle elle-même.\nLiens et ressources citées # LowEndBox - https://lowendbox.com/ Article \u0026ldquo;1 $ VPS\u0026rdquo; - https://lowendbox.com/blog/1-vps-1-usd-vps-per-month/ LowEndTalk - https://lowendtalk.com/ ServerVerify - https://serververify.com/ Annonce ServerVerify - https://lowendtalk.com/discussion/209667/introducing-serververify-built-with-the-lowendtalk-community-in-mind/p1 Script YABS - https://github.com/masonr/yet-another-bench-script ","date":"20 janvier 2026","externalUrl":null,"permalink":"/posts/2026/vps-12-dollars-par-an/","section":"Posts","summary":"Quand la contrainte devient un sport # Dans un monde où le cloud facture le moindre CPU burst, il existe un écosystème parallèle : des VPS à 12 $ par an, parfois moins, avec 1 GB de RAM, aucun SLA… et pourtant des services qui tiennent.\nCe monde n’est pas tenu par des débutants, mais par une communauté de passionnés de l’optimisation extrême, prêts à faire tourner des services utiles avec presque rien.\nPour moins de 12 $ par an, j’exploite un VPS low-end, un nom de domaine dédié et un service de monitoring public. Cet article n’est pas un comparatif marketing. C’est un retour d’expérience sur ce que ces infrastructures permettent et surtout sur ce qu’elles ne permettent pas.\nBienvenue dans l’univers Low-End VPS.\n","title":"VPS à 12 $ par an : plongée dans le monde des serveurs à moins d’1 $ par mois","type":"posts"},{"content":"","date":"14 janvier 2026","externalUrl":null,"permalink":"/tags/ci-cd/","section":"Tags","summary":"","title":"Ci-Cd","type":"tags"},{"content":"Quand on démarre avec Hugo, tout paraît simple :\nun thème, quelques articles, un hugo build, et le site est en ligne.\nMais très vite, une vraie question arrive en production :\nComment mettre à jour un thème Hugo sans risquer de casser son site ?\nC’est un sujet étonnamment peu documenté.\nVoici donc mon setup réel, utilisé en production, et surtout pourquoi je l’ai conçu comme ça.\nMettre à jour un thème Hugo en production est rarement documenté, surtout lorsqu’on utilise git submodules et une CI/CD auto-hébergée.\nPourquoi Hugo ne met pas à jour les thèmes automatiquement # Hugo ne touche jamais à git :\npas de git pull pas de mise à jour silencieuse pas de dépendances flottantes Ce n’est pas une limitation, mais un choix de conception sain.\nUn thème Hugo est une dépendance critique :\nparamètres renommés ou supprimés shortcodes modifiés layouts cassés version minimale de Hugo augmentée Une mise à jour automatique pourrait :\ncasser le build ou pire, produire un site cassé sans erreur visible Mon setup en production # Voici le contexte exact :\nSite statique avec Hugo Thème Blowfish Thème installé en git submodule Dépôt hébergé sur Gitea CI/CD avec Gitea Actions Déploiement via SCP Objectif :\n\u0026gt; Automatiser la mise à jour du thème, de façon versionnée et traçable, sans mise à jour implicite au moment du build.\nMettre à jour le thème Hugo manuellement # Avant toute automatisation, la mise à jour du thème repose sur une commande git très simple.\nDans le cas d’un thème installé en submodule, la mise à jour consiste simplement à exécuter :\ngit submodule update --remote --merge themes/blowfish Cette commande fait trois choses :\nelle récupère la dernière version du thème depuis son dépôt distant (\u0026ndash;remote)\nelle met à jour le submodule vers ce nouvel état\nelle conserve un historique git propre via un merge explicite (\u0026ndash;merge)\nAucune magie ici : le thème est mis à jour comme n’importe quelle dépendance versionnée, et le changement n’est effectif qu’après un commit.\nEt Hugo Modules dans tout ça ? # Hugo propose une alternative aux submodules : Hugo Modules, basé sur l’écosystème Go.\nCette approche permet de déclarer un thème comme une dépendance distante, téléchargée automatiquement au build et verrouillée via go.sum.\nC’est une solution tout à fait valable, notamment pour des projets plus complexes ou mutualisés.\nDe mon côté, j’ai volontairement choisi les git submodules :\nla version du thème est visible directement dans git aucun outillage Go supplémentaire n’est nécessaire le comportement est entièrement explicite et prévisible Pour un site personnel ou technique, ce compromis me paraît plus simple et plus lisible.\nLe principe retenu # J’ai choisi une approche volontairement simple et robuste :\nMise à jour automatique du thème Commit uniquement s’il y a un changement réel Push sur main Déclenchement du workflow de build et de déploiement Version du thème visible en production Workflow de mise à jour du thème # Voici le workflow Gitea Actions que j’utilise en production pour mettre à jour automatiquement le thème Blowfish chaque lundi à 6 h, avec un commit explicite uniquement lorsqu’un changement est détecté.\nname: Update Blowfish on: schedule: - cron: \u0026#34;0 6 * * 1\u0026#34; workflow_dispatch: jobs: update-blowfish: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 with: submodules: recursive fetch-depth: 0 - name: Configure git run: | git config user.name \u0026#34;blowfish-bot\u0026#34; git config user.email \u0026#34;blowfish-bot@localhost\u0026#34; - name: Update Blowfish + version file run: | set -e git submodule update --remote --merge themes/blowfish BLOWFISH_VERSION=$(cd themes/blowfish \u0026amp;\u0026amp; git describe --tags --always) echo \u0026#34;$BLOWFISH_VERSION\u0026#34; \u0026gt; static/blowfish-version.txt git add themes/blowfish static/blowfish-version.txt if git diff --cached --quiet; then echo \u0026#34;No changes to commit.\u0026#34; exit 0 fi git commit -m \u0026#34;chore(theme): bump Blowfish to $BLOWFISH_VERSION\u0026#34; - name: Push run: git push Rendre la version du thème visible en production # À chaque mise à jour, le workflow écrit un fichier :\nstatic/blowfish-version.txt Ce fichier est servi tel quel par Hugo et accessible publiquement :\nhttps://cryptolab.re/blowfish-version.txt\nExemple de contenu :\nv2.97.0 Avantages :\nsavoir exactement quelle version tourne en prod debug facilité rollback immédiat via git revert Pourquoi ce setup est volontairement conservateur # Ce workflow :\nn’update jamais le thème pendant un build ne fait aucune magie cachée laisse un historique git propre permet un rollback instantané Un thème n’est pas un détail cosmétique :\nc’est une dépendance logicielle à part entière.\nCe que je ferais différemment pour un site critique # Pour un site à fort trafic ou critique, j’irais plus loin :\nmise à jour sur branche dédiée Pull Request obligatoire build Hugo bloquant avant merge version du thème figée sur des tags uniquement Mais pour un site personnel ou technique, ce compromis est simple, lisible et fiable.\nConclusion # Hugo est simple.\nLa production ne l’est pas.\nTraiter un thème comme une dépendance versionnée change tout :\nmoins de surprises plus de contrôle déploiements sereins C’est un petit effort d’ingénierie, pour un énorme gain de tranquillité.\n","date":"14 janvier 2026","externalUrl":null,"permalink":"/posts/2026/mise-a-jour-theme-hugo-prod/","section":"Posts","summary":"Quand on démarre avec Hugo, tout paraît simple :\nun thème, quelques articles, un hugo build, et le site est en ligne.\nMais très vite, une vraie question arrive en production :\nComment mettre à jour un thème Hugo sans risquer de casser son site ?\nC’est un sujet étonnamment peu documenté.\nVoici donc mon setup réel, utilisé en production, et surtout pourquoi je l’ai conçu comme ça.\nMettre à jour un thème Hugo en production est rarement documenté, surtout lorsqu’on utilise git submodules et une CI/CD auto-hébergée.\n","title":"Comment je mets à jour mon thème Hugo en production","type":"posts"},{"content":"","date":"14 janvier 2026","externalUrl":null,"permalink":"/tags/git/","section":"Tags","summary":"","title":"Git","type":"tags"},{"content":"","date":"14 janvier 2026","externalUrl":null,"permalink":"/tags/gitea/","section":"Tags","summary":"","title":"Gitea","type":"tags"},{"content":"","date":"14 janvier 2026","externalUrl":null,"permalink":"/tags/hugo/","section":"Tags","summary":"","title":"Hugo","type":"tags"},{"content":"Cette catégorie regroupe des articles autour du fonctionnement concret du web :\nhébergement, exposition de services, performances, CDN, DNS, monitoring et bonnes pratiques opérationnelles.\n","date":"14 janvier 2026","externalUrl":null,"permalink":"/categories/web/","section":"Categories","summary":"","title":"Web","type":"categories"},{"content":"","date":"11 janvier 2026","externalUrl":null,"permalink":"/tags/dns/","section":"Tags","summary":"","title":"Dns","type":"tags"},{"content":"","date":"11 janvier 2026","externalUrl":null,"permalink":"/tags/domaine/","section":"Tags","summary":"","title":"Domaine","type":"tags"},{"content":"","date":"11 janvier 2026","externalUrl":null,"permalink":"/tags/lab/","section":"Tags","summary":"","title":"Lab","type":"tags"},{"content":"Quand on lance un projet, blog, side-project, service auto-hébergé ou simple test technique - il y a toujours un moment où la question tombe :\nOn met quoi comme nom de domaine ?\nPar réflexe, on pense immédiatement à .fr ou .com, avec un prix annuel autour de 10 à 15 €.\nCe n’est pas absurde, mais ce n’est pas toujours nécessaire, surtout quand on est encore en phase de test.\nBonne nouvelle : oui, il est possible d’avoir un nom de domaine pour moins d’un euro.\nEt non, ce n’est ni une arnaque, ni un hack douteux réservé à des coupons obscurs.\nPourquoi un vrai nom de domaine change tout pour les tests # Quand on bricole en local, tout va bien.\nMais dès qu’on sort un peu du localhost, les ennuis commencent.\nUn vrai nom de domaine permet de tester correctement :\nHTTPS avec de vrais certificats un reverse proxy (Nginx, Traefik, Caddy, Pangolin, etc.) des règles DNS réalistes des webhooks une API exposée publiquement un service auto-hébergé derrière un tunnel ou un proxy Bref, exactement les mêmes contraintes qu’en production, mais sans y être encore.\nUtiliser une IP brute ou un sous-domaine bricolé fonctionne… jusqu’au moment où ça ne fonctionne plus.\nUn vrai domaine, même temporaire, évite beaucoup de contournements inutiles.\nUn domaine à moins d’un euro, c’est parfait pour un lab # Dans un lab personnel ou une infra de test, on a souvent besoin de :\nlancer un service pour quelques jours exposer quelque chose rapidement tester une stack complète de bout en bout casser, reconstruire, recommencer Dans ce contexte, un domaine :\npeu cher sans engagement facilement jetable est bien plus adapté qu’un domaine “premium” acheté trop tôt.\nSi le projet meurt, ce n’est pas grave.\nS’il fonctionne, rien n’empêche d’investir plus tard dans un domaine plus classique.\nL’origine du .xyz # L’extension .xyz a été lancée en 2014 avec une ambition claire :\nproposer un TLD générique, neutre, capable de supporter des volumes massifs, sans recréer artificiellement la rareté du .com.\nContrairement aux extensions historiques, .xyz a été pensée dès le départ pour :\nêtre scalable rester ouverte expérimenter de nouveaux modèles de tarification Ce point est fondamental pour comprendre ce qui suit.\nLa classe 1.111B : plus d’un milliard de domaines numériques # Le 1er juin 2017, le registre .xyz a lancé ce qu’il appelle la classe 1.111B.\nCette classe regroupe 1 111 000 000 noms de domaine, tous basés sur le même principe :\nuniquement des combinaisons numériques entre 6 et 9 chiffres allant de 000000.xyz à 999999999.xyz L’objectif affiché par le registre était clair :\napporter plus de concurrence, plus de choix et encourager l’innovation sur un marché historiquement dominé par la spéculation.\nPour référence, le registre .xyz propose une page officielle pour la classe 1.111B :\n👉 https://gen.xyz/1111b\nCette page contient un outil de recherche qui permet de vérifier la disponibilité des domaines numériques dans la plage :\nde 000000.xyz à 999999999.xyz Il s’agit donc d’un outil de recherche (search tool) pour ces domaines numériques 1.111B, basé sur les combinaisons de chiffres, proposés à environ 0,99 USD par an. :contentReference[oaicite:4]{index=4}\nUn prix simple, fixe et prévisible # La particularité majeure de cette classe 1.111B est son modèle de prix.\nCes domaines sont proposés :\nà moins d’un dollar par an avec le même prix au renouvellement sans notion de mot-clé premium sans requalification arbitraire Le prix dépend uniquement du nombre de chiffres, pas du sens du nom.\nEn pratique :\n6 à 9 chiffres\nprix très bas, typiquement 0,99 $ ou moins renouvellement au même tarif aucune surprise d’une année sur l’autre Ce point est crucial : le prix est identique à l’achat et au renouvellement, ce qui est extrêmement rare sur le marché des noms de domaine.\nMoins d’un dollar, même chez Cloudflare # Ce modèle de prix n’est pas réservé à un registrar obscur ou à une promotion temporaire.\nLes domaines numériques .xyz de la classe 1.111B sont disponibles chez plusieurs registrars, dont :\nhttps://www.spaceship.com/ https://www.cloudflare.com/ Chez Cloudflare Registrar, ces domaines sont proposés autour de 0,85 $ par an, Cloudflare appliquant un modèle de revente au prix coûtant du registre.\nCela confirme que :\nle tarif bas est structurel il ne dépend pas d’un coup marketing il s’applique aussi au renouvellement Un choix technique, pas un choix d’image # Utiliser un domaine numérique en .xyz, ce n’est pas faire un pari marketing.\nC’est faire un choix d’ingénierie.\nLe nom est :\nneutre non spéculatif jetable si nécessaire Dans un lab, c’est souvent exactement ce qu’on cherche :\nun outil technique, pas une vitrine.\nLes limites à connaître # Le modèle est très clair, mais il a des limites assumées :\nces domaines ne sont pas faits pour le branding ils sont peu mémorisables ils n’ont aucune valeur commerciale Mais pour des tests, ce sont précisément des qualités.\nMon approche personnelle # J’aime bien avoir :\ndes domaines peu chers dédiés à des usages précis sans pression financière Ça me permet de tester plus, plus vite, et plus librement.\nSi un projet mérite mieux, je le saurai.\nSinon, je passe au suivant sans regret.\nDans un lab, le temps et la liberté valent souvent plus que le nom de domaine.\nMise en pratique : un domaine de test lié à cet article # Pour aller jusqu’au bout de la démarche, j’ai appliqué exactement ce qui est décrit ici.\nLe jour de la publication de cet article, j’ai réservé un domaine numérique .xyz correspondant à la date, utilisé uniquement comme page de test.\n👉 Domaine de test : https://20260111.xyz\nObjectif :\naucun branding aucun projet long terme juste un domaine réel, valide, exposé publiquement Ce domaine sert uniquement à :\nvalider une configuration HTTPS tester une exposition via reverse proxy vérifier un setup DNS réel disposer d’un point d’entrée public propre, jetable et sans enjeu Le contenu est volontairement minimal : une page statique indiquant la date et le lien avec cet article.\nC’est exactement l’usage pour lequel ces domaines numériques .xyz existent : un outil technique, pas une vitrine.\nSi le domaine disparaît demain, ce n’est pas un problème.\nL’expérimentation, elle, reste.\nConclusion # Oui, un nom de domaine pour moins d’un euro, c’est possible.\nEt pour les tests, les labs et les projets techniques, c’est souvent le meilleur compromis.\nUn domaine peu cher permet :\nde tester proprement d’exposer des services réalistes d’expérimenter sans pression Le reste viendra plus tard. Ou pas. Et ce n’est pas grave.\n","date":"11 janvier 2026","externalUrl":null,"permalink":"/posts/2026/nom-de-domaine-moins-dun-euro/","section":"Posts","summary":"Quand on lance un projet, blog, side-project, service auto-hébergé ou simple test technique - il y a toujours un moment où la question tombe :\nOn met quoi comme nom de domaine ?\nPar réflexe, on pense immédiatement à .fr ou .com, avec un prix annuel autour de 10 à 15 €.\nCe n’est pas absurde, mais ce n’est pas toujours nécessaire, surtout quand on est encore en phase de test.\nBonne nouvelle : oui, il est possible d’avoir un nom de domaine pour moins d’un euro.\nEt non, ce n’est ni une arnaque, ni un hack douteux réservé à des coupons obscurs.\n","title":"Un nom de domaine pour moins d’un euro, oui c’est possible","type":"posts"},{"content":"","date":"11 janvier 2026","externalUrl":null,"permalink":"/tags/web/","section":"Tags","summary":"","title":"Web","type":"tags"},{"content":"","date":"31 décembre 2025","externalUrl":null,"permalink":"/tags/activitypub/","section":"Tags","summary":"","title":"ActivityPub","type":"tags"},{"content":"Cette catégorie regroupe des articles liés au Fediverse et aux plateformes sociales fédérées :\ndécouvertes de projets, retours d’expérience, fonctionnement d’ActivityPub, communautés, modération et auto-hébergement.\n","date":"31 décembre 2025","externalUrl":null,"permalink":"/categories/fediverse/","section":"Categories","summary":"","title":"Fediverse","type":"categories"},{"content":"","date":"31 décembre 2025","externalUrl":null,"permalink":"/tags/fediverse/","section":"Tags","summary":"","title":"Fediverse","type":"tags"},{"content":"","date":"31 décembre 2025","externalUrl":null,"permalink":"/tags/piefed/","section":"Tags","summary":"","title":"PieFed","type":"tags"},{"content":"Dernière découverte Fediverse de cette fin d’année.\nJe publie ce billet le 31 décembre, avant de passer à 2026.\nPieFed a été un vrai coup de cœur : un forum fédéré moderne, lisible et maîtrisable.\nPourquoi je m’y suis intéressé # Je fréquente les alternatives Fediverse à Reddit depuis un bon moment, notamment Lemmy (et dans une moindre mesure Kbin).\nL’idée du forum fédéré est excellente, et je reste convaincu que c’est la bonne direction.\nMais avec le temps, je me suis surtout rendu compte que ce qui me manquait n’était pas une nouvelle plateforme, mais une meilleure manière de naviguer dans le contenu.\nPlusieurs choses ont fini par me freiner :\nla difficulté à trouver de nouvelles communautés pertinentes, le bruit qui s’installe dès que l’on suit beaucoup de sujets, le manque d’outils pour filtrer finement ce que l’on voit Je cherchais un forum fédéré qui mette l’accent sur la découverte, la maîtrise du flux et la lisibilité à long terme, sans surenchère technique ni idéologique.\nC’est exactement dans ce contexte que j’ai découvert PieFed.\nDécouvrir PieFed # PieFed est un forum fédéré de type Reddit, basé sur ActivityPub.\nIl permet :\nde rejoindre une instance existante, d’auto-héberger sa propre instance, de créer des communautés, et de fédérer avec Lemmy, Mbin et les autres logiciels compatibles ActivityPub. Le moteur logiciel qui fait fonctionner PieFed s’appelle pyfedi.\nIl est développé en Python et hébergé sur Codeberg :\nhttps://codeberg.org/rimu/pyfedi/\nUne base technique volontairement simple # Dès le départ, PieFed a fait des choix techniques pragmatiques :\nPython Flask PostgreSQL Redis optionnel JavaScript minimal + htmx Pas de framework lourd, pas de chaîne de build fragile, pas d’architecture inutilement complexe.\nRésultat :\nune consommation de ressources faible, un déploiement accessible, une maintenance plus simple, et une base de code compréhensible et contributive. Les filtres : le vrai point fort # C’est probablement là que PieFed m’a le plus convaincu.\nPlutôt que de se limiter à une simple recherche, PieFed propose de vrais outils pour explorer, trier et comprendre ce que l’on regarde. La découverte de communautés et de contenus repose sur des filtres concrets, visibles et immédiatement exploitables.\nOn peut notamment :\neffectuer une recherche simple ou avancée, filtrer par type de communautés, distinguer les communautés locales des communautés fédérées, filtrer selon le statut d’abonnement, naviguer par rubriques, choisir le flux à afficher (global, local, etc.), filtrer par langue, restreindre la recherche à une instance précise. Ces filtres permettent réellement de trouver des communautés pertinentes, sans passer par des listes externes ou du bouche-à-oreille.\nAutre point très appréciable : certaines rubriques, comme Actualités, proposent une entrée plus éditoriale avec :\ndes sous-thèmes clairement identifiés, des tris par popularité, activité ou nouveauté, une distinction entre publications et commentaires, plusieurs modes d’affichage (liste, tuiles, tuiles larges). Dans les faits, on peut parcourir un sujet, lire, explorer, puis seulement ensuite décider de s’abonner.\nOn ne subit plus un flux imposé : on construit progressivement le sien.\nUne interface moderne et lisible # L’interface de PieFed est claire, aérée et agréable au quotidien :\nnavigation fluide, raccourcis clavier, vue masonry pour les communautés orientées images, commentaires très négatifs repliés automatiquement, signaux visuels clairs (nouveaux comptes, réputation faible, spoilers). L’outil s’efface derrière le contenu, ce qui change beaucoup de choses à l’usage.\nAutres points appréciables au quotidien # Au-delà des filtres et de la navigation, PieFed propose plusieurs fonctionnalités qui améliorent concrètement l’usage, sans complexifier l’outil.\nFlairs\nLes communautés peuvent définir des flairs pour les publications et les utilisateurs.\nC’est simple, lisible, et très utile pour contextualiser rapidement un post.\nHashtags interopérables avec Mastodon\nLes hashtags fonctionnent et sont fédérés, ce qui permet une continuité naturelle avec Mastodon et le reste du Fediverse.\nOn peut suivre un sujet à la fois via des communautés et via des tags.\nBasvotes restreints aux abonnés de la communauté\nDans certaines communautés, les basvotes peuvent être limités aux membres abonnés.\nCela réduit les effets de brigading et les votes “hostiles” venant de l’extérieur.\nWiki par communauté\nChaque communauté peut disposer de son propre wiki.\nIdéal pour documenter des règles, des ressources, des FAQ ou des liens utiles, sans avoir à sortir de la plateforme.\nCes fonctionnalités ne sont pas là pour “faire plus”, mais pour rendre les communautés plus lisibles, plus saines et plus faciles à faire vivre.\nPour essayer PieFed # Site officiel : https://piefed.social/ Présentation : https://join.piefed.social/ Fonctionnalités : https://join.piefed.social/features/ Je suis aussi présent sur PieFed ici :\nhttps://tarte.nuage-libre.fr/u/foudreclair\nJ’y ai également créé une communauté dédiée à mes sujets habituels :\nhttps://tarte.nuage-libre.fr/c/cryptolab\nMerci à Snoopy de gérer cette instance et de m\u0026rsquo;avoir accueilli.\nConclusion et perspectives pour 2026 # PieFed est clairement ma dernière découverte Fediverse de 2025.\nUn forum fédéré moderne, filtrable, simple à héberger et agréable à utiliser.\nEn 2026, je continuerai à explorer le Fediverse… mais PieFed risque bien de rester longtemps dans mes réseaux principaux.\n","date":"31 décembre 2025","externalUrl":null,"permalink":"/posts/2025/piefed/","section":"Posts","summary":"","title":"PieFed : ma découverte Fediverse de fin 2025","type":"posts"},{"content":"","date":"28 décembre 2025","externalUrl":null,"permalink":"/tags/images/","section":"Tags","summary":"","title":"Images","type":"tags"},{"content":"En travaillant sur cryptolab.re, j’ai voulu mesurer concrètement les performances du site côté utilisateur.\nJ’ai donc lancé une analyse via Google PageSpeed Insights.\nRésultat : score de 50 sur mobile.\nLe diagnostic était clair : des images trop lourdes, principalement :\nmon avatar le logo du blog Ces images étaient en PNG, un format très pratique pour l’édition, mais clairement inadapté au web moderne.\nPourquoi les images pénalisent fortement PageSpeed # Sur mobile, Google est particulièrement exigeant :\nconnexions plus lentes CPU moins puissant rendu critique au-dessus de la ligne de flottaison Les images sont souvent :\nla ressource la plus lourde d’une page chargées très tôt bloquantes pour le LCP (Largest Contentful Paint) Optimiser les images est donc l’un des meilleurs quick wins possibles pour améliorer un score PageSpeed.\nPourquoi j’ai choisi WebP (et pas un autre format) # Avant de convertir mes images, j’ai comparé les principaux formats existants.\nPNG # Excellente qualité Transparence Très lourd Aucune compression moderne Parfait pour le design, mauvais pour la production web.\nJPEG # Bonne compatibilité Compression correcte Pas de transparence Compression moins efficace que les formats récents Encore acceptable, mais clairement dépassé.\nAVIF # Compression exceptionnelle Très moderne Encodage lent Support et tooling encore inégaux Intégration plus complexe dans un blog existant Excellent sur le papier, mais pas toujours le plus pragmatique.\nWebP (mon choix) # Compression bien meilleure que JPEG et PNG Supporte la transparence Supporté par tous les navigateurs modernes Recommandé explicitement par Google Très simple à intégrer sur un site statique WebP est aujourd’hui le meilleur compromis entre performance, compatibilité et simplicité.\nLa solution cwebp # cwebp est un outil en ligne de commande permettant de convertir des images (PNG, JPEG, etc.) vers le format WebP.\nIl fait partie de la suite officielle libwebp, développée et maintenue par Google, le créateur du format WebP.\n👉 Concrètement, cwebp permet :\nde convertir des images existantes vers WebP de régler finement la qualité et le niveau de compression d’optimiser le poids des images pour le web d’automatiser la conversion dans des scripts ou des pipelines CI/CD C’est l’outil de référence, utilisé aussi bien localement que dans des environnements de production.\nPourquoi utiliser cwebp plutôt qu’un service en ligne ? # Pas de dépendance à un site tiers Pas d’upload d’images (meilleur pour la confidentialité) Résultats reproductibles Intégrable dans des scripts ou des workflows automatisés Outil maintenu officiellement par Google Pour un blog statique ou un site, c’est clairement la solution la plus propre.\nDépôt officiel # Le projet est open source et disponible sur GitHub : Dépôt Github\nInstallation de cwebp # Windows # choco install webp -y PS : pour ceux qui n\u0026rsquo;ont pas chocolatey c\u0026rsquo;est un gestionnaire de package sous windows. Pour l\u0026rsquo;installer ça se passe ici\nDebian / Ubuntu # sudo apt update sudo apt install webp -y macOS # brew install webp Conversion des images en WebP # cwebp ./avatar.png -q 80 -m 6 -mt -o avatar.webp Explication des options # cwebp : convertisseur vers le format WebP avatar.png : image source -q 80 : qualité (excellent compromis poids / rendu) -m 6 : méthode de compression (plus élevé = plus efficace) -mt : multi-threading -o avatar.webp : fichier de sortie Résultat sur PageSpeed Insights # Au final c\u0026rsquo;est plutôt pas mal, je suis passé à une note de 95 sur mobile !\nRésultat de l\u0026rsquo;analyse mobile : ici\nAutant vous dire que toutes les prochaines images seront désormais en webp (en plus d\u0026rsquo;économiser de la place dans mon dépôt git)\nConclusion # Optimiser ses images m’a pris moins de 10 minutes, sans refactor ni impact.\nRésultat :\nmeilleures performances mobiles meilleur score SEO meilleure expérience utilisateur Optimiser ses images est l’un des leviers les plus simples et efficaces pour améliorer la performance d\u0026rsquo;un site web.\nBon et maintenant pour atteindre le 100 c\u0026rsquo;est autre chose.Qui sait ça sera peut être l\u0026rsquo;objet d\u0026rsquo;un prochain article ?\n","date":"28 décembre 2025","externalUrl":null,"permalink":"/posts/2025/optimiser-ses-images-pour-le-web/","section":"Posts","summary":"","title":"Optimiser ses images pour le web : WebP, le sauveur de la performance","type":"posts"},{"content":"","date":"28 décembre 2025","externalUrl":null,"permalink":"/tags/pagespeed/","section":"Tags","summary":"","title":"Pagespeed","type":"tags"},{"content":"","date":"28 décembre 2025","externalUrl":null,"permalink":"/tags/seo/","section":"Tags","summary":"","title":"Seo","type":"tags"},{"content":"","date":"27 décembre 2025","externalUrl":null,"permalink":"/tags/pangolin/","section":"Tags","summary":"","title":"Pangolin","type":"tags"},{"content":" Pourquoi Pangolin ? # Quand on commence à auto-héberger sérieusement, on connaît tous la dérive :\nun port ouvert “temporairement”, puis un second, un reverse proxy exposé “juste pour tester”, et au final une infra qu’on n’ose plus trop regarder. Pangolin est arrivé pile à ce moment-là pour moi.\nPas comme une solution miracle, mais comme un moyen de remettre de l’ordre.\nDes solutions comme Cloudflare Tunnel peuvent aider, mais elles imposent :\nun passage par une infrastructure tierce une dépendance à un écosystème propriétaire un modèle Zero Trust peu maîtrisé côté infrastructure Pangolin répond à ce problème autrement.\nPangolin est une plateforme open-source d’accès distant, basée sur l’identité, construite au-dessus de WireGuard.\nElle combine deux approches dans un même outil :\nun reverse proxy pour l’accès aux applications web un accès de type VPN pour les ressources privées (SSH, bases de données, services internes) Les réseaux privés sont reliés à Pangolin via des connecteurs légers appelés sites.\nUn site établit un tunnel sécurisé sans IP publique ni ouverture de ports, et permet d’exposer uniquement des ressources précises, jamais un réseau entier.\nSite officiel : https://pangolin.net\nDépôt GitHub : https://github.com/fosrl/pangolin\nPositionnement clair : Pangolin, Cloudflare et VPN # Pangolin n’est pas un VPN de remplacement. Un VPN reste recommandé pour l’administration bas niveau et les accès de secours.\nPangolin apporte :\nun reverse proxy Zero Trust un contrôle d’accès applicatif une segmentation fine des ressources Cet article documente l’installation complète de Pangolin, sa mise à jour, ainsi que la création de ressources publiques et privées, avec l’ajout d’un node Newt côté réseau cible.\nCe n’est pas une réécriture de la documentation officielle.\nC’est un retour d’expérience, basé sur une utilisation réelle.\nPrérequis # VPS Linux avec IP publique Nom de domaine pointant vers le VPS (ex : pangolin.example.com) Docker et Docker Compose installés Ports ouverts : 80 / TCP 443 / TCP 51820 / UDP 21820 / UDP Adresse email valide pour Let’s Encrypt Installation de Pangolin # J\u0026rsquo;ai personnelement utilisé le quick install script : https://docs.pangolin.net/self-host/quick-install\nCette méthode :\ninstalle automatiquement les services nécessaires configure HTTPS initialise le dashboard Pangolin Pour l\u0026rsquo;éxécuter, rien de plus simple :\ncurl -fsSL https://static.pangolin.net/get-installer.sh | bash Ensuite on lui donne les droits d\u0026rsquo;éxécution :\nchmod +x installer On éxécute l\u0026rsquo;installateur :\n./installer Configuration des paramètres de base # Lors de l’installation, le script vous demande de renseigner plusieurs paramètres essentiels :\nBase Domain\nEntrez votre nom de domaine racine, sans sous-domaine\n(ex. example.com)\nDashboard Domain\nAppuyez sur Entrée pour accepter la valeur par défaut\n(ex. pangolin.example.com)\nou indiquez un domaine personnalisé.\nAdresse email Let’s Encrypt\nFournissez une adresse email valide utilisée pour :\nla génération des certificats SSL la création du compte administrateur Tunneling (Gerbil)\nChoisissez si vous souhaitez installer Gerbil pour activer les connexions tunnelisées :\nOui (par défaut, recommandé) : Pangolin fonctionne en mode tunnel Zero Trust Non : Pangolin fonctionne comme un reverse proxy classique, sans tunneling Options non obligatoires # Configuration des emails (SMTP) # La gestion des emails est optionnelle et peut être configurée ultérieurement.\nLors de l’installation, le script vous demande si vous souhaitez activer l’envoi d’emails via SMTP :\nValeur par défaut : Non (recommandé pour une première installation) Si activé, vous devrez fournir les informations de votre serveur SMTP : hôte port nom d’utilisateur mot de passe Installation de CrowdSec # Le script propose également l’installation de CrowdSec pour renforcer la sécurité :\nValeur par défaut : Non (recommandé au départ) Si activé, vous confirmez que vous êtes prêt à : gérer la configuration CrowdSec maintenir les règles et décisions associées 👉 CrowdSec peut être ajouté plus tard, une fois Pangolin correctement opérationnel.\nAccéder au dashboard # À la fin de l’installation, le script affiche l’URL du dashboard.\nRendez-vous à l’adresse suivante : https://pangolin.example.com/auth/initial-setup\nVue d’ensemble du dashboard Pangolin après l’installation.\nLe dashboard doit se charger avec un certificat SSL configuré automatiquement.\n⚠️ La validation du premier certificat peut prendre quelques minutes : un avertissement de sécurité temporaire dans le navigateur est normal.\nCréation du compte administrateur # Complétez la configuration initiale du compte administrateur :\nsaisissez votre adresse email administrateur définissez un mot de passe fort vérifiez votre email (si la configuration SMTP est activée) 👉 Utilisez un mot de passe unique et robuste : ce compte dispose de l’ensemble des droits système.Après la création je recommande l\u0026rsquo;utilisation d\u0026rsquo;une 2FA.\nCréation de la première organisation # Une fois connecté au dashboard :\nrenseignez le nom de l’organisation ajoutez une description cliquez sur Create Organization L’organisation sert de conteneur logique pour :\nles utilisateurs les sites les ressources les règles d’accès À ce stade, Pangolin est fonctionnel, mais il ne fait encore rien d’utile. C’est normal : toute la puissance arrive avec les sites, les nodes et les ressources.\nInstallation d’un node # Pour que pangolin accède à votre réseau il faut installer un node sur votre réseau local. Il y trois solutions pour installer un node :\nSite Newt (recommandé solution par Pangolin) Wireguard Local (sans tunnel) J\u0026rsquo;ai utilisé de mon côté Newt.\nPour l\u0026rsquo;installer, j\u0026rsquo;ai choisi docker mais on peut passer par les packages disponible ou kubernetes / podman.\nInstallation du node via le docker-compose.yml # services: newt: image: fosrl/newt container_name: newt restart: unless-stopped environment: - PANGOLIN_ENDPOINT=${PANGOLIN_ENDPOINT} - NEWT_ID=${NEWT_ID} - NEWT_SECRET=${NEWT_SECRET} .env (ne jamais commit) # PANGOLIN_ENDPOINT=https://pangolin.example.com NEWT_ID=changeme NEWT_SECRET=changeme Démarrage :\ndocker compose up -d docker logs -f newt À partir de là, Pangolin commence vraiment à devenir intéressant : le réseau est joint, sans port ouvert, et sans configuration réseau exotique.\nCréation d’une ressource # Une ressource représente un service que l’on souhaite exposer ou rendre accessible via Pangolin.\nIl existe deux types de ressources :\nRessource publique : exposée sur Internet Ressource privée : accessible uniquement aux utilisateurs connectés au client Pangolin. Ressource publique : exposition applicative # Une ressource publique fonctionne comme un reverse proxy.\nOn définit :\nun domaine une ou plusieurs cibles (protocole + adresse + port) des options de sécurité et de routage Il est possible de configurer plusieurs cibles pour une même ressource.\nL’intérêt est de pouvoir :\nrépartir la charge entre plusieurs serveurs ou sites assurer une continuité de service en cas de panne Pangolin permet également d’activer l’authentification sur une ressource publique.\nDans ce cas, l’utilisateur doit d’abord se connecter au portail Pangolin (SSO) avant d’accéder à l’application.\nRessource privée : accès interne sécurisé # Une ressource privée permet d’accéder à un service sans aucune exposition publique.\nOn définit :\nune cible (adresse interne) un ou plusieurs ports les utilisateurs autorisés Il est possible de définir un alias afin de faciliter l’accès à la ressource.\n👉 Ce type de ressource est idéal pour :\nSSH bases de données dashboards internes outils d’administration Aucun port public n’est ouvert.\nCréation d\u0026rsquo;une ressource publique # Une ressource publique permet d’exposer une application via HTTPS, en s’appuyant sur Pangolin comme reverse proxy sécurisé. Si vous avez déjà exposé un service avec Nginx Proxy Manager ou Caddy, vous ne serez pas dépaysé — la différence, c’est le contrôle d’accès.\nLors de la création d’une ressource publique, plusieurs paramètres sont à renseigner.\nInformations sur la ressource # Type\nRessource HTTPS : proxy HTTP/HTTPS basé sur un nom de domaine Ressource TCP/UDP brute : proxy TCP ou UDP basé sur un port\n(dans le cas d’une exposition web classique, on choisit Ressource HTTPS) Nom\nNom d’affichage de la ressource dans le dashboard Pangolin.\nParamètres HTTPS # Sous-domaine\nSous-domaine à exposer (ex. gitea)\nDomaine de base\nDomaine racine sélectionné lors de l’installation\n(ex. cryptolab.re)\n➡️ L’URL finale sera par exemple :\nhttps://gitea.cryptolab.re\nConfiguration des cibles # Une ou plusieurs cibles peuvent être définies pour acheminer le trafic vers les services backend.\nPour chaque cible, on configure :\nNœud Pangolin\nNode par lequel le trafic est routé (ex. gitea)\nProtocole\nGénéralement http ou https\nAdresse (Host)\nAdresse interne du service\n(ex. 192.168.1.50)\nPort\nPort du service backend\n(ex. 3000)\nIl est possible d’ajouter plusieurs cibles afin de :\nrépartir la charge assurer une haute disponibilité Vérification de l’état de santé (Healthcheck) # Pangolin permet d’activer une vérification de l’état de santé sur chaque cible :\nport de vérification configurable intervalle personnalisable statut visible dans le dashboard 👉 Le healthcheck est fortement recommandé lorsqu’il y a plusieurs cibles, afin d’éviter d’envoyer du trafic vers un service indisponible.\nSécurité et accès # Les ressources publiques peuvent être protégées par l’authentification Pangolin L’utilisateur devra alors se connecter via le portail Pangolin (SSO) avant d’accéder à l’application Par défaut :\nle SSL est activé un certificat Let’s Encrypt est généré automatiquement aucun certificat n’est à gérer manuellement Exemple # URL exposée : https://gitea.cryptolab.re Cible : Nœud : gitea Adresse : 192.168.1.50 Port : 3000 Healthcheck : activé Authentification Pangolin : optionnelle Exemple de ressource HTTPS avec plusieurs cibles et healthcheck.\nCréation d\u0026rsquo;une ressource privée # Une ressource privée permet de donner accès à un service interne sans aucune exposition publique.\nElle est uniquement accessible aux utilisateurs authentifiés via Pangolin.\nLors de la création d’une ressource privée, on définit :\nNom : nom explicite de la ressource Nœud : node Pangolin par lequel le réseau est joint Destination : adresse interne de la cible\n(nom d’hôte, adresse IP ou plage CIDR selon le mode choisi) Alias (optionnel) : nom DNS interne pour simplifier l’accès Restrictions de ports : TCP : ports autorisés ou tous UDP : ports autorisés ou tous ICMP : autorisé ou non Exemple de configuration # Type : TCP Destination : 192.168.1.10 Port autorisé : 22 Alias : monserveur.lan Accès : réservé aux utilisateurs authentifiés dans l’organisation 👉 Aucun port public n’est exposé sur Internet.\nRessource TCP privée exposant un accès SSH sans port public.\nAccès à une ressource privée # Pour accéder aux ressources privées, il est nécessaire d’installer le client Pangolin sur le poste utilisateur.\nTéléchargement du client officiel :\n👉 https://pangolin.net/downloads\nÉtapes côté client # Télécharger et installer le client Pangolin\nUtilisez l’installeur officiel (.msi sous Windows, ou équivalent selon l’OS).\nLancer Pangolin\nOuvrez l’application depuis le menu Démarrer ou le raccourci bureau.\nSe connecter à votre instance Pangolin\nConnectez-vous à votre instance Pangolin auto-hébergée Cliquez sur l’icône Pangolin dans la barre système Sélectionnez Log in Vous devriez avoir ça sur votre client. Une fois connecté, les ressources privées définies dans l’organisation deviennent accessibles de manière sécurisée. Par exemple taper dans votre navigateur : http://serveur.lan vous pourrez accéder à votre ressource privée via votre alias. C’est généralement à ce moment-là qu’on se dit : “OK, là je vois l’intérêt.”\nMise à jour de Pangolin # Documentation officielle :\nhttps://docs.pangolin.net/self-host/how-to-update#how-to-update\nAvant de mettre à jour # Avant toute mise à jour, il est fortement recommandé de :\nsauvegarder les données copier le répertoire de configuration dans un emplacement sûr s’assurer de pouvoir revenir en arrière en cas de problème 👉 Bonne pratique :\nMettre à jour progressivement entre les versions majeures.\nPar exemple :\n✅ 1.0.0 → 1.1.0 → 1.2.0 ❌ 1.0.0 → 1.2.0 directement Si vous avez déjà cassé un reverse proxy à cause d’un docker compose pull un peu trop rapide, vous savez pourquoi cette section existe.\nProcédure de mise à jour # 1️⃣ Arrêter la stack # Commencez par arrêter tous les conteneurs Pangolin :\nsudo docker compose down 2️⃣ Vérifier les dernières versions disponibles # Avant toute mise à jour, identifiez les dernières versions stables des composants utilisés par Pangolin.\nÉvitez les versions pre-release ou beta en environnement de production.\nSources recommandées :\nPangolin : GitHub Releases Gerbil : GitHub Releases Traefik : Docker Hub Badger (plugin Traefik) : GitHub Releases crowdsec-bouncer-traefik-plugin: GitHub Releases Notez précisément les numéros de version afin de les reporter dans les fichiers de configuration.\n3️⃣ Mettre à jour les numéros de version # Éditez le fichier docker-compose.yml et mettez à jour les images Docker concernées.\nservices: pangolin: image: fosrl/pangolin:ee-1.14.1 # ... reste de la configuration gerbil: image: fosrl/gerbil:1.3.0 # ... reste de la configuration traefik: image: traefik:v3.6.5 # ... reste de la configuration 👉 Vous pouvez :\nmettre à jour un service à la fois afin de limiter les risques ou l’ensemble de la stack en une seule opération, selon votre tolérance au risque 4️⃣ Mettre à jour le plugin Badger (Traefik) # Si le plugin Badger est utilisé par Traefik, sa version doit également être mise à jour.\nDans le fichier config/traefik/traefik_config.yml :\nexperimental: plugins: badger: moduleName: github.com/fosrl/badger version: v1.3.0 5️⃣ Télécharger les nouvelles images # Une fois les numéros de version mis à jour dans les fichiers de configuration, téléchargez les nouvelles images Docker :\nsudo docker compose pull 6️⃣ Redémarrer la stack Pangolin # Relancez la stack avec les nouvelles versions :\nsudo docker compose up -d Les migrations nécessaires (base de données, configuration) sont exécutées automatiquement si besoin.\n7️⃣ Surveiller le démarrage # Surveillez les logs afin de vérifier que tous les services démarrent correctement :\nsudo docker compose logs -f Soyez attentif notamment :\naux messages de migration\nà l’état des connexions Gerbil\naux logs Traefik et Badger\n8️⃣ Vérifier le bon fonctionnement # Une fois la stack opérationnelle, vérifiez systématiquement :\nl’accès au dashboard Pangolin l’accès aux ressources publiques l’accès aux ressources privées Mise à jour automatisée avec Ansible # Pour fiabiliser et standardiser les mises à jour, j’ai écrit un rôle Ansible dédié permettant de mettre à jour Pangolin et tout son écosystème de manière reproductible.\n👉 Lien vers le Dépôt Github\nPrincipe # Le rôle applique une stratégie volontairement simple et assumée :\narrêt → mise à jour → redémarrage → nettoyage\n⚠️ Cette approche implique un court downtime, accepté et maîtrisé sur un VPS dédié Pangolin.\nComposants gérés # Le rôle met à jour l’ensemble de la stack :\nPangolin Gerbil Traefik Badger (plugin Traefik) CrowdSec Traefik Bouncer (si utilisé) Fonctionnement # Concrètement, le rôle Ansible :\narrête proprement la stack Pangolin met à jour les fichiers de configuration via des templates Jinja2 télécharge les nouvelles images Docker redémarre la stack nettoie les images Docker inutilisées Les versions sont pilotées par variables, ce qui permet :\nun contrôle précis des upgrades une traçabilité claire un rollback simple via Git Exécution # La mise à jour se lance via un playbook dédié :\nansible-playbook -i inventory/prod.ini playbook-pangolin-upgrade.yml Licence Pangolin # Certaines fonctionnalités avancées de Pangolin nécessitent une licence (par exemple des options liées à l’authentification, à l’access control ou à des usages plus avancés).\nBonne nouvelle :\n👉 une licence gratuite est disponible pour un usage personnel.\nLicence gratuite (usage particulier) # Pour un usage homelab / personnel, il suffit de :\ncréer un compte Pangolin activer la licence gratuite associée Lien officiel :\nPangolin – Création de compte et licences\nCette licence gratuite est largement suffisante pour :\nun homelab un VPS personnel des projets non commerciaux Conclusion # Pangolin ne fait pas de magie, mais il fait exactement ce qu’on lui demande :\nexposer des services proprement, sans ouvrir son réseau dans tous les sens, et sans déléguer sa sécurité à un tiers.\nUne fois en place sur un VPS, avec des agents Newt côté réseaux privés, on se rend vite compte que :\non ouvre moins de ports on comprend mieux ce qui est exposé on dort un peu plus tranquille Ce guide est le reflet d’une utilisation réelle, avec ses choix assumés :\nun VPN conservé pour l’admin bas niveau des mises à jour maîtrisées un peu d’automatisation Ansible pour éviter les boulettes à 23h Si vous avez un homelab un peu sérieux et que vous en avez marre des bricolages autour du reverse proxy, Pangolin mérite clairement un test.\n","date":"27 décembre 2025","externalUrl":null,"permalink":"/posts/2025/pangolin/","section":"Posts","summary":"","title":"Pangolin : installation, accès Zero Trust et maintenance","type":"posts"},{"content":"J’ai monté Cryptolab pour une raison simple :\nj’en avais marre de bidouiller dans le vide.\nComme beaucoup de gens qui aiment l’infrastructure, le réseau ou le self-hosting, j’ai accumulé les tests, les VPS inutiles, les configs overkill, les idées lancées un soir et abandonnées deux semaines plus tard.\nTout ça existe quelque part dans des notes, des commits oubliés, des terminaux fermés trop vite.\nEt puis ça disparaît.\nTrop d’expériences, pas assez de traces # Ces dernières années, j’ai monté et démonté :\ndes labs perso, des serveurs auto-hébergés, des stacks réseau discutables, des projets open-source plus ou moins aboutis, des expériences autour de la crypto et de l’infra qui va avec. Pas pour “optimiser”.\nPas pour “monétiser”.\nJuste pour comprendre.\nLe problème, c’est que rien n’était vraiment documenté.\nOu alors trop mal. Ou trop vite. Ou trop privé.\nCryptolab, c’est un carnet de bord # Cryptolab n’est pas un blog de tutoriels parfaits.\nCe n’est pas une vitrine professionnelle.\nCe n’est pas non plus un site SEO avec des titres racoleurs.\nC’est un carnet de bord technique.\nIci, je documente :\nce que j’essaie, ce qui casse, ce qui marche par hasard, ce que je referais différemment. Parfois c’est propre.\nParfois c’est bancal.\nSouvent c’est instructif.\nCe que vous trouverez ici # Sur Cryptolab, il y aura :\ndes récits d’expérimentation technique, des choix d’architecture expliqués après coup, des projets inutiles mais intéressants, de l’open-source, de l’infrastructure personnelle assumée, et parfois de l’overkill revendiqué. Tout ce qui est publié ici est fait pour être réutilisé librement.\nCe que ce site n’est pas # Autant être clair dès le départ.\nCryptolab :\nne donne pas de conseils financiers, ne promet pas de rendement, ne vend rien, ne cherche pas à convaincre, ne suit pas les modes. Si un article t’aide, tant mieux.\nSinon, ce n’est pas grave non plus.\nUn lab, pas un produit fini # Cryptolab n’est pas un projet terminé.\nC’est un espace qui évolue au rythme des idées, du temps disponible et de l’envie d’expérimenter.\nRien n’est figé.\nRien n’est optimisé pour plaire à tout le monde.\nC’est volontaire.\nBienvenue dans le lab.\n","date":"27 décembre 2025","externalUrl":null,"permalink":"/posts/2025/pourquoi-cryptolab-existe/","section":"Posts","summary":"","title":"Pourquoi Cryptolab existe","type":"posts"},{"content":"","date":"27 décembre 2025","externalUrl":null,"permalink":"/tags/r%C3%A9seau/","section":"Tags","summary":"","title":"Réseau","type":"tags"},{"content":"","date":"27 décembre 2025","externalUrl":null,"permalink":"/tags/s%C3%A9curit%C3%A9/","section":"Tags","summary":"","title":"Sécurité","type":"tags"},{"content":" Présentation du site # Le site cryptolab.re est un blog personnel ayant pour objectif de documenter, partager et archiver des expérimentations techniques, des retours d’expérience et des réflexions autour notamment :\nde l’infrastructure et du self-hosting, des réseaux et de la sécurité, de l’open-source, de la crypto-économie et des technologies associées. Les contenus publiés n’ont pas vocation à constituer des conseils professionnels, financiers, juridiques ou d’investissement. Ils reflètent une démarche personnelle, expérimentale et technique.\nConditions générales d’utilisation # L’accès et l’utilisation du site cryptolab.re impliquent l’acceptation pleine et entière des présentes conditions générales d’utilisation.\nCes conditions sont susceptibles d’être modifiées à tout moment, sans préavis. Les utilisateurs sont invités à les consulter régulièrement.\nLe site est normalement accessible 24h/24 et 7j/7. Une interruption pour maintenance ou raison technique peut toutefois être décidée par l’éditeur, sans obligation de notification préalable.\nExactitude des informations et responsabilité # L’éditeur s’efforce de fournir des informations aussi précises et à jour que possible.\nToutefois, aucune garantie n’est apportée quant à l’exactitude, l’exhaustivité ou la pertinence des contenus publiés.\nL’éditeur ne saurait être tenu responsable :\nd’erreurs ou d’omissions, de l’interprétation ou de l’utilisation faite des informations diffusées, de dommages directs ou indirects résultant de l’accès ou de l’usage du site. Les contenus sont fournis à titre informatif, sans engagement de résultat.\nLimitations techniques # Le site est généré statiquement à l’aide du générateur Hugo, et repose sur des technologies standards du web (HTML, CSS, JavaScript, Markdown).\nL’utilisateur s’engage à accéder au site avec un matériel récent, sécurisé et à jour.\nL’éditeur ne pourra être tenu responsable de dommages matériels, logiciels ou de pertes de données liés à l’utilisation du site.\nLicence des contenus — contenu libre et ouvert # Sauf mention contraire explicite, l’intégralité des contenus publiés sur cryptolab.re\n(textes, articles, schémas, extraits de code, configurations, analyses) est placée sous la licence :\nCreative Commons CC0 1.0 — Public Domain Dedication\nCela signifie que :\nle contenu peut être copié, modifié, redistribué librement ; l’usage commercial est autorisé ; aucune attribution n’est requise (bien qu’elle reste appréciée) ; aucune autorisation préalable n’est nécessaire. L’objectif est volontairement simple : ne rien bloquer, favoriser la réutilisation, l’apprentissage et le partage, sans contrainte juridique.\nTexte complet de la licence :\nhttps://creativecommons.org/publicdomain/zero/1.0/deed.fr\nLes contenus tiers éventuellement intégrés (logos, thèmes, bibliothèques, citations externes) restent soumis à leurs licences respectives.\nDonnées personnelles # Le site cryptolab.re utilise l’outil de mesure d’audience Matomo, configuré dans une logique de respect de la vie privée.\nLes données collectées sont strictement limitées à des statistiques de fréquentation anonymisées et ne permettent pas d’identifier personnellement les visiteurs.\nConcrètement :\naucune donnée nominative n’est collectée, les adresses IP sont anonymisées, aucun cookie de suivi n’est utilisé (ou uniquement des cookies exemptés de consentement), aucune donnée n’est cédée ou revendue à des tiers. Ces données sont utilisées uniquement à des fins de mesure d’audience et d’amélioration du contenu du site.\n📧 foudre@cryptolab.re\nLiens hypertextes # Le site peut contenir des liens vers des sites externes.\nL’éditeur n’exerce aucun contrôle sur ces ressources et ne saurait être tenu responsable de leur contenu, disponibilité ou fonctionnement.\nDroit applicable # Le site est soumis au droit français.\nEn cas de litige, et à défaut de résolution amiable, les juridictions françaises seront seules compétentes.\nDernière mise à jour : 29 juillet 2025\n","date":"29 juillet 2025","externalUrl":null,"permalink":"/mentions-legales/","section":"Cryptolab","summary":"","title":"Mentions légales","type":"page"},{"content":"Bienvenue sur Cryptolab.\nCryptolab est un carnet de bord technique.\nUn espace personnel où je documente mes expérimentations, mes choix d’architecture, mes erreurs et mes apprentissages autour de l’infrastructure, du self-hosting, du réseau, de la crypto et des projets open-source.\nIci, pas de promesse marketing ni de recette miracle.\nSeulement des retours d’expérience concrets, issus d’un lab réel — parfois overkill, souvent imparfait, toujours instructif.\nCe que vous trouverez ici # Des récits techniques basés sur des cas réels : VPS low-cost, homelab, réseau, sécurité, DNS, observabilité. Des retours d’expérience sur des outils et projets open-source, testés en conditions réelles. Des réflexions autour de la crypto, de la DeFi et des infrastructures associées, sans hype inutile. Des articles écrits pour comprendre, pas pour vendre ni optimiser un SEO artificiel. Les contenus évoluent avec le lab, les projets et les expérimentations en cours.\nPhilosophie du site # Cryptolab se veut volontairement simple :\nsite statique généré avec Hugo hébergement auto-géré aucune dépendance à une plateforme tierce Ce site existe avant tout pour documenter, partager et garder une trace.\nMe contacter # Une question, une remarque ou envie d’échanger ?\nVous pouvez m’écrire à l’adresse suivante :\n📧 foudre@cryptolab.re\nBonne lecture,\net bienvenue dans le lab.\n","date":"28 juillet 2025","externalUrl":null,"permalink":"/about/","section":"Cryptolab","summary":"","title":"À propos","type":"page"},{"content":"","externalUrl":null,"permalink":"/authors/","section":"Authors","summary":"","title":"Authors","type":"authors"},{"content":"","externalUrl":null,"permalink":"/series/","section":"Series","summary":"","title":"Series","type":"series"}]