1、Let’s Encrypt:免费,快捷,支持多域名(ACME v2 现已正式支持通配符证书),三条命令即时签署+导出证书。缺陷是暂时只有三个月有效期,到期需续签。
2、StartSSL免费DV证书:不推举!
3、Comodo PositiveSSL:便宜,单年9美刀,如果签三年大概每年4至5美刀。可签署ECC SSL证书。

4、RapidSSL:单年签署价格同PositiveSSL,并没有什么优缺陷。
5、沃通(Wosign)免费DV证书:不推举!
经由考虑,果断选择第一个。
acme.sh 办法获取证书
1、获取acme.sh
curl https://get.acme.sh | sh
如下所示,表示安装成功了!
注:安装完后若是提示,命令没有找到,可以实行。
source ~/.bashrc
2、获取证书
acme.sh,可以帮我们自动配置DNS,无需我们在去后台自己设置。请选取后台获取 app_key和app_Secret (点此获取)然后实行以下脚本。
# 更换成从阿里云后台获取的密钥
export Ali_Key="viphperkey"
export Ali_Secret="viphperSecret"
# 换本钱身的域名
acme.sh --issue --dns dns_ali -d viphper.com -d .viphper.com
这里是通过线程休眠120秒等待DNS生效的办法,以是至少须要等待两分钟。
当涌现此时,代表证书已经下载到了你的做事器中,在目录 /root/.acme.sh/viphper.com中。
第一次成功之后,acme.sh会记录下App_Key跟App_Secret,并且天生一个定时任务,每天凌晨0:00自动检测过期域名并且自动续期(省去了三个月到期手动续费的麻烦)。
到此证书已经下载到做事器中的,下面说一下如何利用。
先将证书copy到须要利用到目录,一样平常会copy到nginx 目录下面,用下面的命令:
acme.sh --installcert -d <domain>.com
--key-file /etc/nginx/ssl/<domain>.key
--fullchain-file /etc/nginx/ssl/fullchain.cer
--reloadcmd "service nginx force-reload"
(一个小提醒, 这里用的是 service nginx force-reload, 不是 service nginx reload, 据测试, reload 并不会重新加载证书, 以是用的 force-reload)
nginx配置
listen 443 ssl http2;
#listen [::]:443 ssl http2;
server_name www.viphper.com viphper.com;
index index.html index.htm index.php default.html default.htm default.php;
root /www/www.viphper.com;
ssl on;
ssl_certificate cert/fullchain.cer; #根据自己实际的变动
ssl_certificate_key cert/viphper.com.key; #根据自己实际的变动
上面只列出了紧张的配置部分,请根据实际变动。