官网:https://letsencrypt.org/zh-cn

官网建议使用Certbot的方式进行安装,所以首先我们需要安装Certbot

Certbot)

官网:Certbot (eff.org)

选择运行的机器与系统的对应信息,选择之后页面会进行跳转,我这边使用的是Centos8+NGINX, 会跳转到页面:Certbot - Centosrhel8 Nginx (eff.org)

1.需要登录服务器

2.安装snapd工具(Installing snap on CentOS | Snapcraft documentation

1)查看Centos版本

cat /etc/centos-release

2)添加epel源

$ sudo dnf install epel-release
$ sudo dnf upgrade

3)安装snapd

sudo yum install snapd

#加入systemd管理进程
sudo systemctl enable --now snapd.socket # 添加classic支持
sudo ln -s /var/lib/snapd/snap /snap

安装完成之后, 需要新打开一个终端, 重新进入, 即可使用snapd相关命令

3.安装snap之后,要升级到最新的版本

sudo snap install core; sudo snap refresh core

4.移除老的之前安装过的Certbot工具删除掉

sudo apt-get remove certbot

sudo dnf remove certbot

sudo yum remove certbot

5.安装Certbot

sudo snap install --classic certbot

创建软链接:

sudo ln -s /snap/bin/certbot /usr/bin/certbot

6.对nginx生成证书

certbot --nginx

#如果配置不是默认的位置 (/etc/nginx or /usr/local/etc/nginx),需要手动指定配置文件所在目录
certbot certonly --nginx --nginx-server-root=/root/nginx/conf

正常的话,就顺利生成了证书与Key:

进行nginx配置:

server    {
listen 80;
server_name xx.xx.com;
access_log /data/log/nginx/access_xx.xx.com_80.log main buffer=10k flush=5s;
error_log /data/log/nginx/error_xx.xx.com_80.log warn; location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
} } server {
listen 443 ssl;
server_name xx.xx.com;
access_log /data/log/nginx/access_xx.xx.com_443.log main;
error_log /data/log/nginx/error_xx.xx.com_443.log warn; ssl_certificate /etc/letsencrypt/live/xx.xx.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/xx.xx.com/privkey.pem;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on; location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
} }

然后重新加载配置文件即可:

nginx -t

nginx -s reload

7.测试证书到期自动更换

sudo certbot renew --dry-run

这个时候  就可以使用https访问一下啦~~~

注意点:

1.nginx需要支持SSL

nginx -V

查看是否加载模块: --with-http_ssl_module

参考:

