一个letsencrypt certbot auth/cleanup hook程序,用于通过DigitalOcean的DNS系统处理主机名所有权验证。

lets-do-dns的Python项目详细描述


此程序的目的是作为手动身份验证和 当您 希望在证书身份验证期间使用acme-dns身份验证 进程,同时使用DigitalOcean的dns基础结构 创建和删除acme-dns所需的dns txt记录。这个程序 还支持传递一个命令字符串,该字符串将在 身份验证过程的清理钩子阶段。

安装

安装这个程序很容易,因为它只有一个外部 依赖项,此程序在setup.py中包含此依赖项 文件。

也就是说,有4种方法可以安装此程序;

  • 第一种是通过正常方式,也就是说,pypi通过pip,因此:

    pip install lets-do-dns
    
  • 也可以从源的克隆安装此程序 存储库,因此(记住,如果您想修改源代码 在不重新安装的情况下,将-e标志传递给pip):

    pip install .
    
  • 您也可以使用Docker安装/运行此程序。你可以这么做 就像从Docker Hub抓取时一样:

    docker pull jitsusama/lets-do-dns
    
  • 最后,您可以从源的克隆构建映像 这样的存储库:

    docker build -t jitsusama/lets-do-dns .
    

用法

确保传递DO_APIKEYDO_DOMAIN环境 调用certbot时的变量。告诉certbot加载此程序 通过--manual-auth-hook--manual-cleanup-hookcli参数。

如果您还希望此程序在 清理钩子阶段,确保通过LETS_DO_POSTCMD certbot的环境变量,指定调用字符串 你的计划。

下面是一个示例,说明当 您通过pip安装了程序:

DO_APIKEY=super-secret-key \
DO_DOMAIN=mydomain.com \
LETS_DO_POSTCMD='echo ${CERTBOT_DOMAIN} > command_output.txt'\
certbot certonly --manual -d myhostname.mydomain.com \
    --preferred-challenges dns \
    --manual-auth-hook lets-do-dns \
    --manual-cleanup-hook lets-do-dns

下面是一个例子,说明当Docker 您已从Docker Hub中提取图像:

docker run -v "$(pwd)/my-cert-dir:/etc/letsencrypt"\
    -e "DO_APIKEY=super-secret-key"\
    -e "DO_DOMAIN=mydomain.com"\
    -e 'LETS_DO_POSTCMD="echo ${CERTBOT_DOMAIN} > /etc/letsencrypt/command_output.txt"'\
    jitsusama/lets-do-dns \
    certonly --manual -d myhostname.mydomain.com \
        --preferred-challenges dns \
        --manual-auth-hook lets-do-dns \
        --manual-cleanup-hook lets-do-dns

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
带Maven的Eclipse Java存储库:缺少工件:compile   java如何以编程方式停止RMI服务器并通知所有客户端   java Roboguice抛出ClassNotFoundException:AnnotationDatabaseImpl   java为什么lucene 4.0删除IndexWriter类的两个构造函数?   nls如何避免java项目上不需要的日志消息?   测试无法在Selenium Webdriver(java)中定位iframe   使用XML的java servlet   java如何使用jxl用****屏蔽单元格   java使用SQLite从数据库中选择“没有这样的列”   导入扫描程序后出现java编译错误   插入查询的java空指针异常   使用创建PostgreSQL数据库。Java应用中的sql脚本   java使用jsoup将HTML解析为格式化的明文