Let's Encrypt
Vinza Store Let's Encrypt
Let's Encrypt
Free Security
ssltlshttpscertbotletsencryptcertificate
Get this app
Free
Available to all users. No license needed.

This plugin drives Certbot from the panel to issue, renew, revoke, and delete Let's Encrypt certificates. It lists the certificates present on a node with their expiry, and can suggest issuable domains drawn from the panel's own websites. Issuance covers the bare domain plus optional www, additional SANs typed into the form, wildcard requests via DNS-01, and a staging mode for dry runs against Let's Encrypt's test environment. When a certificate is obtained for a panel-managed website, the plugin also regenerates that site's vhost so it actually serves the certificate on :443 with an HTTP-to-HTTPS redirect — obtaining a certificate and serving it are separate steps, and both are done here.

The plugin is node-aware: for a domain served by a remote node, the Certbot run, the authenticator detection, and the on-demand install of the nginx or Apache Certbot plugin all happen on that node rather than on the panel host. Website owners get a restricted set of actions covering only their own domains, with the authenticator and webroot forced server-side so a tenant cannot point a challenge at an arbitrary path. Separately from Certbot's own renewal timer, the plugin installs a daily expiry check via /etc/cron.d/vinza-letsencrypt that warns by panel notification and optionally by email; it alerts when a certificate first enters the warning window or when its severity worsens, rather than repeating the same message every morning. Two limits are worth knowing: that expiry check inspects the panel host only and does not cover remote nodes, and issuance is throttled by a ninety-second per-domain, per-node cooldown so repeated clicks cannot burn Certbot's rate limits. It requires certbot on the server, which the install script fetches via snap or apt.

Min Panel Version
1.0.0
Platform
Ubuntu 20.04+ / 22.04+ / 24.04+
License
Free — no key needed
Permissions
websites.manage
VinzaPanel handles installation automatically via the Vinza Store. Make sure the panel agent has internet access to download dependencies.
1.2.5 — A site on a Vinza Server node is checked against that node's IP before issuing, with a clear message when its DNS points elsewhere. 1.2.4 — Issuing over a custom or self-signed certificate (SSL Manager) works on nginx and Apache: the server's config test failed once that certificate was moved aside ("The nginx plugin is not working"), so such sites now validate through their document root instead. 1.2.1 — "Test Renewal" runs in the background and streams its output (checking every certificate used to time out on servers with many DNS-validated ones). Opened from a website, the Issue form selects that website (with its document root, web server and aliases) and lists only its owner's domains, with a way to show all. DNS-01 validation through Cloudflare (uses the Cloudflare plugin's token): issue before a domain points at this server, and wildcards. Issuing now replaces a self-signed or custom certificate already installed for the domain (kept as a backup, restored if issuing fails) instead of failing with "live directory exists". Webroot, standalone and DNS-01 renewals reload the running web server. Version in info.json now matches the plugin.

Use VinzaPanel's REST API to download and install this app programmatically.

Download app files
HTTP
POST /plugins/api/download/letsencrypt/
Content-Type: application/json

{
  "panel_version": "1.0.0"
}
Example response
JSON
{
  "success": true,
  "plugin_id": "letsencrypt",
  "version": "1.2.5",
  "download_url": "..."
}