bunkerweb/src/common/core/letsencrypt/plugin.json

124 lines
3.9 KiB
JSON
Raw Normal View History

{
"id": "letsencrypt",
"name": "Let's Encrypt",
"description": "Automatic creation, renewal and configuration of Let's Encrypt certificates.",
2023-04-28 08:25:47 +00:00
"version": "1.0",
"stream": "yes",
"settings": {
"AUTO_LETS_ENCRYPT": {
"context": "multisite",
"default": "no",
"help": "Activate automatic Let's Encrypt mode.",
"id": "auto-lets-encrypt",
"label": "Automatic Let's Encrypt",
"regex": "^(yes|no)$",
"type": "check"
},
"EMAIL_LETS_ENCRYPT": {
"context": "multisite",
"default": "",
"help": "Email used for Let's Encrypt notification and in certificate.",
"id": "email-lets-encrypt",
"label": "Email Let's Encrypt",
2023-10-16 16:48:00 +00:00
"regex": "^([^@ \\t\\r\\n]+@[^@ \\t\\r\\n]+\\.[^@ \\t\\r\\n]+)?$",
"type": "text"
},
"LETS_ENCRYPT_CHALLENGE": {
"context": "multisite",
"default": "http",
"help": "The challenge type to use for Let's Encrypt (http or dns).",
"id": "lets-encrypt-challenge",
"label": "Challenge Type",
"regex": "^(http|dns)$",
"type": "select",
"select": ["http", "dns"]
},
"LETS_ENCRYPT_DNS_PROVIDER": {
"context": "multisite",
"default": "",
"help": "The DNS provider to use for DNS challenges.",
"id": "auto-lets-encrypt-dns-provider",
"label": "DNS Provider",
"regex": "^(cloudflare|digitalocean|dnsimple|dnsmadeeasy|gehirn|google|linode|luadns|nsone|ovh|rfc2136|route53|sakuracloud|scaleway)?$",
"type": "select",
"select": [
"",
"cloudflare",
"digitalocean",
"dnsimple",
"dnsmadeeasy",
"gehirn",
"google",
"linode",
"luadns",
"nsone",
"ovh",
"rfc2136",
"route53",
"sakuracloud",
"scaleway"
]
},
"LETS_ENCRYPT_DNS_PROPAGATION": {
"context": "multisite",
"default": "default",
"help": "The time to wait for DNS propagation in seconds for DNS challenges.",
"id": "lets-encrypt-dns-propagation",
"label": "DNS Propagation",
"regex": "^(default|\\d+)$",
"type": "text"
},
"LETS_ENCRYPT_DNS_CREDENTIAL_ITEM": {
"context": "multisite",
"default": "",
"help": "Configuration item that will be added to the credentials.ini file for the DNS provider (e.g. 'cloudflare_api_token 123456') for DNS challenges.",
"id": "lets-encrypt-dns-credential-item",
"label": "Credential Item",
"regex": "^(\\w+ .+)?$",
"type": "password",
"multiple": "lets-encrypt-dns-credential-item"
},
"USE_LETS_ENCRYPT_WILDCARD": {
"context": "multisite",
"default": "no",
"help": "Create wildcard certificates for all domains. This allows a single certificate to secure multiple subdomains. (Only available with DNS challenges)",
"id": "use-lets-encrypt-wildcard",
"label": "Wildcard Certificates",
"regex": "^(yes|no)$",
"type": "check"
},
"USE_LETS_ENCRYPT_STAGING": {
"context": "multisite",
"default": "no",
"help": "Use the staging environment for Lets Encrypt certificate generation. Useful when you are testing your deployments to avoid being rate limited in the production environment.",
"id": "use-lets-encrypt-staging",
"label": "Use Let's Encrypt Staging",
"regex": "^(yes|no)$",
"type": "check"
},
"LETS_ENCRYPT_CLEAR_OLD_CERTS": {
"context": "global",
"default": "no",
"help": "Clear old certificates when renewing.",
"id": "lets-encrypt-clear-old-certs",
"label": "Clear old certificates when they are no longer needed",
"regex": "^(yes|no)$",
"type": "check"
}
},
"jobs": [
{
"name": "certbot-new",
"file": "certbot-new.py",
"every": "once",
"reload": false
},
{
"name": "certbot-renew",
"file": "certbot-renew.py",
"every": "day",
"reload": true
}
]
}