A pure Unix shell script ACME client for SSL / TLS certificate automation
146 matches across 8 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | deploy/truenas_ws.sh | 15 | # ------------------------------------------------ |
| MEDIUM | deploy/byteplus_alb.sh | 49 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 51 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 56 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 58 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 190 | # ── 5. Save new CertificateId for next renewal ─────────────────────────────── |
| MEDIUM | deploy/byteplus_alb.sh | 198 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 200 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 212 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 214 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 224 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 226 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 12 | # ┌─────────────────────────────────────────────────────────────────────┐ |
| MEDIUM | deploy/byteplus_alb.sh | 23 | # └─────────────────────────────────────────────────────────────────────┘ |
| MEDIUM | deploy/byteplus_alb.sh | 73 | # ── 1. Load & validate credentials ────────────────────────────────────────── |
| MEDIUM | deploy/byteplus_alb.sh | 138 | # ── 2. Build certificate name ──────────────────────────────────────────────── |
| MEDIUM | deploy/byteplus_alb.sh | 163 | # ── 3. Read cert and key ───────────────────────────────────────────────────── |
| MEDIUM | deploy/byteplus_alb.sh | 174 | # ── 4. Deploy: first-time upload or renewal replace ───────────────────────── |
| MEDIUM | deploy/byteplus_alb.sh | 254 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 256 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 274 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 276 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 388 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | deploy/byteplus_alb.sh | 390 | # ══════════════════════════════════════════════════════════════════════════════ |
| MEDIUM | dnsapi/dns_inwx.sh | 13 | # ------------- |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | acme.sh | 5801 | _debug Le_API "$Le_API" |
| LOW | notify/smtp.sh | 1 | #!/usr/bin/env sh |
| LOW | notify/bark.sh | 1 | #!/usr/bin/env sh |
| LOW | notify/dingtalk.sh | 41 | # DINGTALK_SIGNING_KEY="" |
| LOW | notify/aws_ses.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/vault.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/directadmin.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/edgio.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/haproxy.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/haproxy.sh | 21 | # It is strongly recommended to set this something that makes sense |
| LOW | deploy/haproxy.sh | 41 | # |
| LOW | deploy/consul.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/vault_cli.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/multideploy.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/multideploy.sh | 21 | # 0 means success, otherwise error. |
| LOW | deploy/multideploy.sh | 181 | |
| LOW | deploy/localcopy.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/cpanel_uapi.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/netlify.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/keyhelp.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/lighttpd.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/lighttpd.sh | 21 | # It is strongly recommended to set this something that makes sense |
| LOW | deploy/unifi.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/unifi.sh | 21 | # The deploy-hook automatically detects standard Unifi installations |
| LOW | deploy/unifi.sh | 41 | # (same setting as above, default is updated when running on Cloud Key Gen1): |
| LOW | deploy/windows_rdp.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/windows_rdp.sh | 101 | cat <<PSEOF |
| LOW | deploy/ssh.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/panos.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/zyxel_gs1900.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/zyxel_gs1900.sh | 21 | # Current GS1900 Switch Compatibility: |
| LOW | deploy/zyxel_gs1900.sh | 41 | # |
| LOW | deploy/mydevil.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/truenas_ws.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/truenas_ws.sh | 21 | |
| LOW | deploy/truenas_ws.sh | 81 | |
| LOW | deploy/truenas_ws.sh | 101 | case "$1" in |
| LOW | deploy/truenas_ws.sh | 141 | |
| LOW | deploy/synology_dsm.sh | 1 | #!/bin/bash |
| LOW | deploy/synology_dsm.sh | 21 | # - export SYNO_HOSTNAME="localhost" - defaults to "localhost" |
| LOW | deploy/proxmoxve.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/gcore_cdn.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/ruckus.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/truenas.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/ali_dcdn.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/cleverreach.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/routeros.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/routeros.sh | 21 | # deploy script to work. |
| LOW | deploy/routeros.sh | 41 | # could be updated. Currently only the www-ssl service is beeing |
| LOW | deploy/proxmoxbs.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/qiniu.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/ali_cdn.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/byteplus_alb.sh | 1 | #!/usr/bin/env sh |
| LOW | deploy/byteplus_alb.sh | 21 | # │ → ReplaceCertificate (UpdateMode=new) — single API call │ |
| LOW | deploy/byteplus_alb.sh | 41 | # - ReplaceCertificate with UpdateMode=new uploads + replaces in 1 call |
| LOW | deploy/peplink.sh | 1 | #!/usr/bin/env sh |
| LOW | dnsapi/dns_hetzner.sh | 61 | _info "Found record id: $_record_id." |
| LOW | dnsapi/dns_bunny.sh | 161 | ## _sub_domain="_acme-challenge.two" |
| LOW | dnsapi/dns_dgon.sh | 161 | ##################### Private functions below ##################### |
| LOW | dnsapi/dns_oci.sh | 21 | # |
| 4 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | deploy/kemplm.sh | 55 | # Check if certificate is already installed |
| LOW | deploy/haproxy.sh | 262 | # Check if issuer cert is also a root CA cert |
| LOW | deploy/multideploy.sh | 82 | # Check if yq is installed |
| LOW | deploy/multideploy.sh | 89 | # Check if deploy file exists |
| LOW | deploy/multideploy.sh | 147 | # Check if extracted services exist in services list |
| LOW | deploy/multideploy.sh | 150 | # Check if service exists |
| LOW | deploy/kong.sh | 61 | #Check if sslcreated (if not => POST else => PATCH) |
| LOW | deploy/lighttpd.sh | 210 | # Check if issuer cert is also a root CA cert |
| LOW | deploy/truenas.sh | 219 | # Check if the app use the same certificate TrueNAS web UI |
| LOW | deploy/byteplus_alb.sh | 185 | # Check if deploy step set _new_cert_id |
| LOW | dnsapi/dns_sotoon.sh | 63 | # Check if there are existing TXT records for this subdomain |
| LOW | dnsapi/dns_sotoon.sh | 78 | # Check if this exact TXT value already exists (avoid duplicates) |
| LOW | dnsapi/dns_sotoon.sh | 143 | # Check if there are existing TXT records for this subdomain |
| LOW | dnsapi/dns_sotoon.sh | 211 | # Check if the response contains our domain |
| LOW | dnsapi/dns_sotoon.sh | 225 | # Check if the hyphenated name exists in the response |
| LOW | dnsapi/dns_sotoon.sh | 229 | # Check if the origin itself is used as name |
| LOW | dnsapi/dns_infoblox_uddi.sh | 63 | # Check if record already exists |
| LOW | dnsapi/dns_infoblox_uddi.sh | 178 | # Check if response contains results (even if empty) |
| LOW | dnsapi/dns_bunny.sh | 22 | # Check if API Key is set |
| LOW | dnsapi/dns_bunny.sh | 79 | # Check if API Key Exists |
| LOW | dnsapi/dns_subreg.sh | 116 | # Check if the current $response contains a successful status in the ns2:Map format: |
| LOW | dnsapi/dns_cyon.sh | 229 | # Check if we got an error response (JSON) instead of HTML |
| LOW | dnsapi/dns_dgon.sh | 21 | # Check if API Key Exists |
| LOW | dnsapi/dns_dgon.sh | 76 | # Check if API Key Exists |
| LOW | dnsapi/dns_one.sh | 33 | #Check if the TXT exists |
| LOW | dnsapi/dns_one.sh | 71 | #Check if the TXT exists |
| LOW | dnsapi/dns_huaweicloud.sh | 151 | # Check if retry count is reached |
| LOW | dnsapi/dns_huaweicloud.sh | 236 | # Check if record exist |
| LOW | dnsapi/dns_mgwm.sh | 76 | # Check if credentials are set |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | deploy/haproxy.sh | 199 | # Create a temporary PEM file |
| MEDIUM | deploy/lighttpd.sh | 147 | # Create a temporary PEM file |
| MEDIUM | deploy/panos.sh | 27 | # This function is to parse the XML response from the firewall |
| MEDIUM | deploy/panos.sh | 58 | #This function is used to deploy to the firewall |
| MEDIUM | dnsapi/dns_bunny.sh | 14 | ## Create the text record for validation. |
| MEDIUM | dnsapi/dns_bhosted.sh | 349 | # Create a unique config key for cached record ids |
| MEDIUM | dnsapi/dns_dgon.sh | 13 | ## Create the text record for validation. |
| MEDIUM | dnsapi/dns_ali.sh | 13 | # This file is referenced by Alibaba Cloud Services deploy hooks |
| MEDIUM | dnsapi/dns_online.sh | 159 | # Creating a dummy record in this temporary version, because online.net doesn't accept enabling an empty version |
| MEDIUM | dnsapi/dns_mgwm.sh | 16 | # This function is called by acme.sh to add a TXT record. |
| MEDIUM | dnsapi/dns_mgwm.sh | 36 | # This function is called by acme.sh to remove a TXT record after validation. |
| MEDIUM | dnsapi/dns_mgwm.sh | 87 | # Create the Basic Auth Header. acme.sh's _base64 function is used for encoding. |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | deploy/multideploy.sh | 79 | # Usage: |
| LOW | deploy/multideploy.sh | 121 | # Usage: |
| LOW | deploy/multideploy.sh | 175 | # Usage: |
| LOW | deploy/multideploy.sh | 203 | # Usage: |
| LOW | deploy/multideploy.sh | 223 | # Usage: |
| LOW | deploy/multideploy.sh | 265 | # Usage: |
| LOW | deploy/zyxel_gs1900.sh | 37 | # Usage: |
| LOW | deploy/truenas_ws.sh | 25 | # Usage: |
| LOW | deploy/truenas_ws.sh | 89 | # Usage: |
| LOW | deploy/truenas_ws.sh | 110 | # Usage: |
| LOW | dnsapi/dns_bookmyname.sh | 25 | # Usage: |
| LOW | dnsapi/dns_eurodns.sh | 20 | # Usage: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | dnsapi/dns_eurodns.sh | 22 | # export EURODNS_API_KEY="your-api-key" |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | notify/smtp.sh | 343 | print("Error sending: %r" % err) |
| MEDIUM | notify/smtp.sh | 347 | print("Error connecting to %s:%d: %r" % (smtp_host, smtp_port, err)) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | dnsapi/dns_namecheap.sh | 15 | # Due to Namecheap's API limitation all the records of your domain will be read and re applied, make sure to have a back |