Hi everyone,
I’d like to share a module I’ve been working on: ACME Certificate Manager (certmanacme). It wraps acme.sh to bring DNS-01 challenge support to FreePBX, giving you access to 150+ DNS
provider integrations for automated SSL/TLS certificate issuance and renewal.
Why?
FreePBX’s built-in Let’s Encrypt integration only supports HTTP-01 validation, which requires port 80 to be open and publicly reachable. That’s often not possible if your PBX sits behind a
firewall or NAT, or if you want wildcard certificates. DNS-01 solves both problems — no inbound ports needed.
Features
- DNS-01 challenge via acme.sh — works behind firewalls, supports wildcards
- 150+ DNS providers (Cloudflare, Route53, Hetzner, GoDaddy, OVH, DigitalOcean, and many more)
- Full certman integration — certificates are registered with FreePBX’s built-in Certificate Manager
- Sysadmin HTTPS sync — automatically deploys certs to Apache and HAProxy via Sysadmin::installHttpsCert()
- SAN support — add multiple Subject Alternative Names per certificate
- Multiple CA servers — Let’s Encrypt, ZeroSSL, Buypass, or any custom ACME CA
- Automatic renewal — cron-based renewal with automatic redeployment to all services
- Make Default — one-click to set a certificate as the system default
- Edit / Re-issue — change DNS provider or SANs without starting from scratch
- Pre-signed module — installs cleanly without Sangoma signature warnings
How it works
- Install the module via Module Admin (upload tar.gz)
- Go to Admin → ACME Certificates → Settings and set your email
- Click New Certificate, enter your domain, select your DNS provider, fill in the API credentials
- Hit Issue — acme.sh handles the DNS challenge, and the cert gets deployed to certman, Apache, HAProxy, and Asterisk automatically
Renewals happen via cron (fwconsole certacme --renew). When a cert is renewed, it’s automatically redeployed to all services — no manual “Apply Config” needed.
Requirements
- FreePBX 17+
- acme.sh is installed automatically on first use
Module: GitHub - lieblinger/freepbx-certman-acme · GitHub
Download the latest release tar.gz and upload it via Admin → Module Admin → Upload Module.
Feedback, bug reports, and contributions are welcome!