Letsencrypt.org CA免费证书使用

Let's 支持多中客户端,这里使用acme.sh客户端配置免费证书。

acme.sh优点:

github官方地址

  • 纯用Shell(Unix外壳)语言编写的ACME协议客户端。
  • 完整的ACME协议实施。
  • 支持ACME v1和ACME v2
  • 支持ACME v2通配符证书
  • 简单,强大且非常易于使用。您只需要3分钟即可学习。
  • Bash,破折号和sh兼容。
  • 让我们加密免费证书客户端的最简单的shell脚本。
  • 完全用Shell编写,不依赖python或官方的Let's Encrypt客户端。
  • 只需一个脚本即可发布,续订和自动安装证书。
  • 不需要root/sudoer访问。
  • Docker友好
  • IPv6支持
  • 以进行续订或错误等Cron作业通知。

使用:

acme.sh安装:

1、 在线安装

curl https://get.acme.sh | sh
或者
wget -O - https://get.acme.sh | sh

2、git安装

git clone https://github.com/Neilpang/acme.sh.git
cd ./acme.sh
./acme.sh --install

程序将执行3个操作:

  1. 创建和复制acme.sh到你的主目录($HOME~/.acme.sh/。所有证书也将放置在此文件夹中。
  2. 为创建别名acme.sh=~/.acme.sh/acme.sh
  3. 如果需要,创建每日cron作业以检查并更新证书。

cron 示例:

$HOME 为用户目录,注意修改为自己的实际用户目录

0 0 * * * "$HOME/.acme.sh"/acme.sh --cron --home "$HOME/.acme.sh" > /dev/null

几种生成证书的情形:

  • 只需颁发证书

    acme.sh --issue -d example.com -w /home/wwwroot/example.com
    or: acme.sh --issue -d example.com -w /home/username/public_html
    or: acme.sh --issue -d example.com -w /var/www/html
  • 同证书下多个子域名

acme.sh --issue -d example.com -d www.example.com -d cp.example.com -w /home/wwwroot/example.com

-w 参数为web服务的根路径,必须要具备此文件的写权限

证书将被放置在 ~/.acme.sh/example.com/

证书将每60天自动更新一次。
  • 将证书安装到Apache / Nginx等。

Apache example:

acme.sh --install-cert -d example.com \
--cert-file /path/to/certfile/in/apache/cert.pem \
--key-file /path/to/keyfile/in/apache/key.pem \
--fullchain-file /path/to/fullchain/certfile/apache/fullchain.pem \
--reloadcmd "service apache2 force-reload"
Nginx example: acme.sh --install-cert -d example.com \
--key-file /path/to/keyfile/in/nginx/key.pem \
--fullchain-file /path/to/fullchain/nginx/cert.pem \
--reloadcmd "service nginx force-reload"
  • 使用apache 模式

    如果您正在运行Web服务器(Apache或Nginx),建议使用Webroot mode。
    acme.sh --issue --apache -d example.com -d www.example.com -d cp.example.com 此模式不会讲任何文件些人web根文件夹,第二个参数指定使用apache 模式,将强制使用apache插件。
    此apache模式仅用于颁发证书,不会更改您的apache配置文件。您将需要配置您的网站配置文件以自己使用证书。我们不会乱您的apache服务器,不用担心。

    [更多示例](https : //github.com/Neilpang/acme.sh/wiki/How-to-issue-a-cert)

  • 使用Nginx模式

    同apache 模式一样,如果正在使用web服务器nginx,推荐使用这种方式,只需将第二参数指定为nginx 即可
    acme.sh --issue --nginx -d example.com -d www.example.com -d cp.example.com

    注意事项:指定插件方式,注意将nginx,apacha的命令配置到了环境变量路径下,可以直接使用nginx,httpd执行命令

  • 发行通配符证书

acme.sh --issue -d example.com -d ' * .example.com '--   dns dns_cf
  • 续订证书

    默认所有证书将每60天自动更新换一次,但是也可以强行更新:
    acme.sh --renew -d example.com --force
  • 如何停止证书续订

acme.sh --remove -d example.com [--ecc]
  • 如何升级acme.sh

acme.sh正在不断开发中,因此强烈建议使用最新代码。

您可以将acme.sh更新为最新代码:
acme.sh --upgrade 您还可以启用自动升级:
acme.sh --upgrade --auto-upgrade 然后acme.sh将自动保持最新。 禁用自动升级: acme.sh --upgrade --auto-upgrade 0

Letsencrypt.org CA免费证书生成的更多相关文章

  1. 生成CA免费证书

    环境 OpenSSL 1.0.2k FireFox 60.0 64位 Chrome 66.0.3359.181 (正式版本)(32位) Internet Explorer 11.2248.14393. ...

  2. 生成自签名CA+SSL证书

    1.创建CA证书配置CA.cnf文件 [ req ] distinguished_name = req_distinguished_name x509_extensions = root_ca [ r ...

  3. nginx配置https双向验证(ca机构证书+自签证书)

    nginx配置https双向验证 服务端验证(ca机构证书) 客户端验证(服务器自签证书) 本文用的阿里云签发的免费证书实验,下载nginx安装ssl,文件夹有两个文件 这两个文件用于做服务器http ...

  4. OpenSSL - 利用OpenSSL自签证书和CA颁发证书

    秘钥操作 这个命令会生成一个1024/2048位的密钥,包含私钥和公钥. openssl genrsa -out private.key 1024/2038                     ( ...

  5. 基于Let's Encrypt生成免费证书-支持多域名泛域名证书

    目录 客户端 certbot acme.sh 安装acme.sh 1. 自动安装 2. 手动安装 3. 测试收否安装成功 使用acme.sh生成证书 1. HTTP 方式 2. DNS 方式 1. 生 ...

  6. 免费CA数字证书的申请、安装、导入、导出

    http://wenku.baidu.com/link?url=oDUw50eCE5zX8tmg4N3-ddYGLt1U5aJYGEN7rk_z7t6LuMHL3M4oBstYBI_dQ1UnCtcK ...

  7. 使用openssl 生成免费证书

    阅读目录 一:什么是openssl? 它的作用是?应用场景是什么? 二:使用openssl生成免费证书 回到顶部 一:什么是openssl? 它的作用是?应用场景是什么? 即百度百科说:openssl ...

  8. openssl 生成免费证书

    原文链接:https://www.cnblogs.com/tugenhua0707/p/10927722.html 一:什么是openssl? 它的作用是?应用场景是什么? 即百度百科说:openss ...

  9. tls/ssl证书生成和格式转换

    生成密钥:openssl genrsa -out my.key 2048 生成csr申请文件:openssl req -sha256 -new -key my.key -out my.csr 生成自签 ...

随机推荐

  1. haproxy 配置文件详解 之 综述

    HAProxy 配置文件根据功能和用途,主要有5 个部分组成,但有些部分并不是必须的,可以根据需要选择相应的部分进行配置. 1.global 部分 用来设定全局配置参数,属于进程级的配置,通常和操作系 ...

  2. Error in readRDS(dest) : error reading from connection

    Error in readRDS(dest) : error reading from connection 解决办法:可能是镜像设置错误,导致无法抓取文件 修改 RStudio 中的镜像地址 设置成 ...

  3. Java 集合系列之四:Queue基本操作

    1. Java Queue 1. Java Queue 重要观点 Java Queue接口是Java Collections Framework的成员. Queue 实现通常不允许插入 null 元素 ...

  4. 【Gamma】Scrum Meeting 9

    目录 写在前面 进度情况 任务进度表 燃尽图 照片 写在前面 例会时间:6.7 22:30-23.00 例会地点:微信群语音通话 代码进度记录github在这里 进度情况 任务进度表 注:点击链接跳转 ...

  5. github下载速度慢甚至多次失败,通过码云的导入功能导入github项目到码云上,然后再从码云下载

    github下载速度慢甚至多次失败,通过码云的导入功能导入github项目到码云上,然后再从码云下载 参考 https://blog.csdn.net/kcx64/article/details/83 ...

  6. Maven设置MAVEN_OPTS环境变量

    原文地址:https://blog.csdn.net/porsche_gt3rs/article/details/78787491 一 原因: 运行mvn命令实际是执行java命令,既然是运行java ...

  7. STM32Cube基础工程配置

    开发板:正点原子STM32F4探索者 (2019-08-10 22:04:39) 开发环境:MDK5.28.0.0 + STM32CubeMX5.3.0 + STM32CubeF4 V1.24.0 内 ...

  8. SQL系列(四)—— 唯一值(distinct)

    有时需要查询某列上的不重复的数据,如: SELECT name FROM student; 结果: name lxy lxy lxy lxy 这样的结果显然不符合我们的需求.如何对列数据进行去重,查询 ...

  9. 关于暗网需要关闭JS的处理

    最近电视剧导致暗网热度很大,执法力度也大了很多,大部分暗网聚集地都不允许开JS权限访问(原因大家都懂,防止钓鱼执法)​ 因为是英文版而且是火狐,所以简单记录下,以防小白蛋疼 再打开就可以了 Tor协议 ...

  10. spring Boot 学习(七、Spring Boot与开发热部署)

    一.热部署在开发中我们修改一个Java文件后想看到效果不得不重启应用,这导致大量时间 花费,我们希望不重启应用的情况下,程序可以自动部署(热部署).有以下四 种情况,如何能实现热部署.•1.模板引擎 ...