2

我是生成证书和使用letsencrypt的新手,所以我不确定这是否是一个愚蠢的问题,甚至可能。

我想使用 node.js 创建一个小型示例 web 应用程序。我想测试如何实现 https,以及如何获得正确的证书。

所以我尝试使用letsencrypt。但这似乎不起作用。

我正在使用我的本地机器(win10)并且我正在克隆 git。之后我尝试执行该命令./letsencrypt-auto,但 Windows 不会将该脚本识别为命令。

如何在我的 win10 机器上本地使用letsencrypt,在该机器上(通常)没有运行网络服务器。

4

3 回答 3

1

letsencrypt-auto 仅适用于基于 Debian 的操作系统上的 Apache(目前)。目前还没有办法在 Windows 上使用它。

也就是说,人们正在努力。你可能会觉得这个项目很有趣。(免责声明:我与此无关,也没有亲自尝试过。)

于 2016-01-17T13:40:49.243 回答
1

或者,您可以查看 - https://github.com/minio/concert使用 golang 构建的,您可以很自然地获得 Windows 二进制文件。

安装

你需要安装 golang 才能编译concert

$ go get -u github.com/minio/concert

怎么跑?

certs默认在目录中生成证书。

$ sudo concert gen <EMAIL> <DOMAIN>

在自定义目录中生成证书。

$ sudo concert gen --dir my-certs-dir <EMAIL> <DOMAIN>

certs默认更新目录中的证书。

$ sudo concert renew <EMAIL>

在自定义目录中生成证书。

$ sudo concert renew --dir my-certs-dir <EMAIL>

运行具有自动续订的服务器。

$ sudo concert server <EMAIL> <DOMAIN>
于 2016-03-26T22:24:15.890 回答
1

或者,您可以使用ngrok公开您的本地端口80,并通过subdomain.ngrok.io. 也可以将该域作为您自己的域名的 CNAME 传递。

你所要做的就是:

  • 使用https://ngrok.com/创建免费帐户它适用于所有操作系统。
  • 运行ngrok http 80并记下您的subdomain.ngrok.io
  • 将上述子域添加到您的/etc/hostsas 127.0.0.1 subdomain.ngrok.io。这样,您将能够使用 SSL 在本地访问该域,而 ngrok 将确保 Let's Encrypt 能够通过 Internet 访问它。

编辑:请注意,此方法可能无法可靠地工作。Let's encrypt每个注册域有 20 个证书速率限制。这意味着每周可以为所有 ngrok 用户生成多达 20 个证书。

免责声明:我与ngrok.io.

于 2017-08-27T21:29:51.327 回答