网站首页 > 资源文章 正文
一、Let’s Encrypt 简介
Let’s Encrypt 是一家免费、开放、自动化的证书颁发机构(CA),为公众的利益而运行。它是一项由 Internet Security Research Group(ISRG)提供的服务。并且以尽可能对用户友好的方式免费提供为网站启用 HTTPS(SSL/TLS)所需的数字证书。
目前 Let's Encrypt 免费SSL证书默认是90天有效期,到期后可以再续约,这样也就可以变相长期使用。
Let's Encrypt 生成证书的工具很多,certbot 是官方推荐的签发工具,也可以通过在线服务申请,例如
- FreeSSL(不支持自动续签)
- 七牛(不支持 DV 泛域名)
- 又拍云(不支持 DV 泛域名)
这里推荐 acme.sh,它不仅有详细的中文文档,操作更为方便,还支持 Docker。
二、使用 acme.sh 方式,获取证书
1、获取acme.sh
curl https://get.acme.sh | sh
安装完成后,需要重新加载下设置,执行如下命令
source ~/.bashrc
否则会报 acme.sh 找不到。
2、获取证书
我的域名是在阿里注册的,下面给出阿里云解析的例子
先前往阿里云后台获取App_Key跟App_Secret ,然后执行以下脚本
export Ali_Key="123"
export Ali_Secret="aaa"
acme.sh --issue --dns dns_ali -d smallyoung.cn -d *.smallyoung.cn
注意这里第一个域名为顶级域名,后面个为泛域名。
这里通过线程休眠,然后验证DNS是否生效的方式,会等待几分钟。
生成的证书在~/acme.sh/domain/ 目录下
3、导出证书
使用 --install-cert 命令
- -d:域名
- –key-file:私钥位置
- –fullchain-file:证书位置
- –reloadcmd:重载命令
#创建证书存放的目录
mkdir -p /usr/local/webserver/nginx/ssl_cert/smallyoung.cn
# 前面证书生成以后,,需要把证书 copy 到真正需要用它的地方。
acme.sh --install-cert -d smallyoung.cn -d *.smallyoung.cn --key-file /usr/local/webserver/nginx/ssl_cert/smallyoung.cn/smallyoung.cn.key --fullchain-file /usr/local/webserver/nginx/ssl_cert/smallyoung.cn/smallyoung.cn.cer --reloadcmd "/usr/local/webserver/nginx/sbin/nginx -s reload"
注意,最后的命令要确保能重新加载Nginx。
4、Nginx 配置
server {
listen 80;
server_name smallyoung.cn *.smallyoung.cn;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 http2 ssl;
server_name smallyoung.cn *.smallyoung.cn;
ssl_certificate /usr/local/webserver/nginx/ssl_cert/smallyoung.cn/smallyoung.cn.cer;
ssl_certificate_key /usr/local/webserver/nginx/ssl_cert/smallyoung.cn/smallyoung.cn.key;
#ssl性能调优
#nginx 1.13.0支持了TLSv1.3,TLSv1.3相比之前的TLSv1.2、TLSv1.1等性能大幅提升
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_timeout 10m;
#使用ssl_session_cache优化https下Nginx的性能
ssl_session_cache builtin:1000 shared:SSL:10m;
#OCSP Stapling 开启。OCSP是用于在线查询证书吊销情况的服务,使用OCSP Stapling能将证书有效状态的信息缓存到服务器,提高 TLS 握手速度
ssl_stapling on;
#OCSP Stapling 验证开启
ssl_stapling_verify on;
location / {
root /usr/local/webserver/nginx/html;#站点目录
index index.html index.htm index.php;
}
}
然后重启Nginx
/usr/local/webserver/nginx/sbin/nginx -s reload
5、相关命令
# 查看帮助
acme.sh -h
# 查看列表
acme.sh --list
# 卸载 acme.sh
acme.sh --uninstall
# 强制续签证书
acme.sh --renew -d smallyoung.cn --force
# 删除证书
acme.sh remove smallyoung.cn
6、脚本更新
自动更新:acme.sh --upgrade --auto-upgrade
手动更新:acme.sh --upgrade
关闭更新:acme.sh --upgrade --auto-upgrade 0
猜你喜欢
- 2024-09-21 微信小程序怎么搭建?(微信小程序怎么搭建平台)
- 2024-09-21 阿里P8资深架构师耗时一年整理19年Java工程师成神之路
- 2024-09-21 接口安全性测试该从哪些方面入手?阿里8年测试大佬手把手教学
- 2024-09-21 如何给网站开通免费的Cloudflare CDN
- 2024-09-21 在北京拿40K的Java程序员,需要掌握哪些技术栈才能匹配阿里P7?
- 2024-09-21 群晖NAS中安装配置vaultwarden(Bitwarden)密码管理器操作指南
- 2024-09-21 web容器获取SSL指纹实现和ByPass(js获取浏览器指纹)
- 2024-09-21 Nginx教程(nginx详细讲解)
- 2024-09-21 如何给域名配置https证书(域名与后台配置不一致错误码10003是怎么回事)
- 2024-09-21 谷歌Chrome正式宣布将不再信任赛门铁克所有SSL证书
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)