首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

acme+cloudflare生成免费证书(自动续期)

编程知识
2024年09月23日 10:50

acme DNSapi

acme DNSapi的作用是在申请证书时使用dns交易,acme可以通过dnsapi在对应的dns管理平台提交对应的dns记录。玩过证书的朋友都知道,证书申请时有三种验证方式

  • 邮箱验证:需要邮箱与域名绑定(细节要求我没试过)
  • 文件验证:文件验证时证书管理方会要求你在服务器的指定路径上方一个指定文件(内容也是他们定),然后开发80端口,他们会去下载这个文件从而验证你的身份。申请域名时你需要去你的服务器上操作,还有开放指定端口
  • DNS验证:DNS验证只需要你在dns记录上添加一条TXT记录就可以

我们这里用到的就是DNS验证,DNS验证虽然方便,但是每次申请都需要添加一条DNS记录(申请完成后可以删除,acme好像自动帮忙删除了),如果要实现自动化,acme需要有权限向dns记录方提交记录。

acme dns api doce

cloudflare DNSapi

根据上面的文档可以看到cloudflare dns api 有两种方式获取

  • 生成cloudflare的全局token(全局token拥有cloudflare的所有权限,大部分是acme用不到的)
  • 生成cloudflare的DNS权限token(推荐,够acme用的了)

生成cloudflare的DNS权限token

先来cloudflare的Api申请页面

image-20240923085901516

点击这里的创建令牌

选择编辑区域DNS 这个模板(一般来说是第一个)

image-20240923085941855

安装下面的内容填写

image-20240923090119372

权限选 区域 -> DNS -> 编辑

区域资源 包括 -> 特定区域 -> 在下拉列表里选你的域名(你也可以在第二个框里面选择所有区域

剩下都不变,点继续,跳转到这个页面

image-20240923090358443

点击生成令牌,就会产生一个令牌,令牌生成后第一时间记录下来,这个令牌只显示一次,刷新页面后就看不到了

获取cloudflare的用户信息

点到cloudflare中对应的网页管理页面,在api的地方可以看到两个api key

image-20240923090719587

现在我们有三个信息

  • 上面生成的一个管理DNS的TOKEN
  • 这里的区域ID
  • 这里的账户ID

在对应服务器上生成证书

设置环境变量

export CF_Token="填DNS token" 
export CF_Zone_ID="填区域ID" 
export CF_Account_ID="填账户ID" 

安装acme

 apt update -y          #更新系统
 
 apt install -y curl    #安装curl
 
 apt install -y socat    #安装socat
 
 curl https://get.acme.sh | sh

生成证书

acme.sh --issue --dns dns_cf -d test.fun -d "*.test.fun"

如果说找不到acme.sh,可以使用下面的命令

~/.acme.sh/acme.sh --issue --dns dns_cf -d test.fun -d "*.test.fun"

等他跑码跑完会告诉你证书的位置

image-20240923092443069

关键是上面两行your cert your cert key

上面生成的证书是 *.test.fun 的证书,所有的以test.fun结尾的域名都可以用这个证书

推荐使用: 因为acme正常2个月会自动更新一下证书,所以我不推荐你把证书移动到别的位置,因为acme下次生成的时候还会放在这个位置,要么你指定acme的证书生成路径,可以用acme.sh --help 查看怎么指定路径。我使用的方法是(有两个)

  • 直接使用这个路径

  • 通过软连接把证书链接过去

    比如我要把证书放在/etc/nginx/ssl 里面 分别命名为cert.crt priv.key我可以这样做

    cd /etc/naginx/ssl
    ln -s /home/ivhu/.acme.sh/证书路径.cer  cert.crt
    ln -s /home/ivhu/acme.sh/证书私钥.key priv.key
    

证书生成后一般会新建一个cron 的定时认为用来维护证书保证期

可以通过 crontab -e命令查看,我的结果是这样的:

image-20240923091717497

意思是每天凌晨3:28会检查一下证书

如果你的证书是给nginx用的可以在root下运行crontab -e 编辑root的cron自动化命令

添加如下:

0 4 * * * systemctl reload nginx

表示每天4:00 重启nginx ,因为nginx的证书需要重启之后才能重载

From:https://www.cnblogs.com/blogforeverything/p/18426804
本文地址: http://www.shuzixingkong.net/article/2227
0评论
提交 加载更多评论
其他文章 ScanFormer:逐层抵达目标,基于特征金字塔的指代表达理解框架 | CVPR'24
指代表达理解(REC)旨在在图像中定位由自由形式自然语言描述指定的目标对象。尽管最先进的方法取得了令人印象深刻的性能,但它们对图像进行了密集感知,包含与语言查询无关的多余视觉区域,导致额外的计算开销。这启发论文探讨一个问题:能否消除与语言无关的多余视觉区域,以提高模型的效率?现有的相关方法主要侧重于
ScanFormer:逐层抵达目标,基于特征金字塔的指代表达理解框架 | CVPR'24 ScanFormer:逐层抵达目标,基于特征金字塔的指代表达理解框架 | CVPR'24 ScanFormer:逐层抵达目标,基于特征金字塔的指代表达理解框架 | CVPR'24
2024 年 C# 高效开发:精选实用类库
前言 在平时开发中,好的类库能帮助我们快速实现功能,C#有很多封装好的类库。 本文将介绍一些2024年特别受欢迎的C#类库,并分析各自的优点让我们编程写代码变的更轻松、更快捷。 快来看一看有没有大家常用的类库,欢迎各位小伙伴留言补充。 1、Entity Framework Core Entity F
2024 年 C# 高效开发:精选实用类库
idea运行java项目main方法报build failure错误的解决方法
本文简要介绍了当在使用 IntelliJ IDEA 运行 Java 项目的 main 方法时遇到 'Build Failure' 错误,这通常意味着在项目的构建过程中遇到了问题。解决这类问题通常需要系统地检查和调整项目设置、代码、依赖项等多个方面。
GZY.Quartz.MUI(基于Quartz的UI可视化操作组件) 2.7.0发布 新增各项优化与BUG修复
前言 时隔大半年,终于抽出空来可以更新这个组件了 (边缘化了,大概要被裁员了) 2.7.0终于发布了~ 更新内容: 1.添加API类任务的超时时间,可以通过全局配置也可以单个任务设置 2.设置定时任务日志查看默认按开始时间倒序 3.添加是否显示控制台日志的全局配置 目前支持两个参数 Sho
GZY.Quartz.MUI(基于Quartz的UI可视化操作组件) 2.7.0发布 新增各项优化与BUG修复 GZY.Quartz.MUI(基于Quartz的UI可视化操作组件) 2.7.0发布 新增各项优化与BUG修复 GZY.Quartz.MUI(基于Quartz的UI可视化操作组件) 2.7.0发布 新增各项优化与BUG修复
用C#写个PDF批量合并工具简化日常工作
一. 前言 由于项目需要编写大量的材料,以及各种签字表格、文书等,最后以PDF作为材料交付的文档格式,过程文档时有变化或补充,故此处理PDF文档已经成为日常工作的一部分。 网上有各种PDF处理工具,总是感觉用得不跟手。最后回顾自己的需求总结为以下几项: 1.可以便捷、快速的对多份PDF进行合并。 2
用C#写个PDF批量合并工具简化日常工作
2024 IDEA开发者部署lilishop的manager模块(详尽版)
一、环境整合 构建工具(参考工具部署方式) 软件名称 版本 相关文章推荐 Git 13.5.0 https://www.cnblogs.com/liuyangfirst/p/15996063.html NodeJS 16.0.0 https://www.cnblogs.com/liuyangfirs
2024  IDEA开发者部署lilishop的manager模块(详尽版) 2024  IDEA开发者部署lilishop的manager模块(详尽版) 2024  IDEA开发者部署lilishop的manager模块(详尽版)
从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用
说明 该文章是属于OverallAuth2.0系列文章,每周更新一篇该系列文章(从0到1完成系统开发)。 该系统文章,我会尽量说的非常详细,做到不管新手、老手都能看懂。 说明:OverallAuth2.0 是一个简单、易懂、功能强大的权限+可视化流程管理系统。 结合上一篇文章使用,味道更佳:从0到1
从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用 从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用 从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用
Nuxt Kit 使用日志记录工具
title: Nuxt Kit 使用日志记录工具 date: 2024/9/23 updated: 2024/9/23 author: cmdragon excerpt: 摘要:本文介绍在Nuxt 3框架的Nuxt Kit中使用日志记录工具的方法,重点讲解useLogger函数的应用,通过创建示例项
Nuxt Kit 使用日志记录工具 Nuxt Kit 使用日志记录工具