Что на самом деле делает аутентификатор для плагина Apache от Certbot для вызова «http-01»? - PullRequest
3 голосов
/ 08 марта 2019

При использовании Let's Encrypt через программное обеспечение Certbot вы можете использовать плагин Apache для получения и установки сертификатов на вашем веб-сервере Apache.

При вызове «http-01», который, вероятно, является наиболее популярным способом проверки вашего владения доменом, средство проверки подлинности должно каким-то образом обслуживать файл в каталоге /.well-known/acme-challenge через HTTP через порт 80.

Но как Certbot на самом деле делает это автоматически, с технической точки зрения?

Похоже, что Certbot не изменяет ни конфигурацию вашего виртуального хоста, ни фактическое содержимое корня документа для виртуального хоста.

Так как же Certbot технически справляется с задачей доставки файла в нужное место?

1 Ответ

1 голос
/ 16 марта 2019

Плагин configurator.py * perform() вызывает другое выполнение () в http_01.py файле .Это создает файлы с запросами в настроенном каталоге вызовов , отличном от корневого каталога документов (_set_up_challenges() включает в себя код для проверки наличия каталога и его создания). _mod_config () затем обрабатывает обслуживание:

  1. Находит или создает VirtualHost, который прослушивает настроенный порт и загружает данные конфигурации из файлов (self._set_up_include_directives(vh)).
  2. Использует от register_file_creation() до регистратора для создания временных файлов правил _pre и _post (это не записывает их, но обеспечивает их удаление в случае более поздней ошибки).
  3. Выбираети заполняет сконфигурированный путь к внутреннему каталогу вызова соответствующей парой CONFIG_TEMPLATE s для используемого конфигуратора (например, CONFIG_TEMPLATE22_PRE) - правила htaccess, где _PRE - это запросы перенаправления для .wellknown/acme-challenge/[TOKEN] накаталог вызова и _POST предоставляет доступ как к /.wellknown/acme-challenge/, так и к каталогу запроса.Каждый из них записывается в ранее зарегистрированное местоположение.
  4. Объявляет установку завершенной и возвращает.

Так что да, временное изменение конфигурации для перенаправления запросов в пользовательский путь к каталогу.

...