Linux之免费证书工具certbot安装和使用

一、cerbot简介

  Certbot是一个免费的开源软件工具,用于在手动管理的网站上自动使用Let’s Encrypt证书以启用HTTPS。要想让自己的网站启用https协议,需要一个由CA(数字证书认证机构)颁发的,能够让各个浏览器都能承认的SSL安全证书。有很多网站可以申请到免费的SSL证书,比如阿里云,腾讯云等。一般免费证书SSL网站只可以申请二级域名ssl证书,而且有数量限制,有效期也是有限制,比如阿里云是20张有效期3个月二级域名ssl证书,腾讯云是20张有效期1年二级域名ssl证书。Let’s Encrypt证书机构则支持申请域名通配符ssl证书,这样我们一个域名有解析多个二级域名的时候我们只需要申请一次即可。只是证书一次有效期只有3个月,我们需要到期手动续期或者通过certbot结合定时任务自动续期。博文实验环境如下:

  • 操作系统:centos7.6
  • certbot版本:1.11.0
  • nginx版本:1.25.5

二、安装步骤及使用简介

1、安装epel

  安装certbot之前需要先安装epel扩展源,通过epel扩展源才可以yum安装certbot命令软件包。

[root@s76 ~]# yum install -y epel-release

2、yum安装certbot

  通过yum安装,当前安装的版本是1.11.0。

[root@s76 yum.repos.d]# yum install -y certbot

Installed:
certbot.noarch 0:1.11.0-2.el7

3、验证certbot命令

  查看certbot命令版本和命令存储路径。

[root@s76 yum.repos.d]# certbot --version
certbot 1.11.0
[root@s76 yum.repos.d]# which certbot
/usr/bin/certbot

4、查看命令帮助

  使用–help参数获取命令帮助。命令语法格式如下:certbot [SUBCOMMAND] [options] [-d DOMAIN] [-d DOMAIN] …

[root@s76 yum.repos.d]# certbot --help

5、申请ssl证书

  执行certbot命令申请证书,如果是第一次使用的邮箱则会提示是否接受邮箱注册,输入y后继续。

[root@s76 ~]# certbot certonly --server https://acme-v02.api.letsencrypt.org/directory --manual --preferred-challenges dns --email xxx@qq.com --agree-tos -d *.sun-site.com
在这里插入图片描述

6、添加域名解析记录用于验证

  根据提示登录域名注册商添加一条TXT地址解析记录。添加完成后等待1分钟以上等域名解析生效。
在这里插入图片描述

7、证书申请成功

  看到Congratulations提示就说明免费证书申请成功了。证书和key存储到/etc/letsencrypt/live/目录下,真实目录是/etc/letsencrypt/archive,会生成一个根据域名名称生成的目录,目录下包括cert.pem 、chain.pem、fullchain.pem、privkey.pem四个文件。
在这里插入图片描述

8、打包下载ssl证书

  将生成的证书及key文件压缩打包,并下载到本地。当然如果是在部署服务器上申请的证书直接拷贝到指定目录即可。

[root@s76 archive]# zip -r sun-site.com.zip sun-site.com/
adding: sun-site.com/ (stored 0%)
adding: sun-site.com/cert1.pem (deflated 27%)
adding: sun-site.com/privkey1.pem (deflated 23%)
adding: sun-site.com/chain1.pem (deflated 25%)
adding: sun-site.com/fullchain1.pem (deflated 31%)
[root@s76 archive]# sz sun-site.com.zip

9、部署验证

  将证书上传到指定目录下,修改nginx配置文件,指定新的证书文件,然后重新加载nginx配置文件。

root@jj100:/usr/local/nginx/conf# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
root@jj100:/usr/local/nginx/conf# nginx -s reload
在这里插入图片描述

10、证书查验

  访问域名网站,我们可以看到新的证书已经使用,证书颁发机构是Let’s Encrypt,证书有效期是到2024年9月8日。
在这里插入图片描述

11、证书续期

  使用certbot renew命令可以自动续期证书,–dry-run是进行测试验证,这里如提示证书有效期还比较长,证书有效期小于30天才可以申请续期,自动跳过续期任务。certbot的操作都会在/var/log/letsencrypt/letsencrypt.log留档日志。在使用过程中如果有问题我们可以查看该日志文件,获取详细信息。

[root@s76 certbot-letencrypt-wildcardcertificates-alydns-au]# certbot renew --dry-run
Saving debug log to /var/log/letsencrypt/letsencrypt.log
在这里插入图片描述

12、关于自动续期

  关于证书自动续期有通过安装python2-certbox-nginx插件实现的,有通过shell脚本certbot-letencrypt-wildcardcertificates-alydns-au+定时任务实现的。博主还这里还没有配置成功。后续另外出博文进行实验验证。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/790612.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AIGC在创意设计中的应用

随着人工智能技术的不断进步,AIGC(人工智能生成内容)已成为创意设计领域的新宠。这种新兴技术以其强大的创作能力和高效的工作效率,正逐渐改变着设计师们的工作方式和创作流程。在这个变革的时代,设计师们纷纷拥抱AIGC…

英伟达今年在华销售额预计将达120亿美元、MiniMax创始人:三年后才会出现“杀手级”AI应用

ChatGPT狂飙160天,世界已经不是之前的样子。 更多资源欢迎关注 1、英伟达今年在华销售额预计将达120亿美元 芯片咨询公司SemiAnalysis报告预估,今年英伟达有望在中国销售价值约120亿美元的人工智能芯片。黄仁勋曾表示,希望借助新的芯片使得…

树链剖分相关

树链剖分这玩意儿还挺重要的,是解决静态树问题的一个很好的工具~ 这里主要介绍一下做题时经常遇到的两个操作: 1.在线求LCA int LCA(int x,int y){while(top[x]!top[y])if(dep[top[x]]>dep[top[y]]) xfa[top[x]];else yfa[top[y]];return dep[x]&l…

cdn中配置ssl证书

##red## 🔴 大家好,我是雄雄,欢迎关注微信公众号,雄雄的小课堂。 SSL KEY 这个里面放的是:private.pem文件中的内容 SSL PEM 这个里面放的是:fullchain.crt文件中的内容,注意,这个…

JavaSE 面向对象程序设计进阶 IO流 字节流详解 抛出异常

input output 像水流一样读取数据 存储和读取数据的解决方案 内存中数据不能永久化存储 程序停止运行 数据消失 File只能对文件本身进行操作 不能读写文件里存储的数据 读写数据必须要有IO流 可以把程序中的数据保存到文件当中 还可以把本地文件中的数据读取到数据当中 分…

初学SpringMVC之 RestFul 风格、重定向和转发

RestFul 风格改变 URL 形式 比如之前是:http://localhost:8080/add?a1&b2 现在是:http://localhost:8080/add/a/b(全是斜杠) package com.demo.controller;import org.springframework.stereotype.Controller; import org…

ChatTTS的爆火是必然,它正在重新定义我们与机器对话的方式

当AI技术与语音合成相遇,开源技术众多,为什么 ChatTTS 能够一夜爆火?你有听说过能说情感真切文字的 AI 吗? 前言 想象一下,你只需输入一句话,AI就能念得声情并茂,不仅支持中英文混读&#xff0…

Webpack安装以及快速入门

3 Webpack 1 什么是Webpack https://webpack.js.org/ (官网) webpack 是一个现代 javascript 应用程序的 静态模块打包器 (module bundler) 待会要学的 vue-cli 脚手架环境, 集成了 webpack, 所以才能对各类文件进行打包处理 webpack是一个 静态模块 打包器,可以做以下的这…

一文彻底搞懂性能测试

性能测试概念 我们经常看到的性能测试概念,有人或称之为性能策略,或称之为性能方法,或称之为性能场景分类,大概可以看到性能测试、负载测试、压力测试、强度测试等一堆专有名词的解释。 针对这些概念,我不知道你看到的…

牛刀小试--下三角对称矩阵压缩存储

解析博客: 矩阵存储和特殊矩阵的压缩存储_n阶对称矩阵压缩-CSDN博客 函数功能: //为N阶下三角矩阵初始化成的一维数组分配空间 void Init_triangular_matrix(int *&matrix); //返回二维下三角矩阵的值(压缩存取) int get_Value_triangular_matrix(int matrix[],int x,int …

Canvas:实现在线画板操作

想象一下,用几行代码就能创造出如此逼真的图像和动画,仿佛将艺术与科技完美融合,前端开发的Canvas技术正是这个数字化时代中最具魔力的一环,它不仅仅是网页的一部分,更是一个无限创意的画布,一个让你的想象…

谷粒商城学习笔记-22-分布式组件-SpringCloud-OpenFeign测试远程调用

文章目录 一,OpenFeign的简介二,OpenFeign的使用步骤1,场景说明2,引入依赖2,开启OpenFeign3,编写Feign接口4,使用feign调用远程接口5,验证 错误记录 上一节学习了注册中心&#xff0…

Linux-shell编程入门基础

文章目录 前言Shell编程bash特性shell作用域变量环境变量$特殊变量$特殊状态变量 $特殊符号(很重要)其他内置shell命令shell语法的子串截取统计 指令执行时间练习shell特殊扩展变量父子shell的理解内置和外置命令区别 数值计算双括号(())运算letexprexpr模式匹配 bcawk中括号 s…

ts语法---泛型和泛型约束

泛型 泛型,动态类型,是一个初始化不明确的类型,类似于函数中的形参(不明确参数值), 泛型一般用在function定义函数时动态约束类型,和type定义类型时动态约束类型, 泛型一般使用任…

Jenkins教程-18-常用插件-description-setter

上一小节我们学习了Jenkin常用插件Environment Injector的使用方法,本小节我们讲解一下Jenkin常用插件description-setter的使用方法。 在某些情况下,用户可能希望根据构建过程中的某些关键信息来自定义构建的描述,比如部署的用户信息、提交…

​李白一生的过往轨迹矢量地图

今天我们来看一下“天子呼来不上船,自称臣是酒中仙”大诗人李白过往轨迹,看看他一生都去过哪些地方? 我们将李白一生去过的地方搜集整理了一份矢量地图,有需要请在文末查看该数据的领取方法。 李白一生的过往轨迹 李白&#xf…

stm32按键设置闹钟数进退位不正常?如何解决

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

JavaScript-日期对象

日期对象 作用:用来表示时间的对象 获取当前时间 const datenew Date();console.log(date);可以得到日期对象,里面的属性有星期,年月日,时分秒 获取指定时间 const datenew Date(2023-05-01);console.log(date); 获取时间戳 时间…

Deepspeed : AttributeError: ‘DummyOptim‘ object has no attribute ‘step‘

题意:尝试在一个名为 DummyOptim 的对象上调用 .step() 方法,但是这个对象并没有定义这个方法 问题背景: I want to use deepspeed for training LLMs along with Huggingface Trainer. But when I use deepspeed along with trainer I get …

实习记录3

1.Mybaits懒加载 MyBatis 延迟加载(懒加载)一篇入门-腾讯云开发者社区-腾讯云 (tencent.com) 2.高级映射 106-高级映射之多对一映射第一种方式_哔哩哔哩_bilibili 3.TableId(type IdType.INPUT) Mybatis-plus 主键生成策略_mybatis-plus 自增主键等于…