What's Changed
Added
- Certificates: mutable display name independent from the CN — rename from the certificates list, defaults to CN or first SAN DNS name for CN-less certificates (CA/B Forum profiles, Let's Encrypt tlsserver/shortlived), shown in lists and selectors with the key type to distinguish otherwise identical certificates (#286)
Fixed
- Packaging: DEB/RPM upgrades no longer silently drop manually installed Kerberos extras (
requests-kerberos,pyspnego[kerberos]) when rebuilding the virtualenv — they are detected before the rebuild and reinstalled after (#287, contributed by @Hemsby)
📜 Recent release history (last 2 versions)
[2.210] - 2026-08-14
Added
- ACME client accounts: multiple accounts can share the same CA directory URL — administrative separation for dns-persist-01 and multi-domain setups (#276)
- DNS providers: Tencent Cloud DNSPod (#284, contributed by @wxtewx)
Fixed
- ACME CA account form: the directory URL field is no longer marked required, and an empty URL defaults to Let's Encrypt Production — the helper text and the form now agree (#276)
- ACME account key import now documents the accepted legacy PEM envelopes — SEC1/X9.62 (BEGIN EC PRIVATE KEY) and PKCS#1 (BEGIN RSA PRIVATE KEY) already worked but the UI/helper only mentioned PKCS#8 (#285)
[2.209] - 2026-08-14
Added
- SCEP profiles: Microsoft Intune challenge validation — live per-device challenge validation against Intune's
ScepActionsAPI with Entra app registration, forced auto-approve, and success/failure notification before issuance (#228, contributed by @Hemsby) - ACME client accounts: import the private key of an existing account at creation (algorithm derived from the key) (#277)
- ACME client accounts: deactivate an account upstream (RFC 8555 §7.3.6) — permanent and removes the local record (#278)
Fixed
- Certificate, SSH certificate, user certificate, and discovered-certificate lists now search the entire inventory (server-side) instead of only the current page (#280)
Full history: CHANGELOG.md
Installation
Docker (Recommended)
# From Docker Hub
docker pull neyslim/ultimate-ca-manager:2.211
# Or from GitHub Container Registry
docker pull ghcr.io/neyslim/ultimate-ca-manager:2.211
# Run
docker run -d -p 8443:8443 \
-e SECRET_KEY=$(openssl rand -hex 32) \
--name ucm neyslim/ultimate-ca-manager:2.211Debian/Ubuntu
wget https://github.com/NeySlim/ultimate-ca-manager/releases/download/v2.211/ucm_2.211_all.deb
sudo dpkg -i ucm_2.211_all.deb
sudo apt-get install -fFedora/RHEL
wget https://github.com/NeySlim/ultimate-ca-manager/releases/download/v2.211/ucm-2.211-1.fc43.noarch.rpm
sudo dnf install ./ucm-2.211-1.fc43.noarch.rpmSilent/Automated Install
# Skip firewall prompts for CI/automation
sudo UCM_PORT=8443 UCM_FIREWALL=no dpkg -i ucm_2.211_all.debDefault Credentials
- Username:
admin - Password:
changeme123
Change the password immediately after first login!
Documentation
- Installation Guide
- API Documentation