使用 acme.sh 申请和管理 免费SSL 证书:告别 certbot 的繁琐

使用 acme.sh 申请和管理 SSL 证书:告别 certbot 的繁琐

引言

  • 介绍 SSL 证书的重要性
  • 传统 certbot 的痛点(如 live 目录、复杂的配置)
  • acme.sh 的优势(轻量、灵活、自动化)

一、acme.sh 简介

  1. 什么是 acme.sh
  2. acme.sh 的主要特点
    • 支持多种 DNS 服务商
    • 自动化续期
    • 直接指定证书路径
    • 无需额外依赖

二、安装 acme.sh

  1. 基本安装

    curl https://get.acme.sh | sh -s email=your_email@example.com
    source ~/.bashrc
    
  2. 国内用户安装(解决网络问题)

    git clone https://gitee.com/neilpang/acme.sh.git
    cd acme.sh
    ./acme.sh --install -m your_email@example.com
    source ~/.bashrc
    

三、配置阿里云 DNS

  1. 获取阿里云 AccessKey
  2. 设置环境变量
    export Ali_Key="your_aliyun_access_key"
    export Ali_Secret="your_aliyun_access_secret"
    

四、申请 SSL 证书

  1. 创建证书存放目录

    mkdir -p /www/server/panel/vhost/cert/example.com
    
  2. 申请证书

    acme.sh --issue --dns dns_ali \
      -d example.com \
      -d *.example.com \
      --certpath /www/server/panel/vhost/cert/example.com/cert.pem \
      --keypath /www/server/panel/vhost/cert/example.com/privkey.pem \
      --fullchainpath /www/server/panel/vhost/cert/example.com/fullchain.pem
    

五、配置自动续期

  1. 安装证书并设置自动更新

    acme.sh --install-cert -d example.com \
      --certpath /www/server/panel/vhost/cert/example.com/cert.pem \
      --keypath /www/server/panel/vhost/cert/example.com/privkey.pem \
      --fullchainpath /www/server/panel/vhost/cert/example.com/fullchain.pem \
      --reloadcmd "systemctl reload nginx"
    
  2. 检查自动续期配置

    crontab -l
    

六、Nginx 配置示例nginx