SSL免费证书之Let’s Encrypt的更多相关文章

  1. Letsencrypt SSL免费证书申请(Docker)

    最近需要SSL证书,又不想花钱买,正好看到linux基金会去年底上线了新的开源项目,免费推广SSL遂尝试. Let's Encrypt 介绍 Let’s Encrypt is a free, auto ...

  2. Java Web学习总结(31)——全站HTTPS化SSL免费证书使用

    1 背景 谷歌从 2017 年起,Chrome 浏览器将也会把采用 HTTP 协议的网站标记为「不安全」网站:苹果从 2017 年 iOS App 将强制使用 HTTPS:在国内热火朝天的小程序也要求 ...

  3. Nginx+tomcat+ssl免费证书配置

    0.说明 本文说描写叙述的方式是用nginx的443重定向到tomcat的8443,nginx的80port重定到tomcat的8080: 乱入:个人标记:caicongyang 1.nginx安装 ...

  4. 阿里云使用ssl免费证书

    购买免费证书 购买之后 申请证书 该域名必须添加一条TXT记录 根据提示添加记录 下载证书 我用的nginx做的映射,所以下载nginx nginx安装自行百度 将下载的文件解压到nginx目录下(创 ...

  5. SSL免费证书申请以及nginx配置https流程记录

    设置https需要ssl 证书,可以通过FreeSSL[https://freessl.org/]申请. 流程记录: 输入域名,如 http://www.youdias.xin 选择品牌,如Let's ...

  6. 免费证书申请——Let's Encrypt的申请与应用(IIS,Tomcat)

    环境 Windows Server 2008 R2 Tomcat 8.5.31 JDK8 利用IIS+letsencrypt-win-simple.V1.9.1申请免费SSL证书 新建一个IIS空网站 ...

  7. Ubuntu 16.04配置SSL免费证书

    主要参考地址为:https://blog.csdn.net/setoy/article/details/78441613 本篇主要以Apache这个web服务器来讲解,所以前提必须要安装好apache ...

  8. https(ssl) 免费证书

    https://letsencrypt.org/getting-started/ https://certbot.eff.org/lets-encrypt/centosrhel7-nginx http ...

  9. HTTPS(SSL / TLS)免费证书申请及网站证书部署实战总结

    服务器环境:windows server 2008  +  tomcat7 废话不多说,先看部署效果: 一.免费证书申请 Let's Encrypt  简介:let's Encrypt 是一个免费的开 ...

  10. docker项目ssl 安全证书的种种

    一,证书挂着宿主的nginx上 这个很简单,只需要修改宿主nginx的配置文件即可 server { ssl default; server_name www.abc.com; #项目域名 ssl_c ...

随机推荐

  1. 人形动画常见IK的处理

    Unity中常见人形动画IK的处理方式 本文将尝试仅使用Untiy内置的Animator来解决常见的几种运动所需的IK.也会给出核心功能的代码实现. 效果一览:b站视频 Unity中人形角色的IK I ...

  2. CSS & JS Effect – Statistics Counter

    效果 当 scroll 到那些号码的时候, 号码从 0 开始跳动, 一直到最终的值. 实现思路 1. 一开始把号码 set to 0 2. 使用 IntersectionObserver 监听号码出现 ...

  3. HTML——基础标签

    基础标签    图片.音频.视频标签    src:资源路径 1.绝对路径 2.相对路径 ./ 表示本级目录 (可以省略) ../ 表示上级目录 超链接标签       列表标签    表格标签    ...

  4. 阿里面试让聊一聊Redis 的内存淘汰(驱逐)策略

    大家好,我是 V 哥,粉丝小A面试阿里,说被问到 Redis 的内存淘汰策略的问题,整理这个笔记给他参考,也分享给大家,如果你遇到这个问题,会怎么回答呢? Redis 的内存淘汰策略是指当Redis的 ...

  5. ceph-rbd和cephfs使用

    目录 1 用户权限管理和授权流程 1.1 列出用户 1.2 用户管理 1.2.1 ceph auth add 1.2.3 ceph auth get-or-create 1.2.4 ceph auth ...

  6. 【翻译】实现 Blocked Floyd-Warshall 用于解决所有对最短路径问题 C# 实现

    介绍 在之前的帖子中,我们实现了Floyd-Warshall(弗洛伊德-沃沙尔算法)(四种变体)以及路由重建算法.在这些帖子中,我们探讨了所有对最短路径问题的基本概念.内存中的数据表示.并行性.向量化 ...

  7. DevNow: Search with Lunrjs

    前言 假期真快,转眼国庆假期已经到了最后一天.这次国庆没有出去玩,在北京看了看房子,原先的房子快要到期了,找了个更加通透一点的房子,采光也很好. 闲暇时间准备优化下 DevNow 的搜索组件,经过上一 ...

  8. .NET云原生应用实践(一):从搭建项目框架结构开始

    开篇 很早之前就想做一套案例,介绍.NET下如何从零开始搭建一个云原生的应用程序.不过这个话题有点大,会要包含很多内容.我本打算从新建一个ASP.NET Core Web API应用程序开始介绍,但又 ...

  9. opengl在编译的过程中,glad使用

    我在编译的过程中,遇到:无法找到 -lglad这个错误.最后才发现对于glad的使用不能用-lglad.因为我们通过glad的在线服务可以得到一些文件,其中glad.c文件我们是需要放在我们的项目下面 ...

  10. 解决 WebSocketClient.js?5586:16 WebSocket connection to 'ws://192.168.13.25:8080/ws' failed:

    控制台报错: vue.config.js Vue的配置文件 const { defineConfig } = require('@vue/cli-service') module.exports = ...