Skip to content
SPECIFICTION
Get listed

acme.sh vs cert-manager

acme.sh

github.com

cert-manager

cert-manager.io

Side by side

Figureacme.shcert-manager
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYes—
macOSYes—
LinuxYesYes
API—Yes
Self-hostedYesYes
Plans published11
Spec score · Certificate Management Software8.3 (#7)8.0 (#10)
Certificate authoritiesThe README lists ZeroSSL as the default CA and also lists Let's Encrypt, SSL.com, Google Public CA, Actalis, Pebble strict mode, and any RFC8555-compliant CA as supported.The documentation lists Let's Encrypt, HashiCorp Vault, CyberArk Certificate Manager, and private PKI among certificate authority options.
Purposeacme.sh is a Unix shell script ACME client for SSL/TLS certificate automation.cert-manager obtains X.509 certificates from public and private issuers, keeps them valid and up to date, and attempts renewal before expiry.
SupportThe README directs users to the project's GitHub Issues and Pull Requests for discussion and contributions.Palo Alto Networks offers commercial support and FIPS builds as part of its Long Term Support offering.

Plans

acme.sh

  • acme.shFree

acme.sh pricing →

cert-manager

  • Open source cert-managerFree

cert-manager pricing →

In their own words

acme.sh

acme.sh is a free Unix shell ACME client for automating SSL/TLS certificate issuance, renewal, and installation. Its installer creates a daily cron job to check certificates and renew them when needed. Written purely in shell, it is compatible with Bash, dash, and sh; the README says general use needs neither Python nor root or sudo access. It supports ECDSA, RSA, SAN, and wildcard certificates, with validation modes including webroot, standalone, standalone TLS-ALPN, Apache, Nginx, DNS, DNS alias, stateless, and DNS persist. ZeroSSL is the default certificate authority. Listed alternatives include Let's Encrypt, SSL.com, Google Public CA, Actalis, Pebble strict mode, and any RFC8555-compliant CA. The project says API integrations cover most DNS providers. Renewal uses a CA’s ACME Renewal Information when available, with a 30-day fallback rule otherwise. Manual DNS mode cannot renew automatically because each renewal requires a new TXT record to be added by hand. Tested systems listed include macOS, Windows through Cygwin, FreeBSD, and multiple Linux distributions. The project is GPLv3 licensed and officially maintained by ZeroSSL; release tags from version 3.1.6 onward are signed with the maintainer’s SSH key, while earlier tags are unsigned.

Visit github.com

cert-manager

cert-manager is a free, open-source tool for obtaining and managing X.509 certificates on Kubernetes and OpenShift. It requests certificates from public or private issuers, keeps them valid, and attempts renewal before expiration. The project automates TLS certificate issuance for Kubernetes Ingress and supports private-PKI certificates for pod-to-pod mutual TLS. Documented authority options include Let’s Encrypt, HashiCorp Vault, CyberArk Certificate Manager, and private PKI. Installation can use kubectl-applied manifests, Helm, Flux, or Argo CD. Related projects include istio-csr, approver-policy, Kubernetes CSI drivers, csi-driver-spiffe, and trust-manager; trust-manager distributes X.509 trust bundles and can run independently. cert-manager publishes threat-model and hardening guidance covering secrets, RBAC, networking, and Kubernetes configuration. Its default Helm values prioritize installation ease and backward compatibility over hardened production security. The project has no LTS releases, though each release is supported until the second subsequent version.

Visit cert-manager.io