[{"data":1,"prerenderedAt":221},["ShallowReactive",2],{"seo-verification":3,"blog-rustdesk-bureau-distance-self-hosted-vps-ma-fr":6,"promo-bar-likely":207},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-rustdesk-bureau-distance-self-hosted-vps-ma-fr",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":30,"intro":33,"sections":34,"ctaTitle":152,"ctaBody":153,"ctaButton":154,"ctaUrl":155,"relatedPosts":156},222,"rustdesk-bureau-distance-self-hosted-vps",{"fr":10,"en":12,"ar":13,"es":14},"rustdesk-replace-teamviewer-with-a-self-hosted-server","rustdesk-استبدال-teamviewer-بخادم-self-hosted","rustdesk-escritorio-remoto-self-hosted-vps","RustDesk : bureau à distance self-hosted sur VPS","Hébergez votre serveur RustDesk sur VPS pour des sessions bureau à distance privées, sans tiers dans la boucle, avec TLS et contrôle d'accès.",13,2,false,"2026-08-04T00:00:00+00:00","2026-09-29T14:40:44+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},7,"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Frustdesk-bureau-distance-self-hosted-vps-poster.svg","TeamViewer et AnyDesk facturent des licences annuelles élevées tout en faisant transiter chaque session par leur propre infrastructure. RustDesk, open source sous licence AGPL-3.0, retourne ce modèle : vous déployez deux services légers sur votre VPS, le trafic ne quitte jamais votre infrastructure et le chiffrement bout-en-bout est garanti par construction — pas par contrat. Ce guide couvre l'architecture complète, le déploiement pas-à-pas, la configuration TLS, le contrôle d'accès et le maintien en condition opérationnelle.",[35,39,50,53,56,81,84,87,90,142,146,149],{"type":36,"title":37,"body":38},"h2","Pourquoi self-héberger son serveur de bureau à distance","Les solutions commerciales comme TeamViewer ou AnyDesk ont un point commun : chaque connexion passe par leur infrastructure de relais, quelle que soit la distance réelle entre les deux machines. Cela pose trois problèmes concrets.\n\n**Confidentialité et conformité.** Les données transitent par des serveurs tiers soumis à la législation de leur pays d'hébergement. Pour les prestataires IT qui accèdent à des systèmes financiers, médicaux ou juridiques, cette délégation implicite peut invalider un accord de conformité (RGPD, ISO 27001, HIPAA). RustDesk self-hosted élimine cette dépendance : le trafic chiffré reste dans votre datacenter.\n\n**Historique de vulnérabilités.** TeamViewer a subi plusieurs incidents notables — en 2016, des milliers de comptes ont été compromis par credential stuffing ; en 2024, une intrusion dans l'environnement corporate a été attribuée à un groupe APT. Ces incidents ne mettent pas en cause le protocole, mais soulignent que dépendre d'un tiers, c'est dépendre de sa surface d'attaque.\n\n**Coût des licences.** TeamViewer Business démarre à plus de 600 €\u002Fan pour un seul utilisateur simultané. AnyDesk est moins cher mais reste sur un modèle par siège. RustDesk self-hosted réduit le coût à celui de votre VPS — un ServOrbit à partir de 99 DH\u002Fmois suffit pour toute une équipe.",{"type":40,"title":41,"items":42},"ul","Ce que RustDesk self-hosted vous offre",[43,44,45,46,47,48,49],"**Aucune limite de session** — pas de licence par siège ni de quota de connexions simultanées ; votre serveur sert autant d'utilisateurs que votre VPS peut en absorber","**Chiffrement bout-en-bout garanti** — courbe Ed25519 pour l'échange de clés, ChaCha20-Poly1305 pour le flux vidéo et les entrées clavier\u002Fsouris : la clé publique de votre serveur est intégrée au client, ce qui rend l'interception structurellement impossible","**Latence maîtrisée** — votre relais est dans le datacenter de votre choix ; en choisissant la région la plus proche de vos équipes, le RTT est systématiquement inférieur à celui d'un relais SaaS générrique basé en Europe du Nord","**Clients multiplatformes** — Windows, macOS, Linux, Android, iOS et navigateur web depuis un seul serveur central, sans configuration différente par plateforme","**Mode ID personnalisé** — assignez des identifiants mémorables (`SERVEUR-DB-01`, `LAPTOP-ALICE`) au lieu des ID numériques aléatoires générés par défaut","**API REST intégrée** — RustDesk Server Pro expose une API REST qui permet d'interroger l'état des connexions, de lister les machines enregistrées et d'automatiser le provisionnement via vos propres scripts ou un CMDB","**Audit log des sessions** — chaque connexion, déconnexion et transfert de fichier est horodaté et journalisé côté serveur ; indispensable pour les environnements soumis à des exigences de traçabilité",{"type":36,"title":51,"body":52},"Architecture RustDesk : hbbs et hbbr","RustDesk sépare le rôle de signalisation du rôle de relais en deux processus distincts.\n\n**hbbs — le serveur de rendez-vous (ID Server).** C'est le point d'entrée. Chaque client RustDesk qui démarre s'y enregistre avec un identifiant numérique (ou personnalisé). Quand une connexion est initiée, les deux parties se contactent via `hbbs` pour échanger leurs adresses IP et tenter une connexion directe P2P. `hbbs` écoute sur les ports TCP 21115 et 21116, ainsi que UDP 21116.\n\n**hbbr — le serveur relais (Relay Server).** Si la connexion P2P échoue (NAT symétrique, pare-feu restrictif), le trafic est relayé via `hbbr`. Le relais ne voit que des flux chiffrés — il ne peut pas lire le contenu. `hbbr` écoute sur le port TCP 21117.\n\n**Flux d'une connexion.** La machine A contacte `hbbs` en TCP pour obtenir l'adresse de la machine B. Les deux machines tentent une connexion directe UDP (hole punching). Si elle réussit, `hbbr` n'est pas impliqué et la latence est minimale. Si elle échoue, `hbbs` fournit à A l'adresse de `hbbr` pour relayer — avec un léger surcoût de quelques millisecondes. Dans la pratique, P2P réussit sur la majorité des réseaux domestiques et d'entreprise qui n'ont pas de NAT strict.",{"type":36,"title":54,"body":55},"Prérequis VPS","**Ressources minimales.** 1 Go de RAM et 1 vCPU suffisent jusqu'à environ 20 connexions simultanées en mode relais. Au-delà, le facteur limitant est la bande passante : un flux Full HD encode à environ 2-4 Mbit\u002Fs. Pour 50 connexions simultanées en relay, prévoyez 2 vCPU, 2 Go de RAM et un VPS avec un débit garanti d'au moins 200 Mbit\u002Fs.\n\n**Ports à ouvrir.**\n- TCP 21115 — négociation NAT\n- TCP 21116 — enregistrement des ID\n- UDP 21116 — hole punching P2P\n- TCP 21117 — flux relayé\n- TCP 21118 et 21119 — client web (optionnel)\n- TCP 443 — interface admin HTTPS (si activée)\n\n**Logiciels requis.** Docker Engine 24+ et Docker Compose v2 (`docker compose` sans tiret). Un nom de domaine ou sous-domaine est recommandé pour exposer l'interface admin derrière TLS — sinon les connexions à la GUI se font en HTTP clair.",{"type":57,"title":58,"steps":59},"steps","Déployer RustDesk Server sur VPS",[60,63,66,69,72,75,78],{"title":61,"body":62},"Créer le répertoire et le fichier docker-compose.yml","Créez la structure de répertoires et le fichier Compose :\n\n```bash\nmkdir -p \u002Fopt\u002Frustdesk\u002Fdata\ncd \u002Fopt\u002Frustdesk\n```\n\nContenu du fichier `docker-compose.yml` :\n\n```yaml\nservices:\n  hbbs:\n    image: rustdesk\u002Frustdesk-server:latest\n    command: hbbs\n    ports:\n      - \"21115:21115\"\n      - \"21116:21116\"\n      - \"21116:21116\u002Fudp\"\n      - \"21118:21118\"\n    volumes:\n      - .\u002Fdata:\u002Froot\n    restart: unless-stopped\n    depends_on:\n      - hbbr\n\n  hbbr:\n    image: rustdesk\u002Frustdesk-server:latest\n    command: hbbr\n    ports:\n      - \"21117:21117\"\n      - \"21119:21119\"\n    volumes:\n      - .\u002Fdata:\u002Froot\n    restart: unless-stopped\n```\n\nLe volume partagé `.\u002Fdata` garantit que `hbbs` et `hbbr` utilisent la même paire de clés générée au premier démarrage.",{"title":64,"body":65},"Démarrer les conteneurs et récupérer les clés","Lancez les deux services en arrière-plan :\n\n```bash\ndocker compose up -d\n```\n\nAu premier démarrage, `hbbs` génère automatiquement une paire de clés Ed25519 dans `.\u002Fdata\u002F`. Récupérez la clé publique :\n\n```bash\ncat \u002Fopt\u002Frustdesk\u002Fdata\u002Fid_ed25519.pub\n```\n\nNotez cette valeur — vous en aurez besoin pour configurer chaque client. Sans elle, les clients refuseront de se connecter à votre serveur. Conservez aussi `id_ed25519` (clé privée) en lieu sûr ; si elle est compromise, tous les clients devront être reconfigurés avec une nouvelle clé.",{"title":67,"body":68},"Configurer le pare-feu (ports TCP\u002FUDP)","Ouvrez les ports nécessaires dans `ufw` :\n\n```bash\nufw allow 21115\u002Ftcp\nufw allow 21116\u002Ftcp\nufw allow 21116\u002Fudp\nufw allow 21117\u002Ftcp\nufw allow 21118\u002Ftcp\nufw allow 21119\u002Ftcp\nufw reload\n```\n\nSi votre VPS est également protégé par un pare-feu réseau dans le panneau ServOrbit, appliquez les mêmes règles à ce niveau. Vérifiez ensuite que les ports sont bien en écoute :\n\n```bash\nss -tlnup | grep -E '2111[5-9]'\n```",{"title":70,"body":71},"Exposer l'interface admin derrière un reverse proxy HTTPS","RustDesk Server Pro propose une interface web d'administration sur le port 21114 (HTTP). Pour l'exposer en HTTPS, ajoutez nginx comme reverse proxy dans votre `docker-compose.yml` ou dans une configuration nginx existante.\n\nExemple de vhost nginx minimal pour `rustdesk.votre-domaine.com` :\n\n```nginx\nserver {\n    listen 443 ssl;\n    server_name rustdesk.votre-domaine.com;\n    ssl_certificate \u002Fetc\u002Fletsencrypt\u002Flive\u002Frustdesk.votre-domaine.com\u002Ffullchain.pem;\n    ssl_certificate_key \u002Fetc\u002Fletsencrypt\u002Flive\u002Frustdesk.votre-domaine.com\u002Fprivkey.pem;\n    location \u002F {\n        proxy_pass http:\u002F\u002F127.0.0.1:21114;\n        proxy_set_header Host $host;\n        proxy_set_header X-Real-IP $remote_addr;\n    }\n}\n```\n\nObtenez le certificat avec Certbot :\n\n```bash\ncertbot --nginx -d rustdesk.votre-domaine.com\n```",{"title":73,"body":74},"Configurer les clients desktop (Windows, macOS, Linux)","Téléchargez le client RustDesk depuis [rustdesk.com](https:\u002F\u002Frustdesk.com) et ouvrez les paramètres réseau (icône engrenage → Réseau). Renseignez :\n- **Serveur ID** : adresse IP ou nom de domaine de votre VPS\n- **Serveur Relay** : même valeur\n- **Clé** : la valeur copiée depuis `id_ed25519.pub`\n\nValidez. L'indicateur de connexion passe au vert si le serveur est joignable et la clé correcte. Dès cet instant, aucune tentative de connexion ne passe par les serveurs publics RustDesk.",{"title":76,"body":77},"Configurer les clients mobiles (Android et iOS)","Sur Android, installez RustDesk depuis le Play Store ou en APK direct (utile si le Play Store est restreint sur certains appareils d'entreprise). Sur iOS, RustDesk est disponible sur l'App Store.\n\nDans les deux cas, accédez à Paramètres → ID\u002FRelay Server et renseignez les mêmes valeurs que pour le client desktop : adresse du serveur et clé publique. La clé peut être partagée via QR code depuis l'interface admin de RustDesk Server Pro, ce qui simplifie le déploiement en masse sur flotte mobile.",{"title":79,"body":80},"Tester une connexion bout en bout","Sur deux machines configurées avec votre serveur, relevez l'identifiant affiché sur la machine cible. Depuis la machine source, entrez cet identifiant dans le champ de connexion RustDesk et initiez la session.\n\nVérifiez dans les logs que la connexion passe bien par votre infrastructure :\n\n```bash\ndocker logs rustdesk-hbbr-1 --tail 20\n```\n\nUne ligne contenant `[RELAY]` indique que le relais est utilisé (NAT strict). Une ligne `[DIRECT]` ou l'absence de ligne dans les logs de `hbbr` indique une connexion P2P directe — idéale pour la latence.",{"type":36,"title":82,"body":83},"Configurer TLS pour les connexions sécurisées","Par défaut, les flux RustDesk sont chiffrés bout-en-bout avec ChaCha20-Poly1305 — TLS supplémentaire n'est pas requis pour les sessions de bureau à distance elles-mêmes. En revanche, l'interface admin (port 21114) et l'API REST tournent en HTTP clair si vous ne les protégez pas.\n\n**Option 1 : Certbot + nginx (recommandé).** Comme vu à l'étape 4, nginx agit en reverse proxy devant le port 21114. Certbot renouvelle le certificat automatiquement via un timer systemd.\n\n**Option 2 : Traefik comme edge proxy.** Si vous utilisez déjà Traefik pour d'autres services sur le même VPS, ajoutez simplement des labels au service `hbbr` dans Compose :\n\n```yaml\nlabels:\n  - \"traefik.enable=true\"\n  - \"traefik.http.routers.rustdesk-admin.rule=Host(`rustdesk.votre-domaine.com`)\"\n  - \"traefik.http.routers.rustdesk-admin.tls.certresolver=letsencrypt\"\n  - \"traefik.http.services.rustdesk-admin.loadbalancer.server.port=21114\"\n```\n\n**Ce qui reste en clair par conception.** Les ports 21115-21119 ne passent pas par HTTPS car ils utilisent leurs propres protocoles binaires. Le chiffrement de ces flux est assuré par les clés Ed25519 et ChaCha20 — pas par TLS. Ne tentez pas de forcer HTTPS sur ces ports.",{"type":36,"title":85,"body":86},"Activer l'authentification et le contrôle d'accès","La version open source de RustDesk Server ne propose pas d'interface d'authentification native — tout client connaissant votre clé publique peut se connecter à une machine enregistrée si celle-ci accepte la demande. RustDesk Server Pro (auto-hébergeable, gratuit jusqu'à 20 utilisateurs) ajoute plusieurs couches de contrôle.\n\n**Comptes utilisateurs et groupes.** L'interface admin permet de créer des comptes nommés, de les regrouper et de définir des politiques d'accès par groupe. Un technicien peut avoir accès uniquement aux machines du groupe « Infrastructure », pas aux postes RH.\n\n**Approbation de connexion.** Chaque machine peut être configurée pour demander une confirmation physique à l'utilisateur local avant d'autoriser la prise en main — le panneau « Accepter la connexion » apparaît sur l'écran de la machine cible.\n\n**Audit trail complet.** Chaque événement (connexion initiée, acceptée, refusée, durée, transfert de fichier) est enregistré avec l'identité de l'initiateur et l'horodatage. Les logs sont exportables en CSV depuis l'interface admin.\n\n**Désactiver les serveurs publics.** Pour forcer l'utilisation exclusive de votre serveur — sans repli sur les relais publics RustDesk en cas d'indisponibilité — ajoutez l'option `--key` avec votre clé privée dans la commande `hbbs`. Les clients configurés avec votre clé publique refuseront alors tout serveur alternatif, même le serveur officiel RustDesk.",{"type":36,"title":88,"body":89},"Optimiser la qualité d'image et la performance","RustDesk utilise par défaut son propre codec vidéo (VP9 ou H.264 selon la plateforme) avec une qualité adaptative basée sur la bande passante détectée. Plusieurs leviers permettent d'affiner ce comportement.\n\n**Qualité d'image.** Dans les paramètres du client, « Qualité image » peut être réglée sur Bas, Moyen, Élevé ou Personnalisé. En entreprise sur un réseau local ou un VPS proche géographiquement, « Élevé » est utilisable sans saturer la bande passante. Sur une connexion mobile ou longue distance, « Moyen » réduit la latence perçue.\n\n**Codec.** RustDesk sélectionne automatiquement le codec le plus adapté : H.265 si les deux extrémités ont un encodage\u002Fdécodage matériel, VP9 sinon. Sur un VPS sans GPU, VP9 est le choix par défaut — il est raisonnable en CPU pour les flux bureautiques. Évitez de forcer H.264 sur un VPS à faible CPU si vous avez plusieurs connexions simultanées.\n\n**P2P vs relais.** Une connexion P2P directe est toujours préférable : elle évite le saut supplémentaire via `hbbr` et améliore la latence en supprimant le relais intermédiaire. Si vos utilisateurs se connectent depuis le même réseau local que la machine cible, vérifiez que le pare-feu ne bloque pas les connexions UDP directes entre postes — RustDesk tentera d'abord P2P avant de passer au relais.",{"type":91,"title":92,"headers":93,"rows":99},"comparison","RustDesk vs TeamViewer vs AnyDesk vs Guacamole",[94,95,96,97,98],"Critère","RustDesk (self-hosted)","TeamViewer","AnyDesk","Guacamole",[100,105,111,117,123,127,132,137],[101,102,103,103,104],"Modèle d'hébergement","Self-hosted (VPS)","SaaS (cloud vendor)","Self-hosted (serveur web)",[106,107,108,109,110],"Coût de licence","Gratuit (OSS) \u002F Pro payant","À partir de 600 €\u002Fan\u002Futilisateur","À partir de 180 €\u002Fan\u002Futilisateur","Gratuit (Apache 2.0)",[112,113,114,115,116],"Protocole","Propriétaire chiffré (Ed25519 + ChaCha20)","Propriétaire (RDP\u002FVNC hybride)","DeskRT (codec propriétaire)","VNC \u002F RDP \u002F SSH via navigateur",[118,119,120,121,122],"Connexion P2P","Oui (avec fallback relais)","Non (toujours via cloud)","Oui (avec fallback)","Non (proxy central)",[124,125,125,125,126],"Clients mobiles natifs","Android + iOS natifs","Navigateur uniquement",[128,129,130,130,131],"Audit log","Oui (Pro)","Oui (Business+)","Limité (logs serveur bruts)",[133,129,134,135,136],"API REST","Oui (payant)","Non (API tierce)","Oui (REST partielle)",[138,139,140,141,139],"Souveraineté données","Totale (votre infra)","Nulle (cloud TeamViewer)","Partielle (relais AnyDesk)",{"type":143,"title":144,"body":145},"tip","Déploiement en entreprise : provisionner les clients en masse","RustDesk supporte la configuration automatique via un fichier JSON embarqué dans l'exécutable client. Lors du build ou du packaging pour votre flotte, placez un fichier `RustDesk2.toml` dans le répertoire de configuration avec vos valeurs :\n\n```toml\nrelay-server = \"votre-vps.exemple.com\"\nid-server = \"votre-vps.exemple.com\"\nkey = \"\u003Cvotre_clé_publique_ed25519>\"\n```\n\nPour Windows, ce fichier va dans `%APPDATA%\\RustDesk\\config\\`. Pour Linux, dans `~\u002F.config\u002Frustdesk\u002F`. Vous pouvez déployer cette configuration via votre outil de gestion de flotte (Ansible, Intune, Puppet) sans interaction utilisateur. La clé publique et l'adresse serveur sont préchargées — l'utilisateur installe RustDesk et se retrouve directement connecté à votre infrastructure.",{"type":36,"title":147,"body":148},"Surveiller et maintenir le serveur","**Métriques Docker.** Surveillez la consommation en temps réel avec `docker stats` — un pic CPU sur `hbbr` indique un nombre inhabituellement élevé de connexions relayées. Si la moyenne dépasse 80 % sur plusieurs minutes, envisagez d'augmenter le vCPU ou de vérifier si des connexions bloquées génèrent du retry en boucle.\n\n**Rotation des logs.** Les conteneurs écrivent dans stdout\u002Fstderr, gérés par le démon Docker. Ajoutez une politique de rotation dans `docker-compose.yml` pour éviter que les logs ne saturent le disque :\n\n```yaml\nlogging:\n  driver: \"json-file\"\n  options:\n    max-size: \"10m\"\n    max-file: \"5\"\n```\n\n**Mise à jour de l'image.** RustDesk publie des nouvelles versions régulièrement. Pour mettre à jour sans interruption de service perceptible :\n\n```bash\ndocker compose pull\ndocker compose up -d\n```\n\nDocker remplace les conteneurs un par un. Les sessions en cours via `hbbr` sont coupées pendant le redémarrage (quelques secondes) — préférez les mises à jour en heures creuses. Les clés dans `.\u002Fdata\u002F` sont préservées — aucune reconfiguration des clients n'est nécessaire.",{"type":36,"title":150,"body":151},"Résoudre les problèmes courants","**Connexion impossible, ID non trouvé.** Vérifiez que `hbbs` tourne (`docker ps`) et que les ports 21115-21116 TCP et 21116 UDP sont joignables depuis l'extérieur : `nc -vz \u003Cip-vps> 21116`. Si le test échoue, le pare-feu réseau (ufw ou règle VPS) bloque le port.\n\n**« Clé incorrecte » côté client.** La clé affichée dans le client ne correspond pas à `id_ed25519.pub` sur le serveur. Relisez la valeur exacte avec `cat \u002Fopt\u002Frustdesk\u002Fdata\u002Fid_ed25519.pub` et reconfigurerez le client — attention aux espaces ou retours à la ligne parasites lors du copier-coller.\n\n**Toujours en mode relay, jamais P2P.** Le hole punching UDP échoue si l'un des deux réseaux utilise un NAT symétrique (fréquent sur certains réseaux mobiles 4G\u002F5G et VPN d'entreprise). Ce n'est pas un bug — le relais fonctionne correctement, avec une latence légèrement supérieure. Pour forcer le diagnostic, comparez les logs de `hbbr` avec et sans VPN actif côté client.\n\n**L'interface admin est inaccessible.** Le port 21114 n'est pas exposé dans le `docker-compose.yml` de base — il faut l'ajouter explicitement ou passer par le reverse proxy nginx vu à l'étape 4. Vérifiez aussi que vous utilisez bien l'image `rustdesk-server-pro` (la version open source ne propose pas d'interface admin).\n\n**Mise à jour de l'image sans régénérer les clés.** Après `docker compose pull && docker compose up -d`, vérifiez que le fichier `.\u002Fdata\u002Fid_ed25519.pub` n'a pas changé — il ne devrait pas, mais une corruption de volume peut dans de rares cas regénérer la paire. Si la clé a changé, tous les clients devront être reconfigurés.","Prêt à déployer votre serveur RustDesk ?","Les VPS ServOrbit incluent une IP publique dédiée, un pare-feu configurable et Docker pré-disponible — tout ce qu'il faut pour héberger votre infrastructure de bureau à distance en quelques minutes.","Déployer RustDesk sur VPS","\u002Fvps-cloud",[157,181,198],{"id":158,"slug":159,"slugs":160,"title":164,"excerpt":165,"readTime":166,"views":167,"isPinned":19,"noindex":19,"publishedAt":168,"updatedAt":169,"category":170,"categories":176,"featuredImage":30,"bgImage":31,"posterImage":178,"relatedSolution":179},131,"deploy-vaultwarden-vps",{"fr":159,"en":161,"ar":162,"es":163},"self-host-your-password-manager-deploy-vaultwarden-on-vps","استضف-مدير-كلمات-المرور-بنفسك-انشر-vaultwarden-على-vps","desplegar-vaultwarden-en-un-vps","Déployer Vaultwarden sur un VPS : mots de passe auto-hébergés","Auto-hébergez Vaultwarden sur un VPS : gestion de mots de passe, compatibilité Bitwarden, coffres d'équipe et TOTP, à coût mensuel fixe et moins de 50 Mo de RAM.",15,3,"2026-06-24T00:00:00+00:00","2026-11-04T16:30:25+00:00",{"id":171,"name":172,"slug":173,"color":174,"icon":175},8,"Sécurité & Monitoring","securite-monitoring","bg-rose-500\u002F10 text-rose-400","security",[177],{"id":171,"name":172,"slug":173,"color":174,"icon":175},"\u002Fblog\u002Fcovers\u002Fdeploy-vaultwarden-vps-poster.svg",{"categorySlug":175,"appSlug":180},"vaultwarden",{"id":182,"slug":183,"slugs":184,"title":188,"excerpt":189,"readTime":190,"views":191,"isPinned":19,"noindex":19,"publishedAt":192,"updatedAt":193,"category":194,"categories":195,"featuredImage":30,"bgImage":31,"posterImage":197,"relatedSolution":30},204,"certificats-tls-courts-automatiser-acme",{"fr":183,"en":185,"ar":186,"es":187},"short-tls-certificates-automate-with-acme","شهادات-tls-القصيرة-أتمتة-التجديد-بـ-acme","certificados-tls-cortos-automatizar-con-acme","Certificats TLS courts : automatiser avec ACME","Let's Encrypt passe à 64 jours le 10 février 2027, puis à 45 jours. Calendrier, ARI et checklist pour certbot, acme.sh, Caddy, Traefik et nginx.",12,1,"2026-08-01T00:00:00+00:00","2026-10-23T13:27:09+00:00",{"id":171,"name":172,"slug":173,"color":174,"icon":175},[196],{"id":171,"name":172,"slug":173,"color":174,"icon":175},"\u002Fblog\u002Fcovers\u002Fcertificats-tls-courts-automatiser-acme-poster.svg",{"id":199,"slug":200,"slugs":201,"title":205,"excerpt":206,"readTime":167,"views":191,"isPinned":19,"noindex":207,"publishedAt":208,"updatedAt":209,"category":210,"categories":216,"featuredImage":30,"bgImage":31,"posterImage":218,"relatedSolution":219},136,"demarrer-avec-docker-vps",{"fr":200,"en":202,"ar":203,"es":204},"installing-docker-on-a-vps-a-clean-base-for-your-apps","تثبيت-docker-على-vps-قاعدة-نظيفة-لتطبيقاتك","instalar-docker-en-un-vps","Installer Docker sur un VPS : base propre pour vos apps","Préparez un VPS Docker fiable : isolation, Compose, volumes, réseau et bonnes pratiques pour déployer sans bricolage.",true,"2026-02-10T00:00:00+00:00","2026-09-07T11:26:10+00:00",{"id":211,"name":212,"slug":213,"color":214,"icon":215},4,"Développement","developpement","bg-warning\u002F10 text-warning","dev",[217],{"id":211,"name":212,"slug":213,"color":214,"icon":215},"\u002Fblog\u002Fcovers\u002Fdemarrer-avec-docker-vps-poster.svg",{"categorySlug":215,"appSlug":220},"docker-starter",1794270781019]