来自 Certbot 的 Apache 插件的身份验证器实际上对“http-01”挑战做了什么?
What does authenticator for Apache plugin from Certbot actually do for “http-01” challenge?
通过 Certbot 软件使用 Let's Encrypt 时,您可以使用 Apache 插件在 Apache Web 服务器上获取和安装证书。
对于“http-01”挑战,这可能是验证您对域的所有权的最流行方式,身份验证器必须以某种方式通过端口 80 上的 HTTP 提供目录 /.well-known/acme-challenge
中的文件。
但从技术角度来看,Certbot 实际上是如何以自动化方式执行此操作的?
Certbot 似乎既没有更改您的虚拟主机配置,也没有更改虚拟主机文档根目录的实际内容。
那么 Certbot 如何在技术上完成在所需位置提供文件的任务?
插件的 configurator.py's perform()
calls another perform() in http_01.py file. This creates the challenge files in the configured challenge directory, distinct from the document root (_set_up_challenges()
includes code to check whether the directory exists and create it). _mod_config() 然后处理服务:
- 查找或创建一个 VirtualHost,它侦听配置的端口并从文件 (
self._set_up_include_directives(vh)
) 加载配置数据。
- 使用还原器的
register_file_creation()
到 register the creation 的临时 _pre 和 _post 规则文件(这不会写入它们,但确保在以后出现错误时删除它们)。
- 为正在使用的配置器选择并填写适当的
CONFIG_TEMPLATE
对中的内部质询目录的配置路径(例如,CONFIG_TEMPLATE22_PRE
)- htaccess 规则,其中 _PRE 是将 .wellknown/acme-challenge/[TOKEN]
的指向请求重定向到挑战目录,_POST 授予对 /.wellknown/acme-challenge/ 和挑战目录的访问权限。这些中的每一个都被写入先前注册的位置。
- 声明设置完成并 returns。
是的,临时配置更改将请求重定向到自定义目录路径。
通过 Certbot 软件使用 Let's Encrypt 时,您可以使用 Apache 插件在 Apache Web 服务器上获取和安装证书。
对于“http-01”挑战,这可能是验证您对域的所有权的最流行方式,身份验证器必须以某种方式通过端口 80 上的 HTTP 提供目录 /.well-known/acme-challenge
中的文件。
但从技术角度来看,Certbot 实际上是如何以自动化方式执行此操作的?
Certbot 似乎既没有更改您的虚拟主机配置,也没有更改虚拟主机文档根目录的实际内容。
那么 Certbot 如何在技术上完成在所需位置提供文件的任务?
插件的 configurator.py's perform()
calls another perform() in http_01.py file. This creates the challenge files in the configured challenge directory, distinct from the document root (_set_up_challenges()
includes code to check whether the directory exists and create it). _mod_config() 然后处理服务:
- 查找或创建一个 VirtualHost,它侦听配置的端口并从文件 (
self._set_up_include_directives(vh)
) 加载配置数据。 - 使用还原器的
register_file_creation()
到 register the creation 的临时 _pre 和 _post 规则文件(这不会写入它们,但确保在以后出现错误时删除它们)。 - 为正在使用的配置器选择并填写适当的
CONFIG_TEMPLATE
对中的内部质询目录的配置路径(例如,CONFIG_TEMPLATE22_PRE
)- htaccess 规则,其中 _PRE 是将.wellknown/acme-challenge/[TOKEN]
的指向请求重定向到挑战目录,_POST 授予对 /.wellknown/acme-challenge/ 和挑战目录的访问权限。这些中的每一个都被写入先前注册的位置。 - 声明设置完成并 returns。
是的,临时配置更改将请求重定向到自定义目录路径。