4.5 KiB
title: Mkcert Web UI created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, front-end, ssl, certificats, dev, mkcert] confidence: medium contested: false sources: [https://selfh.st/apps/?q=mkcert-web-ui]
Mkcert Web UI 🔐
Interface web minimaliste pour générer et gérer des certificats SSL/TLS de développement via mkcert.
| Métadonnée | Valeur |
|---|---|
| Site web | https://github.com/tarampampam/mkcert-webui |
| GitHub | https://github.com/tarampampam/mkcert-webui |
| License | MIT |
| Langage principal | Go |
| Étoiles GitHub | 10 |
| Dernière MAJ | 2025 |
| Catégorie | cat-front-end |
Description
Mkcert Web UI est une surcouche graphique pour mkcert, l'outil en ligne de commande de Filippo Valsorda qui permet de créer une autorité de certification (CA) locale de confiance et de générer des certificats SSL valides pour le développement en *.localhost ou tout autre domaine. Au lieu d'utiliser la CLI mkcert -key-file key.pem -cert-file cert.pem example.com, on passe par une interface web simple.
L'outil est particulièrement utile dans les contextes suivants : équipes de développement qui veulent standardiser la génération de certificats, labs d'homelab où l'on crée régulièrement de nouveaux services HTTPS, ou encore environnements pédagogiques (formations, CTF). L'UI expose typiquement un formulaire pour saisir le(s) nom(s) de domaine, un bouton de génération, et un lien de téléchargement des fichiers .pem produits.
⚠️ Projet jeune (⭐10) avec un bus factor limité (1 à 2 mainteneurs). Surtout, ce type d'outil manipule des clés privées : il faut être extrêmement vigilant sur l'exposition réseau (toujours limiter à 127.0.0.1 ou un réseau privé) et ne jamais l'utiliser pour générer des certificats de production. Réservé à un usage de développement/local.
Installation
Via Docker (recommandé)
services:
mkcert-webui:
image: ghcr.io/tarampampam/mkcert-webui:latest
container_name: mkcert-webui
restart: unless-stopped
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./certs:/data/certs
- ./ca:/data/ca
environment:
LISTEN: :8080
DEFAULT_CERT_VALIDITY: 825
CAROOT: /data/ca
OUTPUT_DIR: /data/certs
Installation manuelle
Cloner le dépôt, installer Go 1.21+, go build pour produire le binaire. Préparer un répertoire pour stocker la CA (CAROOT) et les certificats générés. Lancer le binaire avec les variables d'environnement appropriées. Pour le développement local, laisser le port sur 127.0.0.1 uniquement.
Configuration
Variables d'environnement : LISTEN (défaut :8080, à restreindre à localhost en dev), CAROOT (dossier où mkcert stocke la CA racine, à sauvegarder précieusement), OUTPUT_DIR (dossier de sortie des certificats générés), DEFAULT_CERT_VALIDITY (durée de validité en jours, défaut 825 = 27 mois), TRUST_ON_FIRST_RUN (si true, fait confiance automatiquement aux certificats générés). Aucun fichier de config au-delà des variables d'environnement.
Alternatives
Open source
- app-caddymanager-frontend — UI pour Caddy (qui gère ses propres certs en dev)
- step-ca (CLI) — Autorité de certification locale, plus complète
- mkcert (CLI) — L'outil original en ligne de commande, sans UI
Propriétaires
- Cloudflare Tunnel — Fournit des certs dev via tunnel, mais service externe
Sécurité
- ⚠️ Critique : ne JAMAIS exposer cette UI sur internet ou un réseau non-fiable — elle génère des clés privées
- Toujours binder sur
127.0.0.1ou un réseau privé isolé - La CA locale (
CAROOT) doit être sauvegardée de manière sécurisée : c'est elle qui signe tous les certificats de votre lab - HTTPS n'est pas nécessaire (et c'est paradoxal) puisque l'outil génère les certs pour d'autres services
- Auditer régulièrement les certificats générés et révoquer ceux qui ne sont plus utilisés
- Usage strictement local/développement : pour la production, utiliser Let's Encrypt via app-caddy ou app-nginx
Ressources
- Code source : https://github.com/tarampampam/mkcert-webui
- mkcert original : https://github.com/FiloSottile/mkcert
- Let's Encrypt : https://letsencrypt.org
- Documentation CA locale : https://github.com/FiloSottile/mkcert#installing-the-ca-trust-store