opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

SSL Certificate Management System (API + UI)
GitHub RepoImpressions391

Project Description

View on GitHub

CertMate: A Developer-Friendly SSL Certificate Management System

🔐 Tired of Manual SSL Certificate Chaos?

Managing SSL certificates across multiple domains and DNS providers is a pain. Between renewals, DNS challenges, and keeping track of expirations, it's easy to let something slip—until you get that dreaded "Your connection is not private" browser warning.

Enter CertMate, an open-source SSL certificate manager that handles Let's Encrypt certs with an easy API + web UI. With 663 GitHub stars and counting, it's solving real headaches for devs managing certificates at scale.

🚀 What CertMate Does

CertMate is essentially a wrapper around Certbot (Let's Encrypt's client) that adds:

  • A REST API for programmatic certificate management
  • A clean web UI to view/request certificates
  • Support for 19 DNS providers (Cloudflare, AWS Route53, Azure, etc.)
  • Multi-account support for enterprise environments
  • Automatic renewals (30-day buffer)
  • One-line certificate downloads for automation

All packaged in a Docker container for easy deployment.

🌟 Why It’s Cool

1. DNS Provider Flexibility

Unlike many ACME clients that focus on one provider, CertMate supports:

  • Cloudflare, AWS Route53, Azure DNS, Google Cloud DNS
  • DigitalOcean, PowerDNS, GoDaddy, Porkbun, and more
  • Multi-account setups (e.g., separate prod/staging Cloudflare accounts)

2. Automation-First Design

Need to fetch certs in your CI/CD pipeline? CertMate provides a simple URL pattern:

curl -H "Authorization: Bearer YOUR_TOKEN" https://your-certmate-server/example.com/tls
# Returns a ZIP with cert.pem, chain.pem, fullchain.pem, privkey.pem

3. Self-Hosted & Lightweight

No SaaS dependencies—just a Python/Flask app with:

  • 50MB Docker image (~300MB RAM usage)
  • MIT licensed (no enterprise upsell)

4. Built for Modern Infra

Includes:

  • Kubernetes examples
  • Terraform/Ansible integration snippets
  • Prometheus metrics endpoint

🛠️ How to Try It

Quick start with Docker:

git clone https://github.com/fabriziosalmi/certmate.git
cd certmate
cp .env.example .env  # Edit with your DNS provider creds
docker-compose up -d

Access the UI at http://localhost:8000 or explore the API docs at http://localhost:8000/docs.

For production, check their detailed deployment guide.

💡 Final Thoughts

As someone who’s debugged one too many certbot failures at 2AM, CertMate feels like the missing management layer ACME clients needed. It’s particularly useful if you:

  • Manage certs across multiple DNS providers
  • Need API access for automation
  • Want a simple way to monitor expirations

The project is actively maintained (latest commit July 2025) and has thorough docs—worth a look if certificates are part of your ops workflow.

🔗 Resources:

How do you currently manage SSL certificates? Would a tool like this help your workflow?

Back to Projects
Project ID: 1941185784549425305Last updated: July 4, 2025 at 07:35 PM