背景

项目以前用的是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 免费证书相关推荐

  1. 第三讲:https免费证书获取

     http是一种广泛使用的应用层协议,但是它是明文传输的,这给了黑客可乘之机.https是http的升级版,可以有效地防止中间人攻击.如果想要自己的站点支持https协议,需要获取https证书. 云 ...

  2. 如何自己申请免费的通配符证书(基于 Let‘s Encrypt 的免费证书)

    最近项目上线,需要用到https,在网上找到了可以白嫖的证书,记录一下使用过程 Let's Encrypt一个非盈利性的证书颁发机构,并且已经被大多数浏览器所信任,而我们可以使用Certbot(一个免 ...

  3. Linux Let's Encrypt生成免费证书

    1.下载certbot客户端,授权 wget https://dl.eff.org/certbot-auto chmod a+x certbot-auto 2.停止nginx sudo nginx - ...

  4. https免费证书获取方式

    来此加密 1.前往来此加密官网申请证书https://letsencrypt.osfipin.com/ 2.申请证书, 3.验证证书: dns验证:前往所在云dns解析服务 https认证:使用ngi ...

  5. 实现nginx上配置免费证书Let's Encrypt

    Let's Encrypt 的免费证书有效期为三个月,不过可以免费续期,写一个脚本定期更新即可. 准备一台nginx 服务器 ,将以下三个附件上传到你的nginx服务器. 1.下载脚本文件,wget ...

  6. 使用certbot获取 Let‘s Encrypt CA证书

    费话不说直接开撸 Let's Encrypt 官网 1. 首先我们应该拥有一个域名, 而且拥有我们自己的服务器 假设我们在阿里云注册的域名是 example.com,登录到云解析DNS控制台 我们的服 ...

  7. Let’s Encrypt免费证书获取方法

    Let's Encrypt 免费证书获取方法 一.Let's Encrypt证书前置需求 二.证书兼容性 三.使用acme.sh生成证书 四.安装证书 五.更新证书 六.排错 一.Let's Encr ...

  8. openresty ngx_lua获取环境变量

    openresty ngx_lua获取环境变量 环境变量 ngx.config.subsystem:当前请求的nginx环境 语法格式:subsystem = ngx.config.subsystem ...

  9. 【Android 异步操作】HandlerThread 示例 ( 初始化并执行 | 获取Looper | 获取 Handler | 获取消息队列 | 设置空闲队列 | 代码示例 )

    文章目录 一.HandlerThread 初始化 二.HandlerThread 获取Looper 三.HandlerThread 获取消息队列 MessageQueue 四.HandlerThrea ...

最新文章

  1. 年薪2亿!51岁苏妈获「半导体诺贝尔奖」,MIT才女变身AMD女掌门
  2. 关于建立智能车竞赛开发资源中心的汇报PPT
  3. 摄像头自动曝光_OPPO新专利曝光:手写笔不仅仅只是手写笔 它还是手机的额头...
  4. Myeclipse8.5配置本地tomcat
  5. Linux中快捷键的使用,who命令,rm命令,ps命令,cd命令,kill命令,find命令,grep命令,tar命令(gz、tar、bz2),用户管理,vim部分配置,相关命令
  6. Tomcat根据JSP生成Servlet机制解析
  7. mysql 触发器_MySQL入门之触发器
  8. Oracle用户和权限管理
  9. python 序列列表区别_Python6序列和列表
  10. jQuery/CSS3炫酷动画效果插件 animate
  11. CentOS 7安装Teamviewer 12
  12. WIN7下IIS的安装与配置
  13. 管理之道(七) - 不可奖励员工错误的行为
  14. unity3d用射线检测做了一个物体的捡起功能
  15. PDF文件title乱码
  16. 年轻人需谨记的创富理念
  17. snipaste——一个好用的截图工具
  18. 计算机网络——移动IP
  19. Python库pillow(PIL)的使用
  20. GMSK技术的原理(Principle of GMSK technologies)

热门文章

  1. protobuf篇:介绍、安装、测试
  2. 99%的游戏建模师不知道的ZBrush的15个建模技巧
  3. webdriver中的等待——主要讲解WebDriverWait()
  4. 关于无线wifi漫游设置
  5. php opcode列表,PHP中的opcode
  6. Codeforces 582B Once Again...【思维YY+Dp(LIS)】好题~
  7. 泥瓦匠之 Java 的成长感悟
  8. Hark的数据结构与算法练习之归并排序
  9. long(Long)与int(Integer)之间的转换
  10. windows光标移动快捷键操作