{"id":27396816,"url":"https://github.com/annahri/zmssl","last_synced_at":"2025-07-19T16:34:58.089Z","repository":{"id":287665714,"uuid":"898483868","full_name":"annahri/zmssl","owner":"annahri","description":"Zimbra utility to automate Letsencrypt SSL deployments","archived":false,"fork":false,"pushed_at":"2025-04-13T07:05:23.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-14T00:42:56.085Z","etag":null,"topics":["letsencrypt","ssl","zimbra"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/annahri.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-04T13:30:41.000Z","updated_at":"2025-04-13T06:54:51.000Z","dependencies_parsed_at":"2025-04-14T00:38:43.665Z","dependency_job_id":null,"html_url":"https://github.com/annahri/zmssl","commit_stats":null,"previous_names":["annahri/zmssl"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/annahri/zmssl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annahri%2Fzmssl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annahri%2Fzmssl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annahri%2Fzmssl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annahri%2Fzmssl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/annahri","download_url":"https://codeload.github.com/annahri/zmssl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annahri%2Fzmssl/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265966058,"owners_count":23857056,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["letsencrypt","ssl","zimbra"],"created_at":"2025-04-14T00:38:42.154Z","updated_at":"2025-07-19T16:34:58.079Z","avatar_url":"https://github.com/annahri.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# zmssl\n\n```\nzmssl v0.2 by annahri\nCLI tool for automating Let'sEncrpt SSL certificate issuance and deployment for Zimbra. (Initially written for Zimbra \u003e= 9).\nThis script requires \"certbot\" as the ACME client.\n\nUSAGE: zmssl [options] \u003caction\u003e -d ...\n\nACTIONS:\n  run           Gets the cert + chain and deploys it.\n  cron          Same as run but checks for expiry first. \n  deploy        Only deploy existing cert or arbitrary one (via --cert).\n  get-cert      Only gets the certificate.\n  check-expiry  Checks the cert expiry remaining days.\n  build-chain   Build the certificate chain.\n\nOPTIONS:\n  -d --domain \u003cdomain\u003e  Domain names. Can be set multiple times for SAN. Required for: run, cron.\n  -c --cert \u003cfile\u003e      Specify custom certificate file instead of LE's live cert.\n  -C --chain \u003cfile\u003e     Specify custom chain file instead of LE's live chain bundle.\n  -p --priv \u003cfile\u003e      Specify custom private key file instead of LE's live privkey. \n  -n --name \u003cname\u003e      Set the name of the certificate. Default: zimbra-ssl.\n  -e --email \u003caddress\u003e  Specify email address for ACME. Optional.\n  -w --days \u003cint\u003e       Set the days within renewal. Cannot be higher than 30. Dafault: 14 (2 weeks)\n  \n  --force-getcert       Force to get the certificate even if it's not within renewal days.\n  --force-getchain      Force to \"re-create\" the chain bundle.\n  --noconfirm           Auto approve all prompts.\n\n  -h --help             Display this help information.\n\nLIMITATIONS:\n  Currently, the only supported domain control validation method is HTTP validation. \n\nEXAMPLES:\n  Interactively get a certificate named \"production\" for mail.example.com and mail.example.id, \n  deploys it and restarts Zimbra services. Also send expiry notifications to admin@example.com:\n\n    ./zmssl run -n production -d mail.example.com -d mail.example.id -e admin@example.com\n\n  Certbot will store the certificates in /etc/letsencrypt/live/production\n\n  Deploy a certificate using custom name:\n    ./zmssl deploy -n custom-name\n\n  Sample cron configuration to do renewal every 30 days, weekly checking:\n  50 23 * * 6 /path/to/zmssl cron -n \u003cpre-existing-le-cert-dir\u003e -d \u003cdomains ...\u003e -e \u003cmail\u003e -w 30\n\nEXTRA:\n  For testing purposes, set ZMSSL_STAGING environment variable to true.\n```\n\n## TODO\n\n- Mail notification upon failures/successes\n- Fix bugs!!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fannahri%2Fzmssl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fannahri%2Fzmssl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fannahri%2Fzmssl/lists"}