basic-authentication - Yaws 基本身份验证 letencrypt
问题描述
我有一个处于隐身模式的域,受基本身份验证保护。Letsencrypt 不支持基本身份验证,并且可能永远不会支持(https://github.com/certbot/certbot/issues/1744#issuecomment-162038303)。
从 Nginx 迁移到 Yaws 后,安排下一次 Letsencrypt 续订。所以这里有一个问题。我可以在 Yaws 中禁用基本身份验证,进行更新然后再次启用,但这不是真正的解决方案。
Apache 和 Nginx 有一些简单的解决方法,即为目录定义基本身份验证的例外/.well-known/acme-challenge
。
如何在 Yaws 中做到这一点?我的域的基本身份验证定义yaws.conf
现在是
<auth>
realm = "some realm"
user = "some_user:some_pw"
</auth>
在此上下文中,我发现的关于 Yaws 的唯一参考来自 2010 年,指的是 Yaws 1.81 ( https://uu.diva-portal.org/smash/get/diva2:344199/FULLTEXT01.pdf )。Letsencrypt 于 2015 年开始。我使用 Yaws 2.0.9。
似乎有一个带有 shell 变量的 FreeDNS 解决方案(https://gist.github.com/ammgws/381b4d9104c4e2b43b9210f33f03a15a)。https://github.com/acmesh-official/acme.sh/blob/master/dnsapi/提供了类似的技巧,但我不知道如何使用这种方法。
解决方案
对于您要排除的每个子目录,将.yaws_auth
文件添加到该子目录的内容
{allow, all}.
并确保包括尾随期间/句号。还要确保在您的文件auth_skip_docroot
中设置为false
或根本不设置。yaws.conf
推荐阅读
- python - 在单元测试断言失败时执行系统状态重置
- c++ - 在 C++ 中的面向对象设计中,在哪里声明共享变量?
- python - 为什么我的随机变量代码会抛出 TypeError?
- css - 为 sass 创建自定义单元
- linux - $ 代表什么?
- scala - 如何根据列汇总 RDD 中的行并获取排序值
- qt - 拖动矩形时如何将鼠标保持在角落?
- intellij-idea - 使用 C++ 的 CLion 代码导航不起作用
- c# - 在 Unity 上访问 android“仅限设备”GPS
- visual-studio - VS2017中未显示“配置应用程序洞察力”以及如何在VS2017中本地查看洞察力?