server {
listen 443 ssl;
server_name example.com .example.com;
ssl_certificate /www/server/panel/vhost/cert/example.com/fullchain.pem;
ssl_certificate_key /www/server/panel/vhost/cert/example.com/privkey.pem;


七、常见问题解答

  1. 如何查看证书列表?

    acme.sh --list
    
  2. 如何查看证书信息?

    acme.sh --info -d example.com
    
  3. 如何手动续期证书?

    acme.sh --renew -d example.com
    
  4. 如何删除证书?

    acme.sh --remove -d example.com
    

八、总结

  • acme.sh 的便捷性和灵活性
  • 推荐使用 acme.sh 替代 certbot
  • 鼓励读者尝试并分享经验

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

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

相关文章

[Android]APP自启动

APP添加自启动权限&#xff0c;重启设备后自动打开APP。 1.AndroidManifest.xml <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.an…

Kubernetes 使用 Kube-Prometheus 构建指标监控 +飞书告警

1 介绍 Prometheus Operator 为 Kubernetes 提供了对 Prometheus 机器相关监控组件的本地部署和管理方案&#xff0c;该项目的目的是为了简化和自动化基于 Prometheus 的监控栈配置&#xff0c;主要包括以下几个功能&#xff1a; Kubernetes 自定义资源&#xff1a;使用 Kube…

清华大学第五弹:《DeepSeek与AI幻觉》

作者&#xff1a;清华大学新闻与传播学院新媒体研究中心、人工智能学院&#xff08;新媒沈阳团队&#xff09; 时间&#xff1a;2025年2月 完整版下载地址&#xff1a;夸克网盘分享 一、AI幻觉的定义与分类 定义 学术定义&#xff1a;模型生成与事实不符、逻辑断裂或脱离上下…

鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目

摘要&#xff1a;本文整理自鹰角大数据开发工程师&#xff0c;Apache Hudi Contributor 朱正军老师在 Flink Forward Asia 2024 生产实践&#xff08;二&#xff09;专场中的分享。主要分为以下四个部分&#xff1a; 一、鹰角数据平台架构 二、数据湖选型 三、湖仓一体建设 四、…

deepin 下安装nvm(npm+node)

1、切换root用户&#xff0c;并更新系统 sudo su sudo apt update && apt upgrade -y 期间所有提示选择yes即可 2、切换回自己用户 su - fchsoft 3、安装git sudo apt install git -y 4、安装wget sudo apt install wget -y 5、安装nvm 创建文件夹 mkdir -p…

【JavaEE进阶】MyBatis通过注解实现增删改查

目录 &#x1f343;前言 &#x1f340;打印日志 &#x1f334;传递参数 &#x1f38b;增(Insert) &#x1f6a9;返回主键 &#x1f384;删(Delete) &#x1f332;改(Update) &#x1f333;查(Select) &#x1f6a9;起别名 &#x1f6a9;结果映射 &#x1f6a9;开启驼…

三、数据治理应用开发整体架构

1.数据治理应用开发整体架构概览 该架构图描绘了一个全面的数据治理应用开发平台&#xff0c;旨在为用户提供从数据调研、治理构建、资产管理到应用开发、运维监控等全生命周期的一体化服务。整体架构呈现出模块化、松耦合的特点&#xff0c;并强调低代码开发和业务中台能力。 …

C#项目05-猜数字多线程

本项目利用多线程&#xff0c;通过点击按钮猜数字&#xff0c; 知识点 线程 基本概念 进程:一组资源&#xff0c;构成一个正在运行的程序&#xff0c;这些资源包括地址空间、文件句柄以及程序启动需要的其他东西的载体。 线程:体现一个程序的真实执行情况&#xff0c; 线…

XiaoMi Mi5(gemini) 刷入Ubuntu Touch 16.04——安卓手机刷入Linux

最近在研究个人用的小服务器&#xff0c;期间也搞了一台某讯的盒子&#xff0c;s905的芯片&#xff0c;28G&#xff0c;刷入了Armbian&#xff0c;在自己本地当linux服务器用用挺方便的&#xff0c;但总感觉性能不太够。 然后灵机一动&#xff0c;手上还有几台旧的安卓手机&am…

Spring Security+JWT+Redis实现项目级前后端分离认证授权

1. 整体概述 权限管理包括用户身份认证和授权两部分&#xff0c;简称认证授权。对于需要访问控制到资源&#xff0c;用户首先经过身份认证&#xff0c;认证通过后用户具有该资源的访问权限方可访问。 1.1 认证概述 认证是确认用户身份的过程&#xff0c;确保用户是谁。 1.1.1 …

【Linux】:应用层协议 HTTP (超文本传输协议)

&#x1f4c3;个人主页&#xff1a;island1314 &#x1f525;个人专栏&#xff1a;Linux—登神长阶 ⛺️ 欢迎关注&#xff1a;&#x1f44d;点赞 &#x1f442;&#x1f3fd;留言 &#x1f60d;收藏 &#x1f49e; &#x1f49e; &#x1f49e; 1. HTTP -- 概述 虽然我们说…

【ORB-SLAM3】鲁棒核函数的阈值设置

问题背景 阈值 δ \delta δ 是 Huber 鲁棒核函数的重要参数。首先给出结论&#xff0c;在ORB-SLAM系列中&#xff0c;该阈值选取的原则为&#xff1a; 单目情况下&#xff0c;根据95%置信水平下两自由度卡方检验的临界值&#xff0c; δ \delta δ 设置为 5.991 \sqrt{5.9…

零基础学QT、C++(六)制作桌面摄像头软件

目录 一、前言 二、Python项目包 三、C项目包 四、 项目说明 五、结语 章节汇总 一、前言 上一节&#xff0c;成功导入了OpenCV库 零基础学QT、C&#xff08;四&#xff09;QT程序打包-CSDN博客文章浏览阅读1.1k次&#xff0c;点赞29次&#xff0c;收藏23次。QT程序打包。将项…

银河麒麟系统安装mysql5.7【亲测可行】

一、安装环境 cpu&#xff1a;I5-10代&#xff1b; 主板&#xff1a;华硕&#xff1b; OS&#xff1a;银河麒麟V10&#xff08;SP1&#xff09;未激活 架构&#xff1a;Linux 5.10.0-9-generic x86_64 GNU/Linux mysql版本&#xff1a;mysql-5.7.34-linux-glibc2.12-x86_64.ta…

解耦的艺术_应用架构中的解耦

文章目录 Pre解耦的技术演化应用架构中的解耦小结 Pre 解耦的艺术_通过DPI依赖倒置实现解耦 解耦的艺术_通过中间层映射实现解耦 解耦的技术演化 技术的演化史&#xff0c;也是一部解耦的历史。从最初的面向对象编程&#xff08;OOP&#xff09;到Spring框架的依赖注入&…

Python采用DeepSeekR1本地部署+本地API接口实现简单对话

以下内容摘抄自 【Ai】— DeepSeek-r1 版本选择(超详细)https://blog.csdn.net/weixin_44205779/article/details/145479506 Ollama:零代码部署大模型,轻松玩转AIhttps://blog.csdn.net/scy799327210/article/details/145798396 大模型 ollama命令详解大全https://blog.…

记录 pycharm 无法识别提示导入已有的模块解决方案 No module named ‘xxx‘

在windows下&#xff0c;使用pycharm开发项目&#xff0c;每个项目都有自己独立的虚拟环境&#xff0c;有时候就会出现&#xff0c;在该项目中明明已经安装了某个模块&#xff0c;但是在写代码的时候就是导入不了&#xff0c;无法识别导入&#xff0c;在运行的时候却又是正常的…

uniapp 网络请求封装(uni.request 与 uView-Plus)

一、背景 在开发项目中&#xff0c;需要经常与后端服务器进行交互&#xff1b;为了提高开发效率和代码维护性&#xff0c;以及降低重复性代码&#xff0c;便对网络请求进行封装统一管理。 二、创建环境文件 2.1、根目录新建utils文件夹&#xff0c;utils文件夹内新建env.js文…

【OpenCV】入门教学

&#x1f3e0;大家好&#xff0c;我是Yui_&#x1f4ac; &#x1f351;如果文章知识点有错误的地方&#xff0c;请指正&#xff01;和大家一起学习&#xff0c;一起进步&#x1f440; &#x1f680;如有不懂&#xff0c;可以随时向我提问&#xff0c;我会全力讲解~ &#x1f52…

解决双系统开机显示gnu grub version 2.06 Minimal BASH Like Line Editing is Supported

找了好多教程都没有用&#xff0c;终于解决了&#xff01;&#xff01;我是因为ubuntu分区的时候出问题了 问题描述&#xff1a; 双系统装好&#xff0c;隔天开机找不到引导项&#xff0c;黑屏显示下列 因为我用的D盘划分出来的部分空闲空间&#xff0c;而不是全部&#xff0c…