Вопрос или проблема
Я настроил новый экземпляр Vault от Hashicorp, следовал инструкциям в учебнике на сайте Hashicorp о том, как настроить ACME. Однако я не могу зарегистрировать новые учетные записи ACME с помощью UACME. Процесс просто завершает работу после ответа 400 от Vault с:
uacme: acme_post: код возврата 400, json=
{
"type": "urn:ietf:params:acme:error:accountDoesNotExist",
"detail": "Учетная запись с этим ключом не существует: Запрос указал учетную запись, которая не существует",
"subproblems": null
}
Была проблема с uacme, он не отвечал с новым nonce. Эта проблема исправлена в основной ветке.
Ответ или решение
Проблема регистрации нового аккаунта ACME на конечной точке Vault ACME
Вы столкнулись с проблемой при регистрации нового аккаунта ACME на своем экземпляре Hashicorp Vault. Сообщение об ошибке, которое вы получили, гласит:
uacme: acme_post: return code 400, json=
{
"type": "urn:ietf:params:acme:error:accountDoesNotExist",
"detail": "An account with this key does not exist: The request specified an account that does not exist",
"subproblems": null
}
Это сообщение указывает на то, что попытка зарегистрировать аккаунт не удалась, так как указанный аккаунт не существует. Давайте разберемся в возможных причинах и решениях данной проблемы.
Возможные причины
-
Неверная конфигурация Vault: Убедитесь, что настройка вашего экземпляра Vault корректна. Проверьте, что вы следовали всем шагам из официального руководства по настройке ACME. Если в конфигурации есть ошибки, это может повлиять на процесс регистрации.
-
Проблемы с uacme: Вы упомянули, что проблема возникла из-за того, что uacme не ответил с новым nonce. Этот момент важен для процесса регистрации. Обновите uacme до последней версии, так как проблема может быть устранена в ответвлении main. Убедитесь, что вы используете актуальные версии программного обеспечения.
-
Отсутствие поддержки ACME: Убедитесь, что ваш экземпляр Vault действительно поддерживает рабочий поток ACME. Возможно, что функционал еще не активирован или имеются ограничения на использование данной технологии.
Решения
-
Проверка конфигурации:
- Просмотрите файл конфигурации Vault и убедитесь, что все настройки специфичны для ACME и соответствуют инструкциям из документации Hashicorp. Обратите внимание на правильность указания URI, токенов и других необходимых параметров.
- Проверьте раздел ACME в ваших настройках, чтобы убедиться, что сервер правильно настроен для обработки запросов ACME.
-
Обновление uacme:
- Перейдите к репозиторию uacme на GitHub и ознакомьтесь с последние изменениями. В случае наличия обновлений, выполните команду:
git pull
- Соберите и установите новое обновление, чтобы устранить известные существующие проблемы и обеспечить совместимость с ACME API.
- Перейдите к репозиторию uacme на GitHub и ознакомьтесь с последние изменениями. В случае наличия обновлений, выполните команду:
-
Тестирование соединения:
- Вы можете протестировать соединение между вашим клиентом uacme и сервером Vault, используя инструменты командной строки, такие как
curl
для отправки запросов напрямую и проверки ответов. Этот шаг поможет диагностировать, правильно ли работает ваш Vault.curl -X POST https://your-vault-address/v1/acme/new-account -d '{"termsOfServiceAgreed": true, "contact": ["mailto:example@yourdomain.com"]}'
- Вы можете протестировать соединение между вашим клиентом uacme и сервером Vault, используя инструменты командной строки, такие как
-
Изучение логов:
- Проверьте логи вашего сервера Vault (обычно находятся в
/var/log/vault.log
) для получения более подробной информации о возникающих ошибках. Это может помочь не только в диагностике, но и в понимании контекста проблемы.
- Проверьте логи вашего сервера Vault (обычно находятся в
Заключение
Проблема, с которой вы столкнулись, может быть разрешена путем тщательной проверки конфигурации Vault, обновления uacme и изучения логов вашего сервера. Следуйте вышеописанным шагам для устранения проблемы, и, надеемся, вы сможете успешно зарегистрировать новый аккаунт ACME. Если проблема сохранится, вы можете обратиться за помощью на форумы сообщества Hashicorp или обратиться в поддержку.