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. UVA 10480 Sabotage (最大流最小割)

    题目链接:点击打开链接 题意:把一个图分成两部分,要把点1和点2分开.隔断每条边都有一个花费,求最小花费的情况下,应该切断那些边. 这题很明显是最小割,也就是最大流.把1当成源点,2当成汇点. 问题是 ...

  2. poj3260 The Fewest Coins

    Description Farmer John has gone to town to buy some farm supplies. Being a very efficient man, he a ...

  3. Codeforces Round #647 (Div. 2) - Thanks, Algo Muse! D. Johnny and Contribution (贪心,模拟)

    题意:有\(n\)个点,\(m\)条边,现在要给这些点赋值,,每次只能赋给某一点的四周(所连边)的最小没出现过的值.如果不能按照所给的数赋值,输出\(-1\),否则输出赋值顺序. 题解:我们用\(pa ...

  4. Linux网络文件下载

    wget 以网络下载 maven 包为例 wget -c http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-ma ...

  5. Nginx 服务介绍

    目录 静态 / 动态 Web 服务 Nginx 简介 Nginx 的优点 Nginx 和 Apache 的比较 Nginx 的安装 Nginx 相关文件 Nginx 主配置文件 Nginx 虚拟主机配 ...

  6. cdn jsdelivr + github releases 以wordpress sakura主题manifest为例

    1 创建github repository 在本地创建文件,这里为文件夹 /manifest 在github创建库wordpresscdn,上传 /manifest到库中 2 github relea ...

  7. C++ 指针 new delete int*与string

    一 指针 string和int 都可以认为是四个字节sizeof(string)==4, string是个类,它的空间在堆动态分配 二.delete 只是释放空间 三.new 数组 int size= ...

  8. 内存耗尽后Redis会发生什么

    前言 作为一台服务器来说,内存并不是无限的,所以总会存在内存耗尽的情况,那么当 Redis 服务器的内存耗尽后,如果继续执行请求命令,Redis 会如何处理呢? 内存回收 使用Redis 服务时,很多 ...

  9. Battery API All In One

    Battery API All In One https://caniuse.com/?search=Battery navigator.getBattery() /* Promise {<pe ...

  10. 使用 js 实现十大排序算法: 选择排序

    使用 js 实现十大排序算法: 选择排序 选择排序 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!