ACME SSL Manager is a Python script that provides a user-friendly command-line interface for managing SSL certificates using the ACME protocol, specifically designed for Let's Encrypt. It simplifies the process of issuing, renewing, revoking, and installing SSL certificates for your domains, including support for wildcard certificates with manual DNS verification.
- Simplified SSL Management: Easily issue, renew, revoke, and install SSL certificates for your domains.
- Wildcard Certificate Support: Issue wildcard SSL certificates with manual DNS verification or Cloudflare DNS integration.
- Manual DNS Mode Support: Enhanced support for manual DNS challenges, including verification of multiple TXT records for wildcard certificates.
- Informative Output: Provides detailed information about issued SSL certificates, such as validity period, issuer, and subject alternative names.
- User-Friendly Interface: Simple command-line interface with clear prompts and error handling.
- Optimized for Production: Version 1.2 removes debug output for cleaner logs while maintaining robust error handling and manual DNS verification.
Here are the options available in ACME SSL Manager and their descriptions:
-
Update and Install Acme: Updates and upgrades the server, installs
curlandsocat, installs theacme.shscript, sets Let's Encrypt as the default provider, and registers an account with your email. -
Decode SSL Certificate: Displays detailed information about an SSL certificate, including validity period, issuer, subject alternative names, and serial number.
-
Issue New SSL Certificate: Issues SSL certificate(s) for specified domains using Let's Encrypt in standalone mode (requires domains to point to the server).
-
Revoke SSL Certificate: Revokes and removes SSL certificate(s) for specified domains from the server.
-
Renew SSL Certificate: Renews SSL certificate(s) for specified domains using the
acme.shscript. -
Issue Wildcard SSL Certificate for Each Domain Separately: Issues wildcard SSL certificate(s) for each specified domain using Cloudflare DNS integration.
-
Issue Combined Wildcard SSL Certificate for Multiple Domains: Issues a combined wildcard SSL certificate for multiple domains using Cloudflare DNS integration.
-
Issue SSL Certificate with Auto Challenge (Supports Wildcard, No Cloudflare): Issues SSL certificates with automatic challenge handling, supporting both standalone mode (for non-wildcard) and manual DNS mode (for wildcard certificates).
-
Exit: Exits the program.
- Python 3.x
- curl and socat (installed automatically via option 1)
- acme.sh (installed automatically via option 1)
- OpenSSL (for decoding certificate information)
- dig (for verifying DNS TXT records in manual DNS mode)
Clone the repository and run the script ACME_SSL_Manager_1.2.py:
git clone https://github.com/090ebier/ACME_SSL_Manager.git
cd ACME_SSL_Manager
python3 ACME_SSL_Manager_1.2.pyOR
python3 <(curl -kL --progress-bar https://raw.githubusercontent.com/090ebier/ACME_SSL_Manager/refs/heads/main/ACME_SSL_Manager_1.2.py)