教程太过于简单真实,请做好copy准备(看完再copy,避免出意外)
1、下载certbot
shell> git clone https://github.com/certbot/certbot
2、执行命令
shell> cd certbot
shell>./letsencrypt-auto certonly --standalone --email huangfubin00@gmail.com -d hfbin.cn -d www.hfbin.cn -d api.hfbin.cn
命令说明:
--email 这个是你邮箱随便一个,证书过期时候发邮箱会题提醒(默认证书有效三个月,后面有大招,不会过期)。
-d 这个就是你的域名,包括二级域名(一定先去域名设置里配置好,不然会出错,无法解析。如果后面你还想加二级域名也是执行这个命令。这里不能使用通配符,二级域名只能够一个一个加。)
红色警告:1、域名一定先去域名设置里配置好 2、80端口一定先关掉,等执行完命令后再开启
这时执行,命令应该会出现错误
主要原因是virtualenv环境造成的,可能版本太低。解决方法也很简单,就是重装一下virtualenv环境即可。
shell> pip uninstall virtualenv
shell> pip install virtualenv
这里可能pip版本可能过低,需要升级
按照提示命令直接升级pip
shell> pip install --upgrade pip
到这可能提示这个可以忽略
重新执行这两个命令
shell> pip uninstall virtualenv
shell> pip install virtualenv
再执行刚开始的第三个命令:
./letsencrypt-auto certonly --standalone --email huangfubin00@gmail.com -d hfbin.cn -d www.hfbin.cn -d api.hfbin.cn
这里如果没有 ( 1、域名一定先去域名设置里配置好 2、80端口一定先关掉,等执行完命令后再开启)
会出现
不慌,弄好域名解析,关闭80端口再执行上面命令
成功会出现下图证书地址
一个流程下来就下面这几个命令(如果你胆够大改一下-d二级域名直接复制过去执行),亲测可以(centos 7)。
git clone https://github.com/certbot/certbot
cd certbot
pip install --upgrade pip
pip uninstall virtualenv
pip install virtualenv
./letsencrypt-auto certonly --standalone --email huangfubin00@gmail.com -d hfbin.cn -d www.hfbin.cn -d api.hfbin.cn
4、让证书不过期
很简单写个定时脚本在certbot目录下执行./certbot-auto renew
命令即可
5、简单说一下在nginx如何配置
证书通用配置ssl.conf
ssl_certificate和ssl_certificate_key就是刚刚上面生成的复制生成地址进来即可。
这里我吧所有二级域名都放在的一个目录,在nginx配置文件记得加入包含二级域名目录即可。
注意:
1、这里监听端口是443端口,不是80,https监听是443端口。
2、上面包含一个ssl.conf文件,内容看上一张截图,就简单配置证书地址。
最终成果: