{"id":15103551,"url":"https://github.com/slenky/puppet-iis_letsencrypt","last_synced_at":"2026-01-18T19:07:15.569Z","repository":{"id":57664628,"uuid":"109398654","full_name":"slenky/puppet-iis_letsencrypt","owner":"slenky","description":"Puppet Module for requesting LetsEncrypt certificate and deploying it to IIS on Windows.","archived":false,"fork":false,"pushed_at":"2017-12-18T16:15:18.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-20T00:11:33.543Z","etag":null,"topics":["acme","custom-types","iis","letsencrypt","letsencrypt-windows","puppet","puppet-module","puppetlabs-iis","ruby","windows"],"latest_commit_sha":null,"homepage":"https://forge.puppet.com/slenky/iis_letsencrypt","language":"Ruby","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/slenky.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-11-03T13:27:53.000Z","updated_at":"2017-12-18T16:14:10.000Z","dependencies_parsed_at":"2022-09-11T07:51:24.964Z","dependency_job_id":null,"html_url":"https://github.com/slenky/puppet-iis_letsencrypt","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/slenky/puppet-iis_letsencrypt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slenky%2Fpuppet-iis_letsencrypt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slenky%2Fpuppet-iis_letsencrypt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slenky%2Fpuppet-iis_letsencrypt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slenky%2Fpuppet-iis_letsencrypt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slenky","download_url":"https://codeload.github.com/slenky/puppet-iis_letsencrypt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slenky%2Fpuppet-iis_letsencrypt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28548974,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T19:02:06.365Z","status":"ssl_error","status_checked_at":"2026-01-18T19:01:46.239Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["acme","custom-types","iis","letsencrypt","letsencrypt-windows","puppet","puppet-module","puppetlabs-iis","ruby","windows"],"created_at":"2024-09-25T19:40:25.646Z","updated_at":"2026-01-18T19:07:15.553Z","avatar_url":"https://github.com/slenky.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# iis_letsencrypt\n#### Table of Contents\n\n1. [Description](#description)\n2. [Setup - The basics of getting started with iis_letsencrypt](#setup)\n    * [What iis_letsencrypt affects](#what-iis_letsencrypt-affects)\n    * [Setup requirements](#setup-requirements)\n    * [Beginning with iis_letsencrypt](#beginning-with-iis_letsencrypt)\n3. [Usage - Configuration options and additional functionality](#usage)\n4. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n5. [Limitations - OS compatibility, etc.](#limitations)\n6. [Development - Guide for contributing to the module](#development)\n\n## Description\nPuppet module designed to request and deploy valid SSL certificates from [LetsEncrypt](https://letsencrypt.org/) via [ACME](https://acme-v01.api.letsencrypt.org/) and deploy them to Windows Certificate Store and apply to your site.\nAlso it would check certificate expire date on every Puppet run and reissue the certificate if needed.\n\nImplemented via Custom Provider with self.instances \u0026 prefetch.\n\nBig thanks to [puppetlabs-iis](https://forge.puppet.com/puppetlabs/iis) module where I got powershell workarounds and to developers of [acme-client](https://github.com/unixcharles/acme-client)\n## Setup\n\n### What iis_letsencrypt affects\nThis module fully affects:\n* Automatically installing Rubygems Dependencies\n* Creating/removing virtual directories in IIS for new requests.\n* Requesting new certificate via ACME, save it in Certificate Store and deploy to IIS Site.\n\n### Setup Requirements\n\nThis module works perfectly with puppetlabs-iis module, so feel free to work with it but it's not actually a requrement.\n\n### Beginning with iis_letsencrypt  \n## Usage\n\nFull example with IIS you'd able to find in examples/init.pp file.\n```\nssl_cert { $mydomain1:\n  ensure           =\u003e present,\n  staging          =\u003e true,\n  remove_http_bind =\u003e true,\n  cert_pass        =\u003e '12345',\n  cert_path        =\u003e 'C:\\\\certs',\n  contact_email    =\u003e 'email@example.com',\n  physicalpath     =\u003e 'C:\\\\mysite\\\\virtualfolder'\n}\n```\n## Reference\n\n### ssl_cert resource\n#### name\nName specifies sitename in IIS where cert should apply to.\n#### domain\nIf your domain name is not the same as your site name you could specify it in thus section. Defaults to :name.\n#### staging\nBoolean. Should we use staging letsencrypt environment on true. Defaults to false\n#### remove_http_bind\nBoolean. Should provider remove http bind after activation of certificate.\n#### cert_pass\nPassword for PFX cert file.\n#### cert_path\nWhere we should store PFX and PEM files.\n#### remove_certfiles\nBoolean. Should we use remove certificate files from your file system. Defaults to true\n#### contact_email\nContact Email of person for whom cert applies to.\n#### physicalpath\nPhysical path on your machine for .well-known virtual directory\n\nAlso this module contains custom fact generator for getting SSL thumbprints.\nYou could use them as $ssl_ + domain name without dots\ni.e $ssl_examplecom or $ssl_facebookcom\n## Limitations\n\nOnly Windows with Ruby \u003e= 2.1.0\nTested on Win2012R2 with IIS 8.5\n\n## Development\nFeel free to fork, pull requests and so on.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslenky%2Fpuppet-iis_letsencrypt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslenky%2Fpuppet-iis_letsencrypt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslenky%2Fpuppet-iis_letsencrypt/lists"}