使用acme.sh生成https 免费证书 支持多级域名

由于公司项目最近为了保证系统更加的安全,需要给所有的项目加上https证书。一般我们申请证书都会去阿里云或者百度云这种大型网站上购买。但是网上免费的ssl 证书只支持单域名,无法支持二级域名。支持多域名的ssl证书费用一年下来都得两三千。今天小编就来给大家介绍下使用acme.sh申请免费https证书。

acme.sh 安装

acme.sh 实现了 acme 协议,可以从 letsencrypt 生成免费的证书。首先第一步在linux系统中安装acme.sh。执行命令curl https://get.acme.sh | sh。安装完acme.sh之后,会在root目录下生成一个.acme.sh文件夹。
使用acme.sh生成https 免费证书 支持多级域名_第1张图片

使用acme.sh生成https 免费证书 支持多级域名
acme.sh 实现了 acme 协议,可以从 letsencrypt 生成免费的证书。首先第一步在linux系统中安装acme.sh。执行命令 curl https://get.acme.sh | sh。安装完acme.sh之后,会在root目录下生成一个.acme.sh文件夹。

使用acme.sh生成证书

生成证书之前需要在你的网站根目录下放置一个文件, 来验证你的域名所有权。必须保证这个域名是可以访问的。这里以tomcat为例,我的项目部署在tomcat中的webapps目录下的ROOT目录。此时我们执行命令。(这个过程中acme.sh 会全自动的生成验证文件, 并放到网站的根目录, 然后自动完成验证. 最后又自动删除验证文件)

acme.sh --issue -d www.test.com(需要换成你自己的域名) -d www.test.com --webroot
/www/server/tomcat8/webapps/ROOT

执行完以上命令之后acme.sh 会帮我们在/root/.acme.sh/www.test.com 目录下生成免费的ssl证书。此时大家需要注意acme.sh 的安装目录/root/.acme.sh/一般来说不能让nginx或Apache直接使用。所以我们需要将证书放到一个指定的目录。我我们只需要将/root/.acme.sh/www.test.com 目录下的.key文件和.cer文件copy到另外指定的文件夹中。

使用nginx 配置https证书

使用acme.sh生成https 免费证书 支持多级域名_第2张图片
ok,这样我们就完成了https证书的配置。这里大家注意下,如果需要使用二级域名,只需要使用acme.sh重新生成一份子域名的ssl证书即可。哈哈。是不是方便呢

你可能感兴趣的:(java,https)