8 Star 19 Fork 3

Angus.Fenying / le-alidns

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

LE-AliDNS

DEPRECATED: Please use acme.sh instead.

通过阿里云 DNS 为 Let's Encrypt 签发证书提供验证的脚本工具。

功能

  • 支持签发多域名证书

  • 支持签发 ACMEv2 的通配符证书(配置开启 acme-version=v2

    如果此前使用了 ACMEv1 签发的证书,那么建议在升级前将 /etc/letsencrypt 目录备份 例如改个名。

  • 支持刷新证书

使用条件

  1. 一台能运行 Certbot 的 Linux/Mac 设备
  2. 安装有 Python 2.7.x (需自行手动安装)
  3. 安装有 Certbot (需自行手动安装)
  4. 要签发(续签)的所有证书,域名都是通过阿里云 DNS 管理的。

使用方式

安装

使用 Git Clone 仓库,例如:

LE_ALIDNS_INSTALL_ROOT=/usr/local
LE_ALIDNS_DIRNAME=le-alidns
LE_ALIDNS_ROOT="${LE_ALIDNS_INSTALL_ROOT}/${LE_ALIDNS_DIRNAME}"
cd $LE_ALIDNS_INSTALL_ROOT
git clone https://github.com/fenying/le-alidns.git $LE_ALIDNS_DIRNAME
cd $LE_ALIDNS_ROOT
find '.' -name '*.sh' -exec chmod 0700 {} \; # 设置 Shell 脚本执行权限
git config --local core.filemode false # 忽略该git仓库的文件权限属性改动

更新版本

LE_ALIDNS_INSTALL_ROOT=/usr/local
LE_ALIDNS_DIRNAME=le-alidns
LE_ALIDNS_ROOT="${LE_ALIDNS_INSTALL_ROOT}/${LE_ALIDNS_DIRNAME}"
cd $LE_ALIDNS_ROOT
git config --local core.filemode false
git pull
find '.' -name '*.sh' -exec chmod 0700 {} \; # 设置 Shell 脚本执行权限

初始化

依赖如下组件: (可以通过 initialize-env.sh 自动安装)

  • Pip
  • Aliyun CLI 命令行工具
  • Aliyun AliDNS Python SDK
  1. 运行脚本 initialize-env.sh 安装 Python 2.7, PIP, Aliyun-CLI, Aliyun-SDK-AliDNS 等组件,并配置 Access-Key 和 Secret-Key。

    Access-Key 需要 AliyunDNSFullAccess 权限。参考: 配置命令行工具和 SDK

  2. 复制 default.conf 配置文件为 /etc/le-alidns.conf,并根据需要配置。

配置 Pip 源

由于某些不可描述的原因,对于在国内使用 Pip 会出现无法下载或者下载极其缓慢的情况。 这个情况请修改 Pip 配置文件(一般是 ~/.pip/pip.conf),使用清华大学的源:

不要使用阿里云的源。

[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple

[install]
trusted-host=pypi.tuna.tsinghua.edu.cn

参考:https://github.com/certbot/certbot/issues/2516

签发新证书

执行 sudo /path/to/sign-all.sh 即可为 domains 里配置的所有域名都签发证书。

续签证书

执行 sudo /path/to/renew-all.sh 可以续签所有已经签发的证书(包括手动签发的)。

执行前使用 export LEALIDNS_FORCE=1 可以强制续签证书,但是一般情况请不要使用。

作者

Angus.Fenying <i.am.x.fenying@gmail.com>

License

本项目基于 MIT 协议开源,可自由使用,如果使用过程中发生任何意外,本人 不承担任何责任。

The MIT License (MIT) Copyright (c) 2017 Angus.Fenying Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

通过阿里云 DNS 为 Let's Encrypt 签发 SSL 证书提供验证的脚本工具。 展开 收起
Shell
MIT
取消

发行版 (4)

全部

贡献者

全部

近期动态

加载更多
不能加载更多了
Shell
1
https://gitee.com/fenying/le-alidns.git
git@gitee.com:fenying/le-alidns.git
fenying
le-alidns
le-alidns
master

搜索帮助