在本地使用 letsencrypt 生成证书
Generate a certificate with letsencrypt locally
我是生成证书和使用 letsencrypt 的新手,所以我不确定这是一个愚蠢的问题还是可能的。
我想使用 node.js 创建一个小示例 Web 应用程序。我想测试如何实现https,以及如何获得适当的证书。
所以我尝试使用letsencrypt。但是好像不行。
我正在使用我的本地计算机 (win10) 并且正在克隆 git。之后我尝试执行命令 ./letsencrypt-auto
但 windows 不会将脚本识别为命令。
如何在我的 win10 机器上本地使用 letsencrypt,其中没有网络服务器(通常)运行。
letsencrypt-auto
only works with Apache on Debian-based OSes (for now)。目前无法在 Windows 上使用它。
也就是说,人们正在努力。您可能会发现 this project 很有趣。 (免责声明:我与它没有任何关系,我自己也没有尝试过。)
或者您可以查看 - 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>
或者,您可以使用 ngrok
公开您的本地端口 80
并通过 subdomain.ngrok.io
上的安全隧道使其可供全世界使用。也可以将该域作为您自己域名的 CNAME 传递。
您所要做的就是:
- 使用 https://ngrok.com/ 创建免费帐户它适用于所有操作系统。
- 运行
ngrok http 80
并记下您的 subdomain.ngrok.io
- 将上述子域添加到您的
/etc/hosts
作为 127.0.0.1 subdomain.ngrok.io
。这样您就可以使用 SSL 在本地访问该域,而 ngrok 将确保 Let's Encrypt 能够通过 Internet 访问它。
编辑:请注意,此方法可能无法可靠地工作。 Let's encrypt 每个注册域有 20 个证书 rate limit。这意味着每周可以为所有 ngrok 用户生成总共 20 个证书。
免责声明:我与 ngrok.io
没有任何关系。
我是生成证书和使用 letsencrypt 的新手,所以我不确定这是一个愚蠢的问题还是可能的。
我想使用 node.js 创建一个小示例 Web 应用程序。我想测试如何实现https,以及如何获得适当的证书。
所以我尝试使用letsencrypt。但是好像不行。
我正在使用我的本地计算机 (win10) 并且正在克隆 git。之后我尝试执行命令 ./letsencrypt-auto
但 windows 不会将脚本识别为命令。
如何在我的 win10 机器上本地使用 letsencrypt,其中没有网络服务器(通常)运行。
letsencrypt-auto
only works with Apache on Debian-based OSes (for now)。目前无法在 Windows 上使用它。
也就是说,人们正在努力。您可能会发现 this project 很有趣。 (免责声明:我与它没有任何关系,我自己也没有尝试过。)
或者您可以查看 - 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>
或者,您可以使用 ngrok
公开您的本地端口 80
并通过 subdomain.ngrok.io
上的安全隧道使其可供全世界使用。也可以将该域作为您自己域名的 CNAME 传递。
您所要做的就是:
- 使用 https://ngrok.com/ 创建免费帐户它适用于所有操作系统。
- 运行
ngrok http 80
并记下您的subdomain.ngrok.io
- 将上述子域添加到您的
/etc/hosts
作为127.0.0.1 subdomain.ngrok.io
。这样您就可以使用 SSL 在本地访问该域,而 ngrok 将确保 Let's Encrypt 能够通过 Internet 访问它。
编辑:请注意,此方法可能无法可靠地工作。 Let's encrypt 每个注册域有 20 个证书 rate limit。这意味着每周可以为所有 ngrok 用户生成总共 20 个证书。
免责声明:我与 ngrok.io
没有任何关系。