{"id":26828188,"url":"https://github.com/flexibleenginecloud/fe-letsencrypt","last_synced_at":"2025-03-30T12:19:22.595Z","repository":{"id":283968856,"uuid":"619849614","full_name":"FlexibleEngineCloud/fe-letsencrypt","owner":"FlexibleEngineCloud","description":"Automatically Create and Renew Your Let'sEncrypt Certificates on ELB","archived":false,"fork":false,"pushed_at":"2023-04-11T09:24:30.000Z","size":52,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-23T11:34:36.850Z","etag":null,"topics":["certbot","certbot-dns-authenticator","flexibleengine","letsencrypt","letsencrypt-certificates"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FlexibleEngineCloud.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2023-03-27T14:39:52.000Z","updated_at":"2023-04-11T09:25:43.000Z","dependencies_parsed_at":"2025-03-23T11:34:40.130Z","dependency_job_id":"911ec1b9-0d12-4c9b-9b2d-462693a93af7","html_url":"https://github.com/FlexibleEngineCloud/fe-letsencrypt","commit_stats":null,"previous_names":["flexibleenginecloud/fe-letsencrypt"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FlexibleEngineCloud%2Ffe-letsencrypt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FlexibleEngineCloud%2Ffe-letsencrypt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FlexibleEngineCloud%2Ffe-letsencrypt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FlexibleEngineCloud%2Ffe-letsencrypt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FlexibleEngineCloud","download_url":"https://codeload.github.com/FlexibleEngineCloud/fe-letsencrypt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246314405,"owners_count":20757512,"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":["certbot","certbot-dns-authenticator","flexibleengine","letsencrypt","letsencrypt-certificates"],"created_at":"2025-03-30T12:19:22.057Z","updated_at":"2025-03-30T12:19:22.589Z","avatar_url":"https://github.com/FlexibleEngineCloud.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flexible Engine Let's Encrypt\nCertbot is a fully-featured, extensible client for the Let’s Encrypt CA (or any other CA that speaks the ACME protocol) that can automate the tasks of obtaining certificates and configuring webservers to use them. This client runs on Unix-based operating systems.\n\u003cbr/\u003e\u003cbr/\u003e\nThese scripts are extension to support Flexible Engine Cloud DNS provider. for generating/renewing letsencrypt certificates and loading them to FlexibleEngine Load Balancer (ELB).\n\u003cbr/\u003e\nThe diagram below describes in detail.\n\u003cbr/\u003e\u003cbr/\u003e\nMake sure to have already installed Certbot client on your linux machine,\nfor more details, please refer to documentation: https://certbot.eff.org/instructions\n\u003cbr/\u003e\nthese scripts are devided in two parts.\n- Script for generating the first time Letsencrypt certificate using certbot client.\n- Script for renewing the certificate (renewing script can be scheduled as cron job to run in a regular timing)\n\u003cbr/\u003e\n\n\n## Setting Env variables:\nEnvironment variables must be setted, allowing authentication and gettig API Token on the required resources.\n\u003cbr/\u003e\nhttps://docs.prod-cloud-ocb.orange-business.com/en-us/api/dns/en-us_topic_0037134406.html\n\n\n## Generating Certificate:\n'./create.sh'\n\u003cbr/\u003e\nby loading first environment variable (environment-variables.sh) and running certbot command.\n\u003cbr/\u003e\nCertbot allows for the specification of pre and post validation hooks when run in manual mode. The flags to specify these scripts are --manual-auth-hook and --manual-cleanup-hook respectively.\n\u003cbr/\u003e\u003cbr/\u003e\nThis will run the authenticator.sh script, attempt the validation, and then run the cleanup.sh script. Additionally certbot will pass relevant environment variables to these scripts:\n\u003cbr/\u003e\n- CERTBOT_DOMAIN: The domain being authenticated\n- CERTBOT_VALIDATION: The validation string\n- CERTBOT_TOKEN: Resource name part of the HTTP-01 challenge (HTTP-01 only)\n- CERTBOT_REMAINING_CHALLENGES: Number of challenges remaining after the current challenge\n- CERTBOT_ALL_DOMAINS: A comma-separated list of all domains challenged for the current certificate\n\u003cbr/\u003e\nmore details, please refer to documentation: https://eff-certbot.readthedocs.io/en/stable/using.html\n\n\u003cbr/\u003e\n\n## Renewing Certificate:\n'./renew.sh'\n\u003cbr/\u003e\nThe 'renew.sh' script will attempt to renew certificate previously obtained for the specified domain. and load it to FlexibleEngine ELB\n(domain, and auth credentials... will be retrieved from env variables script)\n\u003cbr/\u003e\n\n## Diagram:\n![alt text](doc/diagram/diagram.png)\n\u003cbr/\u003e\n\n## Links:\n- API authentication: https://docs.prod-cloud-ocb.orange-business.com/en-us/api/dns/en-us_topic_0037134406.html\n- Creating DNS record: https://docs.prod-cloud-ocb.orange-business.com/en-us/api/dns/dns_api_64001.html\n- Putting ELB Certificate: https://docs.prod-cloud-ocb.orange-business.com/api/elb/CreateCertificate.html\n- Assinging ELB Certificate to ELB Listener: https://docs.prod-cloud-ocb.orange-business.com/api/elb/UpdateListener.html\n- Deleting DNS record: https://docs.prod-cloud-ocb.orange-business.com/en-us/api/dns/dns_api_64005.html\n\n\n## License :\nThis repository is licensed under the Apache 2.0 License. See the LICENSE file for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflexibleenginecloud%2Ffe-letsencrypt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflexibleenginecloud%2Ffe-letsencrypt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflexibleenginecloud%2Ffe-letsencrypt/lists"}