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. zookeeper shell

    1.启动zk客户端 ./zkCli.sh -server 192.168.67.35:2182,192.168.67.36:2182,192.168.67.37:2182   2.创建zk节点 cre ...

  2. [技术博客]升级 API 面临的问题

    升级 API 面临的问题 我们使用的上一届的版本中,使用的底层的 安卓的 API 是 Android7.0 .在这一版本中,我们将 API进行了升级,为了更好的兼容新功能.(发送通知),我们在升级 A ...

  3. express框架,使用 static 访问 public 内静态文件

    使用 express 生成 node 服务器后,我们需要访问放在public文件夹内的静态文件,如上传的图片 我们需要在app.js中添加配置项: app.use('/public',express. ...

  4. .net core中使用efcore

    官网:https://docs.microsoft.com/zh-cn/aspnet/core/data/ef-mvc/intro?view=aspnetcore-2.2#register-the-s ...

  5. c++11 enum class用法

    使用过的一个enum class的用法:enum class EModel : int    {        Model1, Model2, Model3, Other = 4,    }; EMo ...

  6. SQL Server -----创建sqlserver 数据库 、表

    新建数据库 1.右击  选择新建数据库 2.起一个名字   选择保存位置 3.放在之前建好的的文件夹中 点击确定 4.都要选择好 点击确定 5.确定之后如图 6.新建表 7.见一个表,常说的要满足三大 ...

  7. Java核心技术-读书笔记

    基本语法 Java中的所有函数都属于某个类的方法 Java没有任何无符号的int.long.short 或 byte 类型 浮点数值不适用于无法接受舍入误差的金融计算中,比如2.0-1.1不会输出想要 ...

  8. Spring Cloud config之三:config-server因为server端和client端的健康检查导致服务超时阻塞问题

    springcloud线上一个问题,当config-server连不上git时,微服务集群慢慢的都挂掉. 在入口层增加了日志跟踪问题: org.springframework.cloud.config ...

  9. sqlserver获得数据库非聚集索引的代码

    创建Index DECLARE @zindex_sql NVARCHAR(max); SET @zindex_sql = N''; SELECT @zindex_sql = @zindex_sql + ...

  10. Java面试宝典(2020版)

    一.Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境. JRE:Java ...