powershell传教士原创 2020-04-12

Let’s Encrypt证书有效期3个月,支持泛域名【*.你的网站.net】。支持n天内(一般10天内就够用了),用脚本自动续期。

简介:

这个模块支持acmev2的api,这个模块支持跨平台运行,支持linux下使用。
这个模块,可以通过http,设置下级域名(dns)来认证域名。不支持通过在httpd下存放特殊文件,来验证域名。
dns插件支持:azure,aliyun,dnspod,aws,windns,bind等

dns插件支持列表:
https://github.com/rmbolger/Posh-ACME/wiki/List-of-Supported-DNS-Providers

官网:


https://github.com/rmbolger/Posh-ACME

powershell画廊网址:
https://www.powershellgallery.com/packages/Posh-ACME

win,linux下,用管理员安装:

Install-Module -Name Posh-ACME


用管理员权限,开启powershell执行权限:(linux跳过此步骤)
Set-ExecutionPolicy RemoteSigned -Force

指定从Let’s Encrypt非生产服务器获取证书,并接受协议:

Set-PAServer LE_STAGE #设定测试服务器,可以无限次数获取证书玩。

指定从Let’s Encrypt生产服务器获取证书,并接受协议:

Set-PAServer LE_PROD #设定生产服务器,限制速率。

创建Let’s Encrypt账户:

