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. 分布式事务解决方案(一) 2阶段提交 & 3阶段提交 & TCC

    参考文档:http://blog.jobbole.com/95632/https://yq.aliyun.com/articles/582282?spm=a2c4e.11163080.searchbl ...

  2. Java查询MySQL数据库指定数据库中所有表名、字段名、字段类型、字段长度、字段描述

    1,查询方法 public static List<Map<String, String>> getColumnInfoByTableName(String databaseN ...

  3. sklearn保存模型的两种方式

    sklearn 中模型保存的两种方法   一. sklearn中提供了高效的模型持久化模块joblib,将模型保存至硬盘. from sklearn.externals import joblib # ...

  4. xilinx SDK开发 GPIO使用API总结

    t_v GPIO常用函数 1.XGpio_Config *XGpio_LookupConfig(u16 DeviceId) 功能:根据输入设备ID查找该设备. 输入:设备ID. 输出:若找到该设备ID ...

  5. .NET配置引用程序集的路径(分离exe和dll)

    按照引用程序集路径的不同,程序集DLL分为两类: 1)全局DLL(在GAC中注册,GAC——全局程序集缓存),有关GAC的详细资料可以参考一下链接: http://dddspace.com/2011/ ...

  6. sqlcode与sqlerrm的区别

    sqlCode:是数据库操作的返回码,其中0--成功:-1--失败:100--没有检索到数据. sqlerrm:是数返回指定错误代码的错误信息. 在一个内在的异常中,SQLCODE返回Oracle错误 ...

  7. 第五节:管道中间件入门(Use、Run、Map)

    一. 简介 1.中间件是一种装配到应用管道以处理请求和响应的组件,每个组件可以选择是否把请求传递到管道中的下一个组件.可在管道中的下一个组件的前后执行工作.请求管道中的每一个组件负责调用管道中的下一个 ...

  8. Qt 文件选项对话框弹出两次

    1 问题 ​ 在Qt 5.12.0 版本中,用 QFileDialog 类来做文件选择时候,发现当弹出对话框后,选择完文件后,又弹出文件选择对话框. 2 原因查找 2.1 代码 QFileDialog ...

  9. apache添加ssl协议实现用户认证

    目标 1对服务器的访问由http改为https, 2仅有证书的客户端可以访问服务器, 3.通过服务器端的配置,可以停用某个客户端的证书. 一 Apache服务器相关配置: 在../apache/con ...

  10. (10)ASP.NET Core 中的环境(Environments:dev, stage, prod)

    1.环境变量配置 ASP.NET Core在应用程序启动时读取环境变量(Properties\launchSettings.json)ASPNETCORE_ENVIRONMENT,并将该值存储在IHo ...