Windows newbie without Linux - quite confused

Ok, well their process is a outdated/clunky but you can make it work. A lot depends on whether you are allowed to upload your own private key, or whether you need to only use their CSR file.

Domain Validation
The process of ordering a cert from Let's Encrypt requires validating your domain, so whichever tool you use you need to either present a particular response via http (e.g. `http:///yourwebsite.com/well-known/acme-challenge/) or use DNS validation (present a particular TXT record called _acme-challenge with a different value every time you validate). In your case http validation is going to be difficult or impossible, because your local machine doesn't host the website for that domain. In which case, DNS validation might work. Ideally you use an automated method but manual methods do exist as well.

Certbot & Linux
You can use the standard certbot app on windows or linux, it doesn't matter in this case. If you want to learn linux try switching on WSL (Windows Subsystem For Linux) and install Ubuntu from the windows store etc.

Windows
As you are on Windows, I also work https://certifytheweb.com (which is a windows GUI), and to do what you need using that you would:

  • create a new managed certificate, either add the domains yourself (this will generate a new private key and use it's own CSR) or use a custom CSR (Certificate > Advanced > Signing & Security).
  • You then need to choose DNS validation from the Authorization tab and see if one of the automated providers will do what you need or if you need to use the Manual DNS option.
  • You then click "Request Certificate" to begin your certificate order.
  • If that all works OK you can add a Deploy to Generic Server task under Tasks, set the output file paths to somewhere on your machine then save and hit the play button to run the task, this will export the certificate to the files you want. You can then upload those files as required.

You can also do the same using certbot, win-acme or Posh-ACME, they just have different options/processes.

Alternatively
An alternative to using your own Let's Encrypt cert is to use something like Cloudflare (free) to host your DNS and proxy your site, that way you get https automatically (and you can then choose to also have https enabled on your real server, or not). This involves signing up, adding your domain, transferring DNS records then repointing to cloudflare nameservers with your domain registrar.

5 Likes