New-PAAccount -AcceptTOS ` #接受协议,并创建账户,只需要运行一次
 -Contact 'me@example.com'  #你的网站管理邮箱

 

通过dns和应答txt,来获取Let’s Encrypt证书:

New-PACertificate '*.example.com','example.com' ` #要授权的域名
 -DnsPlugin Flurbog `#dns插件名字
  -PluginArgs @{FBServer='fb.example.com'; FBCred=(Get-Credential)}

 
dns插件支持列表:
https://github.com/rmbolger/Posh-ACME/wiki/List-of-Supported-DNS-Providers

#原理:它通过某个dns插件来工作。支持阿里,腾讯,dnspod等。
#通过dns插件,得到dns管理权限,通过命令,去dns上设置个【uuid类似】的特殊子域名,来证明你拥有域名的管理权限。
#所以这里,需要输入你的dns管理员,账户和密码。

得到的证书,的存储路径:

Windows:
%LOCALAPPDATA%\Posh-ACME

 
linux:
~/.config/Posh-ACME
证书文件说明:
cert.cer(Base64编码的PEM证书)
cert.key(Base64编码的PEM私钥)
cert.pfx(带有证书+密钥的PKCS12容器)
chain.cer(带有颁发CA证书链的Base64编码的PEM)
fullchain.cer(带有cert + chain的Base64编码的PEM)
fullchain.pfx(带有证书+密钥+链的PKCS12容器)
 

输出,得到的证书,详细信息:

Get-PACertificate | Format-List

 

续订证书:

Submit-Renewal

 
 
 

centos先更新根证书:

yum install ca-certificates
update-ca-trust

 

最简单的,在win,linux中,用powershell,自动获取Let's Encrypt证书方法的更多相关文章

  1. Linux中的定时自动执行功能(at,crontab)

    Linux中的定时自动执行功能(at,crontab) 概念 在Linux系统中,提供了两种提前对工作进行安排的方式 at 只执行一次 crontab 周期性重复执行 通过对这两个工具的应用可以让我们 ...

  2. [转载] 在Linux中,开机自动运行普通用户的脚本程序

    FROM:http://blog.csdn.net/sinboy/article/details/2466225 FROM:http://www.2cto.com/os/201006/50680.ht ...

  3. linux中的文件类型以及查看文件类型的方法

    Linux文件类型和文件的文件名所代表的意义是两个不同的概念,在linux中文件类型与文件扩展名没有关系.它不像Windows那样是依靠文件后缀名来区分文件类型的,在linux中文件名只是为了方便操作 ...

  4. Linux中syntax error near unexpected token 错误提示解决方法

    Linux中syntax error near unexpected token ... 错误提示有一般有两种原因: 1)window和Linux下换行符不一致导致 window下的换行和Linux下 ...

  5. Linux中执行脚本参数获取

    Linux中变量$[#,@,0,1,2,*,$,?]含义 $# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 $ ...

  6. 在Linux中安装和配置OpenVPN Server的最简便方法!

    本文介绍了如何在基于RPM和DEB的系统中安装和配置OpenVPN服务器.我们在本文中将使用一个名为openvpn-install的脚本,它使整个OpenVPN服务器的安装和配置过程实现了自动化.该脚 ...

  7. linux ip地址自动获取,ip地址…

    linux ip地址自动获取,ip地址手动设置(图文解释) 2011-04-19 16:19:31| 分类: 服务器(appache/n | 标签: |字号大中小 订阅 linux ip地址自动获取( ...

  8. linux中时间精度的获取问题【转】

    转自:http://www.xuebuyuan.com/877633.html 目前项目需要,需要对时间进行基准,基准的精度在微秒.下午老刘给我说不能用do_gettimeofday因为他的精度虽然可 ...

  9. Linux 中执行Shell 脚本的方式(三种方法)

    Shell 脚本的执行方式通常有如下三种: (1)bash script-name 或者 sh script-name:(2)path/script-name或者./script-name:(3)so ...

随机推荐

  1. Codeforces Round #628 (Div. 2) D. Ehab the Xorcist(异或,思维题)

    题意: 寻找异或后值为 u,相加后和为 v 的最短数组. 思路: 异或得 u ,则 v 至少应大于等于 u ,且多出来的部分可以等分为两份相消. 即初始数组为 u , (v-u)/2 , (v-u)/ ...

  2. 关于贪心算法的经典问题(算法效率 or 动态规划)

    如题,贪心算法隶属于提高算法效率的方法,也常与动态规划的思路相挂钩或一同出现.下面介绍几个经典贪心问题.(参考自刘汝佳著<算法竞赛入门经典>).P.S.下文皆是我一个字一个字敲出来的,绝对 ...

  3. Codeforces Round #649 (Div. 2) B. Most socially-distanced subsequence (数学,差分)

    题意:有一长度为\(n\)的数组,求一子序列,要求子序列中两两差的绝对值最大,并且子序列尽可能短. 题解:将数组看成坐标轴上的点,其实就是求每个单调区间的端点,用差分数组来判断单调性. 代码: #in ...

  4. 国产网络测试仪MiniSMB - 如何3秒内创建出16,000条IP递增流

    国产网络测试仪MiniSMB(www.minismb.com)是复刻smartbits的IP网络性能测试工具,是一款专门用于测试智能路由器,网络交换机的性能和稳定性的软硬件相结合的工具.可以通过此以太 ...

  5. Chapter Zero 0.2.1 执行运算与判断的CPU

    目录 执行运算与判断的CPU CPU效能比较的指标 CPU的工作频率:外频与倍频 32位与64位的CPU与总线[宽度] CPU的等级 超线程(Hyper-Threading,HT) 网上摘下几张主板图 ...

  6. Leetcode(53)-最大子序和

    给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 ...

  7. 实现 MyBatis 流式查询的方法

    基本概念流式查询指的是查询成功后不是返回一个集合而是返回一个迭代器,应用每次从迭代器取一条查询结果.流式查询的好处是能够降低内存使用.如果没有流式查询,我们想要从数据库取 1000 万条记录而又没有足 ...

  8. 字节跳动-前端面试题 Multi Promise Order

    字节跳动-前端面试题 Multi Promise Order Promise Order Async/Await async function async1 () { console.log('asy ...

  9. classnames & React & taro

    classnames & React & taro classnames https://www.npmjs.com/package/classnames demo https://g ...

  10. React LifeCycle Methods & re-learning 2019

    React LifeCycle Methods & re-learning 2019 v16.9.0 https://reactjs.org/docs/react-component.html ...