使用certbot openresty执行获取 Let’s Encrypt https 免费证书
背景
项目以前用的是nginx,现在加上了openresty,有一个新的网站需要使用certbot生成,这个时候原先的生成命令不管用,研究了一下如何处理。
nginx时候的命令
执行获取 Let’s Encrypt https 证书命令
// certbot certonly --nginx --nginx-server-root [nginx配置目录] -d [域名] -m [邮箱]
certbot certonly --nginx --nginx-server-root /etc/nginx/ -d mt.xxx.cn -m xxx@qq.com
openresty时候的命令
从–nginx --nginx-server-root改为了–webroot -w,感觉nginx也可以用–webroot -w
// certbot certonly -webroot -w [项目路径] -d [域名] -m [邮箱]
certbot certonly --webroot -w /opt/projects/XXXXX/ -d mt.xxx.cn -m XXX@qq.com
注意
在执行certbot 命令之前,一定要确保http的请求能正确访问,openresty的配置和域名指向都正确,否则会抛错。
下图是我没有配置好http的访问导致的抛错:
先做一个临时的配置,能让certbot 访问的http网站
server {listen 80;server_name www.xxx.com;location / {try_files $uri $uri/ /index.html;root /opt/xxx/xxx;index index.html index.htm;}
}
配置正确以后的执行情况:
启用443端口
并把http的指向https
server {listen 80;server_name www.xxx.com;rewrite ^/(.*)$ https://www.xxx.com/$1 permanent;
}server {listen 443 ssl;server_name www.xxx.com;ssl_prefer_server_ciphers on;ssl_ciphers HIGH:!ADH:!MD5:!aNULL:!eNULL:!MEDIUM:!LOW:!EXP:!kEDH;ssl_protocols TLSv1.2 TLSv1.1 TLSv1;ssl_session_timeout 1d;ssl_session_cache shared:SSL:50m;ssl_stapling on;ssl_stapling_verify on;add_header Strict-Transport-Security max-age=15768000;ssl_certificate /etc/letsencrypt/live/www.xxx.com/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/www.xxx.com/privkey.pem;location / {try_files $uri $uri/ /index.html;root /opt/xxx/xxx;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}
}
自动更新证书
Let’s Encrypt 免费 SSL 证书用起来非常方便,但每次申请只有三个月有效期,在每次到期之前都需要重新申请,Certbot 提供了一键续订的命令
# 1. 打开定时任务配置crontab -e
# 2. 增加定时刷新的配置
30 3 * */2 * /usr/bin/certbot renew --quiet >> /var/log/cerbot.log
使用certbot openresty执行获取 Let’s Encrypt https 免费证书相关推荐
- 第三讲:https免费证书获取
http是一种广泛使用的应用层协议,但是它是明文传输的,这给了黑客可乘之机.https是http的升级版,可以有效地防止中间人攻击.如果想要自己的站点支持https协议,需要获取https证书. 云 ...
- 如何自己申请免费的通配符证书(基于 Let‘s Encrypt 的免费证书)
最近项目上线,需要用到https,在网上找到了可以白嫖的证书,记录一下使用过程 Let's Encrypt一个非盈利性的证书颁发机构,并且已经被大多数浏览器所信任,而我们可以使用Certbot(一个免 ...
- Linux Let's Encrypt生成免费证书
1.下载certbot客户端,授权 wget https://dl.eff.org/certbot-auto chmod a+x certbot-auto 2.停止nginx sudo nginx - ...
- https免费证书获取方式
来此加密 1.前往来此加密官网申请证书https://letsencrypt.osfipin.com/ 2.申请证书, 3.验证证书: dns验证:前往所在云dns解析服务 https认证:使用ngi ...
- 实现nginx上配置免费证书Let's Encrypt
Let's Encrypt 的免费证书有效期为三个月,不过可以免费续期,写一个脚本定期更新即可. 准备一台nginx 服务器 ,将以下三个附件上传到你的nginx服务器. 1.下载脚本文件,wget ...
- 使用certbot获取 Let‘s Encrypt CA证书
费话不说直接开撸 Let's Encrypt 官网 1. 首先我们应该拥有一个域名, 而且拥有我们自己的服务器 假设我们在阿里云注册的域名是 example.com,登录到云解析DNS控制台 我们的服 ...
- Let’s Encrypt免费证书获取方法
Let's Encrypt 免费证书获取方法 一.Let's Encrypt证书前置需求 二.证书兼容性 三.使用acme.sh生成证书 四.安装证书 五.更新证书 六.排错 一.Let's Encr ...
- openresty ngx_lua获取环境变量
openresty ngx_lua获取环境变量 环境变量 ngx.config.subsystem:当前请求的nginx环境 语法格式:subsystem = ngx.config.subsystem ...
- 【Android 异步操作】HandlerThread 示例 ( 初始化并执行 | 获取Looper | 获取 Handler | 获取消息队列 | 设置空闲队列 | 代码示例 )
文章目录 一.HandlerThread 初始化 二.HandlerThread 获取Looper 三.HandlerThread 获取消息队列 MessageQueue 四.HandlerThrea ...
最新文章
- 年薪2亿!51岁苏妈获「半导体诺贝尔奖」,MIT才女变身AMD女掌门
- 关于建立智能车竞赛开发资源中心的汇报PPT
- 摄像头自动曝光_OPPO新专利曝光:手写笔不仅仅只是手写笔 它还是手机的额头...
- Myeclipse8.5配置本地tomcat
- Linux中快捷键的使用,who命令,rm命令,ps命令,cd命令,kill命令,find命令,grep命令,tar命令(gz、tar、bz2),用户管理,vim部分配置,相关命令
- Tomcat根据JSP生成Servlet机制解析
- mysql 触发器_MySQL入门之触发器
- Oracle用户和权限管理
- python 序列列表区别_Python6序列和列表
- jQuery/CSS3炫酷动画效果插件 animate
- CentOS 7安装Teamviewer 12
- WIN7下IIS的安装与配置
- 管理之道(七) - 不可奖励员工错误的行为
- unity3d用射线检测做了一个物体的捡起功能
- PDF文件title乱码
- 年轻人需谨记的创富理念
- snipaste——一个好用的截图工具
- 计算机网络——移动IP
- Python库pillow(PIL)的使用
- GMSK技术的原理(Principle of GMSK technologies)